------- Additional Comments From hp at gcc dot gnu dot org 2005-03-18 01:46 ------- Also worth noting is that mmix-knuth-mmixware shares the ICE for 20011119-2.c and has an other alias-related set of failures:
Running /home/hp/combined/combined/gcc/testsuite/gcc.c-torture/compile/compile.exp ... FAIL: gcc.c-torture/compile/20011119-2.c -O1 (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -O0 (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -O1 (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -O2 (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -O3 -fomit-frame-pointer (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -O3 -g (test for excess errors) FAIL: gcc.c-torture/compile/20040323-1.c -Os (test for excess errors) The gcc.log messages are: 20040323-1.c: Assembler messages:^M 20040323-1.c:35: Error: symbol `_rtld_local' is already defined You might think this is a flaw in the MMIX port (not emitting proper pseudos with .set semantics) but there *is* a problem, apparent in the 20040323-1.s for cris-axis-elf at -O2: ... .size __dl_start, .-__dl_start .comm __rtld_local,4,2 .comm __rtld_global,4,2 .global __rtld_local .set __rtld_local,__rtld_global .global __rtld_local .set __rtld_local,__rtld_global The ".global" declaration are admittedly a flaw in the CRIS port (an artefact of the once multi-object-format port) but the ".comm" for rtld_local (at -O2) seems spurious as does the double .set of __rtld_local. For MMIX that is at -O2: ... .comm _rtld_local,4,4 ! mmixal-incompatible COMMON .comm _rtld_global,4,4 ! mmixal-incompatible COMMON .global _rtld_local _rtld_local IS _rtld_global .global _rtld_local _rtld_local IS _rtld_global .data ! mmixal:= 8H LOC 9B -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=20524