Internal compiler error in extract_insn (-ffast-math)

Carlo Wood carlo@alinoe.com
Tue Sep 12 12:16:00 GMT 2000


Hi, while trying to compile "wipe-1.2.2" I did run into an ICE
with gcc version 2.96 20000813.

>gcc-cvs -v -ffast-math wipe.i
Reading specs from /usr/local/gcc/lib/gcc-lib/i686-pc-linux/2.96/specs
gcc version 2.96 20000813 (experimental)
 /usr/local/gcc/lib/gcc-lib/i686-pc-linux/2.96/cc1 wipe.i -quiet -dumpbase wipe.i -version -ffast-math -o /tmp/cc1Ex5Q0.s
GNU C version 2.96 20000813 (experimental) (i686-pc-linux) compiled by GNU C version 2.96 20000813 (experimental).
In file included from /usr/include/linux/fs.h:22,
                 from wipe.c:58:
/usr/include/linux/string.h:12: parse error before `__extension__'
/usr/include/linux/string.h:12: parse error before `&&'
/usr/include/linux/string.h:14: parse error before `__extension__'
/usr/include/linux/string.h:14: parse error before `('
/usr/include/linux/string.h:15: parse error before `__extension__'
/usr/include/linux/string.h:15: parse error before `&&'
In file included from /usr/include/linux/fs.h:22,
                 from wipe.c:58:
/usr/include/linux/string.h:24: parse error before `__extension__'
/usr/include/linux/string.h:27: parse error before `__extension__'
/usr/include/linux/string.h:33: parse error before `__extension__'
/usr/include/linux/string.h:36: parse error before `__extension__'
/usr/include/linux/string.h:36: parse error before `&&'
/usr/include/linux/string.h:36: warning: data definition has no type or storage class
/usr/include/linux/string.h:36: parse error before `}'
/usr/include/linux/string.h:36: conflicting declarations of `__result'
/usr/include/linux/string.h:36: `__result' previously declared here
/usr/include/linux/string.h:36: parse error before `)'
/usr/include/linux/string.h:36: `__s2' undeclared here (not in a function)
/usr/include/linux/string.h:36: parse error before `;'
/usr/include/linux/string.h:36: conflicting declarations of `__result'
/usr/include/linux/string.h:36: `__result' previously defined here
/usr/include/linux/string.h:36: warning: data definition has no type or storage class
/usr/include/linux/string.h:36: parse error before `}'
/usr/include/linux/string.h:36: warning: data definition has no type or storage class
/usr/include/linux/string.h:36: parse error before `}'
/usr/include/linux/string.h:36: redefinition of `__result'
/usr/include/linux/string.h:36: `__result' previously defined here
/usr/include/linux/string.h:36: `__s1' undeclared here (not in a function)
/usr/include/linux/string.h:36: parse error before `)'
/usr/include/linux/string.h:36: parse error before `;'
/usr/include/linux/string.h:36: conflicting declarations of `__result'
/usr/include/linux/string.h:36: `__result' previously defined here
/usr/include/linux/string.h:36: warning: data definition has no type or storage class
/usr/include/linux/string.h:36: parse error before `}'
/usr/include/linux/string.h:39: parse error before `__extension__'
/usr/include/linux/string.h:39: parse error before `&&'
/usr/include/linux/string.h:39: warning: data definition has no type or storage class
/usr/include/linux/string.h:39: parse error before `}'
/usr/include/linux/string.h:39: redefinition of `__result'
/usr/include/linux/string.h:36: `__result' previously defined here
/usr/include/linux/string.h:39: parse error before `)'
/usr/include/linux/string.h:39: `__s2' undeclared here (not in a function)
/usr/include/linux/string.h:39: parse error before `;'
/usr/include/linux/string.h:39: conflicting declarations of `__result'
/usr/include/linux/string.h:39: `__result' previously defined here
/usr/include/linux/string.h:39: warning: data definition has no type or storage class
/usr/include/linux/string.h:39: parse error before `}'
/usr/include/linux/string.h:39: warning: data definition has no type or storage class
/usr/include/linux/string.h:39: parse error before `}'
/usr/include/linux/string.h:39: redefinition of `__result'
/usr/include/linux/string.h:39: `__result' previously defined here
/usr/include/linux/string.h:39: `__s1' undeclared here (not in a function)
/usr/include/linux/string.h:39: parse error before `)'
/usr/include/linux/string.h:39: parse error before `;'
/usr/include/linux/string.h:39: conflicting declarations of `__result'
/usr/include/linux/string.h:39: `__result' previously defined here
/usr/include/linux/string.h:39: warning: data definition has no type or storage class
/usr/include/linux/string.h:39: parse error before `}'
/usr/include/linux/string.h:45: parse error before `__extension__'
/usr/include/linux/string.h:51: parse error before `__extension__'
/usr/include/linux/string.h:61: parse error before `__extension__'
/usr/include/linux/string.h:61: parse error before `__uint8_t'
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `}'
/usr/include/linux/string.h:61: warning: initialization makes pointer from integer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: parse error before `;'
/usr/include/linux/string.h:61: conflicting types for `__u'
/usr/include/linux/string.h:61: previous declaration of `__u'
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `->'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: redefinition of `__u'
/usr/include/linux/string.h:61: `__u' previously defined here
/usr/include/linux/string.h:61: warning: initialization makes integer from pointer without a cast
/usr/include/linux/string.h:61: initializer element is not constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `case'
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `}'
/usr/include/linux/string.h:61: parse error before character constant
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: warning: data definition has no type or storage class
/usr/include/linux/string.h:61: parse error before `}'
wipe.c: In function `zeroblkdev':
wipe.c:1097: Unrecognizable insn:
(jump_insn 660 659 740 (parallel[ 
            (set (pc)
                (if_then_else (ne (reg:SF 193)
                        (mem/s:SF (symbol_ref:SI ("percent")) 0))
                    (label_ref 663)
                    (pc)))
            (clobber (reg:CCFP 18 fpsr))
            (clobber (reg:CCFP 17 flags))
            (clobber (scratch:HI))
        ] ) -1 (nil)
    (expr_list:REG_DEAD (reg:SF 193)
        (expr_list:REG_UNUSED (reg:CCFP 18 fpsr)
            (expr_list:REG_UNUSED (reg:CCFP 17 flags)
                (expr_list:REG_UNUSED (scratch:HI)
                    (nil))))))
wipe.c:1097: Internal compiler error in extract_insn, at recog.c:2067
Please submit a full bug report.
See <URL: http://www.gnu.org/software/gcc/bugs.html > for instructions.


I attached "wipe.i" in compressed form (wipe.i.bz2).

-- 
Carlo Wood <carlo@alinoe.com>                        -=- Jesus Loves you -=-
-------------- next part --------------
A non-text attachment was scrubbed...
Name: wipe.i.bz2
Type: application/x-bzip2
Size: 20845 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-bugs/attachments/20000912/9c49ce1c/attachment.bz2>


More information about the Gcc-bugs mailing list