From mboxrd@z Thu Jan 1 00:00:00 1970 From: reichelt@igpm.rwth-aachen.de To: gcc-gnats@gcc.gnu.org Subject: optimization/4298: ICE when compiling ISDN subsystem of LINUX kernel 2.4.9 Date: Tue, 11 Sep 2001 04:16:00 -0000 Message-id: <20010911111359.20434.qmail@sourceware.cygnus.com> X-SW-Source: 2001-09/msg00234.html List-Id: >Number: 4298 >Category: optimization >Synopsis: ICE when compiling ISDN subsystem of LINUX kernel 2.4.9 >Confidential: no >Severity: serious >Priority: medium >Responsible: unassigned >State: open >Class: ice-on-legal-code >Submitter-Id: net >Arrival-Date: Tue Sep 11 04:16:02 PDT 2001 >Closed-Date: >Last-Modified: >Originator: Volker Reichelt >Release: gcc 3.0, gcc 3.0.2 (prerelease, 20010903) >Organization: >Environment: i686-pc-linux-gnu >Description: The compiler crashes when I try to compile "capi.c" of the ISDN-subsystem of the kernel 2.4.9. I reduced the problem to the attached code without touching the assembler stuff. (I can provide the original preprocessed file if requested.) Compiling the shortened (with both -O2 and -fomit-frame-pointer) example I get: bug.c: In function `capi_ioctl': bug.c:47: Unrecognizable insn: (insn/i 153 302 299 (parallel[ (set (reg:SI 6 ebp) (asm_operands:SI ("addl %3,%1 ; sbbl %0,%0; cmpl %1,%4; sbbl $0,%0") ("=&r") 0[ (reg/v:SI 1 edx [73]) (mem:SI (plus:SI (reg/f:SI 6 ebp) (const_int -76 [0xffffffb4])) 0) (reg:SI 0 eax [77]) ] [ (asm_input:SI ("1")) (asm_input:SI ("g")) (asm_input:SI ("g")) ] ("capi.c") 24)) (set (reg/v:SI 1 edx [73]) (asm_operands:SI ("addl %3,%1 ; sbbl %0,%0; cmpl %1,%4; sbbl $0,%0") ("=r") 1[ (reg/v:SI 1 edx [73]) (mem:SI (plus:SI (reg/f:SI 6 ebp) (const_int -76 [0xffffffb4])) 0) (reg:SI 0 eax [77]) ] [ (asm_input:SI ("1")) (asm_input:SI ("g")) (asm_input:SI ("g")) ] ("capi.c") 24)) (clobber (reg:QI 19 dirflag)) (clobber (reg:QI 18 fpsr)) (clobber (reg:QI 17 flags)) ] ) -1 (insn_list 138 (insn_list 145 (nil))) (nil)) bug.c:47: Internal compiler error in reload_cse_simplify_operands, at reload1.c:8355 Please submit a full bug report, etc. By the way, it's a regression versus 2.95.3. >How-To-Repeat: gcc -O2 -fomit-frame-pointer -c bug.c >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="bug.c" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="bug.c" aW50IGR1bW15KHZvaWQqKTsKCgppbmxpbmUgdW5zaWduZWQgbG9uZyogZ2V0X2N1cnJlbnQodm9p ZCkKewogICAgICAgIHVuc2lnbmVkIGxvbmcgKmN1cnJlbnQ7CiAgICAgICAgX19hc21fXygiYW5k bCAlJWVzcCwlMDsgIjoiPXIiIChjdXJyZW50KSA6ICIwIiAofjgxOTFVTCkpOwogICAgICAgIHJl dHVybiBjdXJyZW50Owp9CgoKaW5saW5lIHVuc2lnbmVkIGxvbmcKX19jb25zdGFudF9jb3B5X3Rv X3VzZXIodm9pZCAqdG8sIGNvbnN0IHZvaWQgKmZyb20sIHVuc2lnbmVkIGxvbmcgbikKewogICAg ICAgIGlmICgoKHsgdW5zaWduZWQgbG9uZyBmbGFnLHN1bTsgYXNtKCJhZGRsICUzLCUxIDsgc2Ji bCAlMCwlMDsgY21wbCAlMSwlNDsgc2JibCAkMCwlMCIgOiI9JnIiIChmbGFnKSwgIj1yIiAoc3Vt KSA6IjEiICh0byksImciICgoaW50KShuKSksImciIChnZXRfY3VycmVudCgpKSk7IGZsYWc7IH0p ID09IDApKQogICAgICAgICAgICAgICAgZG8geyBpbnQgX19kMCwgX19kMTsgc3dpdGNoIChuICYg MykgeyBkZWZhdWx0OiBfX2FzbV9fIF9fdm9sYXRpbGVfXyggIjA6CXJlcDsgbW92c2xcbiIgIjE6 XG4iICIuc2VjdGlvbiAuZml4dXAsXCJheFwiXG4iICIyOglzaGwgJDIsJTBcbiIgIglqbXAgMWJc biIgIi5wcmV2aW91c1xuIiAiLnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxuIiAiCS5hbGlnbiA0 XG4iICIJLmxvbmcgMGIsMmJcbiIgIi5wcmV2aW91cyIgOiAiPWMiKG4pLCAiPSZTIiAoX19kMCks ICI9JkQiIChfX2QxKSA6ICIxIihmcm9tKSwgIjIiKHRvKSwgIjAiKG4vNCkgOiAibWVtb3J5Iik7 IGJyZWFrOyBjYXNlIDE6IF9fYXNtX18gX192b2xhdGlsZV9fKCAiMDoJcmVwOyBtb3ZzbFxuIiAi MToJbW92c2JcbiIgIjI6XG4iICIuc2VjdGlvbiAuZml4dXAsXCJheFwiXG4iICIzOglzaGwgJDIs JTBcbiIgIjQ6CWluY2wgJTBcbiIgIglqbXAgMmJcbiIgIi5wcmV2aW91c1xuIiAiLnNlY3Rpb24g X19leF90YWJsZSxcImFcIlxuIiAiCS5hbGlnbiA0XG4iICIJLmxvbmcgMGIsM2JcbiIgIgkubG9u ZyAxYiw0YlxuIiAiLnByZXZpb3VzIiA6ICI9YyIobiksICI9JlMiIChfX2QwKSwgIj0mRCIgKF9f ZDEpIDogIjEiKGZyb20pLCAiMiIodG8pLCAiMCIobi80KSA6ICJtZW1vcnkiKTsgYnJlYWs7IGNh c2UgMjogX19hc21fXyBfX3ZvbGF0aWxlX18oICIwOglyZXA7IG1vdnNsXG4iICIxOgltb3Zzd1xu IiAiMjpcbiIgIi5zZWN0aW9uIC5maXh1cCxcImF4XCJcbiIgIjM6CXNobCAkMiwlMFxuIiAiNDoJ YWRkbCAkMiwlMFxuIiAiCWptcCAyYlxuIiAiLnByZXZpb3VzXG4iICIuc2VjdGlvbiBfX2V4X3Rh YmxlLFwiYVwiXG4iICIJLmFsaWduIDRcbiIgIgkubG9uZyAwYiwzYlxuIiAiCS5sb25nIDFiLDRi XG4iICIucHJldmlvdXMiIDogIj1jIihuKSwgIj0mUyIgKF9fZDApLCAiPSZEIiAoX19kMSkgOiAi MSIoZnJvbSksICIyIih0byksICIwIihuLzQpIDogIm1lbW9yeSIpOyBicmVhazsgY2FzZSAzOiBf X2FzbV9fIF9fdm9sYXRpbGVfXyggIjA6CXJlcDsgbW92c2xcbiIgIjE6CW1vdnN3XG4iICIyOglt b3ZzYlxuIiAiMzpcbiIgIi5zZWN0aW9uIC5maXh1cCxcImF4XCJcbiIgIjQ6CXNobCAkMiwlMFxu IiAiNToJYWRkbCAkMiwlMFxuIiAiNjoJaW5jbCAlMFxuIiAiCWptcCAzYlxuIiAiLnByZXZpb3Vz XG4iICIuc2VjdGlvbiBfX2V4X3RhYmxlLFwiYVwiXG4iICIJLmFsaWduIDRcbiIgIgkubG9uZyAw Yiw0YlxuIiAiCS5sb25nIDFiLDViXG4iICIJLmxvbmcgMmIsNmJcbiIgIi5wcmV2aW91cyIgOiAi PWMiKG4pLCAiPSZTIiAoX19kMCksICI9JkQiIChfX2QxKSA6ICIxIihmcm9tKSwgIjIiKHRvKSwg IjAiKG4vNCkgOiAibWVtb3J5Iik7IGJyZWFrOyB9IH0gd2hpbGUgKDApOwogICAgICAgIHJldHVy biBuOwp9CgoKaW5saW5lIHVuc2lnbmVkIGxvbmcKX19jb25zdGFudF9jb3B5X2Zyb21fdXNlcih2 b2lkICp0bywgY29uc3Qgdm9pZCAqZnJvbSwgdW5zaWduZWQgbG9uZyBuKQp7CiAgICAgICAgaWYg KCgoeyB1bnNpZ25lZCBsb25nIGZsYWcsc3VtOyBhc20oImFkZGwgJTMsJTEgOyBzYmJsICUwLCUw OyBjbXBsICUxLCU0OyBzYmJsICQwLCUwIiA6Ij0mciIgKGZsYWcpLCAiPXIiIChzdW0pIDoiMSIg KGZyb20pLCJnIiAoKGludCkobikpLCJnIiAoZ2V0X2N1cnJlbnQoKSkpOyBmbGFnOyB9KSA9PSAw KSkKICAgICAgICAgICAgICAgIGRvIHsgaW50IF9fZDAsIF9fZDE7IHN3aXRjaCAobiAmIDMpIHsg ZGVmYXVsdDogX19hc21fXyBfX3ZvbGF0aWxlX18oICIwOglyZXA7IG1vdnNsXG4iICIxOlxuIiAi LnNlY3Rpb24gLmZpeHVwLFwiYXhcIlxuIiAiMjoJcHVzaGwgJTBcbiIgIglwdXNobCAlJWVheFxu IiAiCXhvcmwgJSVlYXgsJSVlYXhcbiIgIglyZXA7IHN0b3NsXG4iICIJcG9wbCAlJWVheFxuIiAi CXBvcGwgJTBcbiIgIglzaGwgJDIsJTBcbiIgIglqbXAgMWJcbiIgIi5wcmV2aW91c1xuIiAiLnNl Y3Rpb24gX19leF90YWJsZSxcImFcIlxuIiAiCS5hbGlnbiA0XG4iICIJLmxvbmcgMGIsMmJcbiIg Ii5wcmV2aW91cyIgOiAiPWMiKG4pLCAiPSZTIiAoX19kMCksICI9JkQiIChfX2QxKSA6ICIxIihm cm9tKSwgIjIiKHRvKSwgIjAiKG4vNCkgOiAibWVtb3J5Iik7IGJyZWFrOyBjYXNlIDE6IF9fYXNt X18gX192b2xhdGlsZV9fKCAiMDoJcmVwOyBtb3ZzbFxuIiAiMToJbW92c2JcbiIgIjI6XG4iICIu c2VjdGlvbiAuZml4dXAsXCJheFwiXG4iICIzOglwdXNobCAlMFxuIiAiCXB1c2hsICUlZWF4XG4i ICIJeG9ybCAlJWVheCwlJWVheFxuIiAiCXJlcDsgc3Rvc2xcbiIgIglzdG9zYlxuIiAiCXBvcGwg JSVlYXhcbiIgIglwb3BsICUwXG4iICIJc2hsICQyLCUwXG4iICIJaW5jbCAlMFxuIiAiCWptcCAy YlxuIiAiNDoJcHVzaGwgJSVlYXhcbiIgIgl4b3JsICUlZWF4LCUlZWF4XG4iICIJc3Rvc2JcbiIg Iglwb3BsICUlZWF4XG4iICIJaW5jbCAlMFxuIiAiCWptcCAyYlxuIiAiLnByZXZpb3VzXG4iICIu c2VjdGlvbiBfX2V4X3RhYmxlLFwiYVwiXG4iICIJLmFsaWduIDRcbiIgIgkubG9uZyAwYiwzYlxu IiAiCS5sb25nIDFiLDRiXG4iICIucHJldmlvdXMiIDogIj1jIihuKSwgIj0mUyIgKF9fZDApLCAi PSZEIiAoX19kMSkgOiAiMSIoZnJvbSksICIyIih0byksICIwIihuLzQpIDogIm1lbW9yeSIpOyBi cmVhazsgY2FzZSAyOiBfX2FzbV9fIF9fdm9sYXRpbGVfXyggIjA6CXJlcDsgbW92c2xcbiIgIjE6 CW1vdnN3XG4iICIyOlxuIiAiLnNlY3Rpb24gLmZpeHVwLFwiYXhcIlxuIiAiMzoJcHVzaGwgJTBc biIgIglwdXNobCAlJWVheFxuIiAiCXhvcmwgJSVlYXgsJSVlYXhcbiIgIglyZXA7IHN0b3NsXG4i ICIJc3Rvc3dcbiIgIglwb3BsICUlZWF4XG4iICIJcG9wbCAlMFxuIiAiCXNobCAkMiwlMFxuIiAi CWFkZGwgJDIsJTBcbiIgIglqbXAgMmJcbiIgIjQ6CXB1c2hsICUlZWF4XG4iICIJeG9ybCAlJWVh eCwlJWVheFxuIiAiCXN0b3N3XG4iICIJcG9wbCAlJWVheFxuIiAiCWFkZGwgJDIsJTBcbiIgIglq bXAgMmJcbiIgIi5wcmV2aW91c1xuIiAiLnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxuIiAiCS5h bGlnbiA0XG4iICIJLmxvbmcgMGIsM2JcbiIgIgkubG9uZyAxYiw0YlxuIiAiLnByZXZpb3VzIiA6 ICI9YyIobiksICI9JlMiIChfX2QwKSwgIj0mRCIgKF9fZDEpIDogIjEiKGZyb20pLCAiMiIodG8p LCAiMCIobi80KSA6ICJtZW1vcnkiKTsgYnJlYWs7IGNhc2UgMzogX19hc21fXyBfX3ZvbGF0aWxl X18oICIwOglyZXA7IG1vdnNsXG4iICIxOgltb3Zzd1xuIiAiMjoJbW92c2JcbiIgIjM6XG4iICIu c2VjdGlvbiAuZml4dXAsXCJheFwiXG4iICI0OglwdXNobCAlMFxuIiAiCXB1c2hsICUlZWF4XG4i ICIJeG9ybCAlJWVheCwlJWVheFxuIiAiCXJlcDsgc3Rvc2xcbiIgIglzdG9zd1xuIiAiCXN0b3Ni XG4iICIJcG9wbCAlJWVheFxuIiAiCXBvcGwgJTBcbiIgIglzaGwgJDIsJTBcbiIgIglhZGRsICQz LCUwXG4iICIJam1wIDJiXG4iICI1OglwdXNobCAlJWVheFxuIiAiCXhvcmwgJSVlYXgsJSVlYXhc biIgIglzdG9zd1xuIiAiCXN0b3NiXG4iICIJcG9wbCAlJWVheFxuIiAiCWFkZGwgJDMsJTBcbiIg IglqbXAgMmJcbiIgIjY6CXB1c2hsICUlZWF4XG4iICIJeG9ybCAlJWVheCwlJWVheFxuIiAiCXN0 b3NiXG4iICIJcG9wbCAlJWVheFxuIiAiCWluY2wgJTBcbiIgIglqbXAgM2JcbiIgIi5wcmV2aW91 c1xuIiAiLnNlY3Rpb24gX19leF90YWJsZSxcImFcIlxuIiAiCS5hbGlnbiA0XG4iICIJLmxvbmcg MGIsNGJcbiIgIgkubG9uZyAxYiw1YlxuIiAiCS5sb25nIDJiLDZiXG4iICIucHJldmlvdXMiIDog Ij1jIihuKSwgIj0mUyIgKF9fZDApLCAiPSZEIiAoX19kMSkgOiAiMSIoZnJvbSksICIyIih0byks ICIwIihuLzQpIDogIm1lbW9yeSIpOyBicmVhazsgfSB9IHdoaWxlICgwKTsKICAgICAgICBlbHNl CiAgICAgICAgICAgICAgICBkdW1teSh0byk7CiAgICAgICAgcmV0dXJuIG47Cn0KCgppbnQgY2Fw aV9pb2N0bCAodm9pZCogYXJnKQp7CiAgICAgICAgc3RydWN0IHsgc2hvcnQgeDsgfSBkYXRhOwog ICAgICAgIGludCBpLCBqOwoKICAgICAgICBpZiAoaSkgcmV0dXJuIDA7CgogICAgICAgIGlmIChq KSB7CiAgICAgICAgICAgICAgICBkdW1teSgmZGF0YSk7CiAgICAgICAgICAgICAgICBpID0gX19j b25zdGFudF9jb3B5X3RvX3VzZXIoYXJnLCZkYXRhLngsc2l6ZW9mKHNob3J0KSk7CiAgICAgICAg fQoKICAgICAgICBpZiAoaSkgcmV0dXJuIDA7CgogICAgICAgIHJldHVybiBfX2NvbnN0YW50X2Nv cHlfZnJvbV91c2VyKCZpLGFyZyxzaXplb2YoaW50KSk7Cn0K