[Bug ada/23593] [4.0/4.1 Regression] 5 ACATS compiler SEGV c371002 c371003 c52008b cc51004 cc51b03

pinskia at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Sat Aug 27 12:35:00 GMT 2005


------- Additional Comments From pinskia at gcc dot gnu dot org  2005-08-27 12:25 -------
[08:19] < guerby> 0x0834ec8b in get_memory_rtx (exp=<value optimized out>, len=<value 
optimized out>) at /home/guerby/work/gcc/version-head/gcc/builtins.c:1080
[08:19] < guerby> 1080                  gcc_assert (TREE_CODE (mem_expr) == COMPONENT_REF);
[08:19] < guerby> (gdb) bt
[08:19] < guerby> #0  0x0834ec8b in get_memory_rtx (exp=<value optimized out>, len=<value 
optimized out>) at /home/guerby/work/gcc/version-head/gcc/builtins.c:1080
[08:19] < guerby> #1  0x08354572 in expand_builtin_memcmp (exp=0x40554f78, arglist=<value 
optimized out>, target=0x0, mode=<value optimized out>)
[08:19] < guerby>     at /home/guerby/work/gcc/version-head/gcc/builtins.c:3588
[08:19] < guerby> #2  0x0835593f in expand_builtin (exp=0x40554f78, target=0x4015e210, 
subtarget=0x0, mode=VOIDmode, ignore=0)
[08:19] < guerby>     at /home/guerby/work/gcc/version-head/gcc/builtins.c:6047
[08:19] < guerby> #3  0x083df5d6 in expand_expr_real_1 (exp=<value optimized out>, target=0x0, 
tmode=<value optimized out>, modifier=<value optimized out>, alt_rtl=0x0)
[08:19] < guerby>     at /home/guerby/work/gcc/version-head/gcc/expr.c:7396
[08:19] < guerby> #4  0x083e535a in expand_expr_real (exp=0x40554f78, target=0x0, 
tmode=VOIDmode, modifier=EXPAND_NORMAL, alt_rtl=0x0)
[08:19] < guerby>     at /home/guerby/work/gcc/version-head/gcc/expr.c:6474
[08:19] < guerby> #5  0x083971b0 in do_jump (exp=0x40554f78, if_false_label=0x4022160c, 
if_true_label=0x0) at expr.h:492
[08:19] < guerby> #6  0x083974d7 in do_jump (exp=0x4056efc0, if_false_label=0x0, 
if_true_label=0x4022160c) at /home/guerby/work/gcc/version-head/gcc/dojump.c:355


It looks like it was caused by:
-2005-08-26  Jakub Jelinek  <jakub@redhat.com>
-
-       PR rtl-optimization/23561
-       * builtins.c (get_memory_rtx): Add LEN argument.  If MEM_EXPR is
-       a COMPONENT_REF, remove all COMPONENT_REF from MEM_EXPR unless
-       at most LEN bytes long memory fits into the field.
-       (expand_builtin_memcpy, expand_builtin_mempcpy, expand_movstr,
-       expand_builtin_strncpy, expand_builtin_memset, expand_builtin_memcmp,
-       expand_builtin_strcmp, expand_builtin_strncmp): Adjust callers.

Which means this is 4.0 regression too now.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jakub at gcc dot gnu dot
                   |                            |org, pinskia at gcc dot gnu
                   |                            |dot org
            Summary|[4.1 Regression] 5 ACATS    |[4.0/4.1 Regression] 5 ACATS
                   |compiler SEGV c371002       |compiler SEGV c371002
                   |c371003 c52008b cc51004     |c371003 c52008b cc51004
                   |cc51b03                     |cc51b03


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23593



More information about the Gcc-bugs mailing list