------- Additional Comments From hjl at lucon dot org  2004-12-15 20:08 -------
Something is very strange:

[EMAIL PROTECTED] thread]$ cat do.c
extern __thread void *foo [];
void
test1 (void)
{
  int s;
  for (s = 0; s < 2; ++s)
    {
      foo [s] = &foo[s];
    }
}
[EMAIL PROTECTED] thread]$ /export/build/gnu/gcc/build-i686-linux/gcc/xgcc
-B/export/build/gnu/gcc/build-i686-linux/gcc/ -O -S do.c
do.c: In function \uffff\uffff\ufffftest1\uffff\uffff\uffff:
do.c:10: error: unrecognizable insn:
(insn 53 21 46 0 (set (reg/f:SI 67 [ D.1151 ])
        (const:SI (plus:SI (symbol_ref:SI ("foo") [flags 0x58] <var_decl
0xb7d5e828 foo>)
                (const_int 8 [0x8])))) -1 (nil)
    (expr_list:REG_EQUAL (const:SI (plus:SI (symbol_ref:SI ("foo") [flags 0x58]
<var_decl 0xb7d5e828 foo>)
                (const_int 8 [0x8])))
        (nil)))
do.c:10: internal compiler error: in extract_insn, at recog.c:2020
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.
[EMAIL PROTECTED] thread]$ cat do.c extern __thread void *foo [];
void
test1 (void)
{
  int s;
  for (s = 0; s < 2U; ++s)
    {
      foo [s] = &foo[s];
    }
}
[EMAIL PROTECTED] thread]$ /export/build/gnu/gcc/build-i686-linux/gcc/xgcc
-B/export/build/gnu/gcc/build-i686-linux/gcc/ -O -S do.c

"2U" vs. "2" makes a big difference here.


-- 


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

Reply via email to