This is the mail archive of the gcc-prs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

optimization/7124: -O2 -march=athlon produces ICE


>Number:         7124
>Category:       optimization
>Synopsis:       -O2 -march=athlon produces ICE
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          ice-on-legal-code
>Submitter-Id:   net
>Arrival-Date:   Tue Jun 25 13:16:03 PDT 2002
>Closed-Date:
>Last-Modified:
>Originator:     Perrin Meyer
>Release:        gcc version 3.2 20020625 (experimental)
>Organization:
>Environment:
RedHat Linux 7.1 / Athlon 1.3GHz
>Description:
optimization flags -O2 -march=athlon produce an ICE.

clacrt.c: In function `clacrt_':
clacrt.c:136: error: unable to find a register to spill in class `FLOAT_REGS'
clacrt.c:136: error: this is the insn:
(insn:HI 109 108 112 9 0x401a6100 (set (subreg:SF (reg/v:DI 30 rmm1 [71]) 0)
        (minus:SF (reg:SF 12 st(4) [94])
            (reg:SF 8 st(0) [97]))) 556 {*fop_sf_1_nosse} (insn_list 107 (insn_list 104 (nil)))
    (expr_list:REG_DEAD (reg:SF 8 st(0) [97])
        (expr_list:REG_DEAD (reg:SF 12 st(4) [94])
            (nil))))
clacrt.c:136: internal compiler error: Internal compiler error in spill_failure, at reload1.c:1908
>How-To-Repeat:
gcc -c -O2 -march=athlon clacrt.i 

ICE does NOT happen for

gcc -c -O2 clacrt.i 
>Fix:

>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/octet-stream; name="clacrt.i"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="clacrt.i"

IyAxICJjbGFjcnQuYyIKIyAxICI8YnVpbHQtaW4+IgojIDEgIjxjb21tYW5kIGxpbmU+IgojIDEg
ImNsYWNydC5jIgojIDEgImJsYXN3cmFwLmgiIDEKIyAyICJjbGFjcnQuYyIgMgojIDEgImYyYy5o
IiAxCiMgMTAgImYyYy5oIgp0eXBlZGVmIGxvbmcgaW50IGludGVnZXI7CnR5cGVkZWYgdW5zaWdu
ZWQgbG9uZyB1aW50ZWdlcjsKdHlwZWRlZiBjaGFyICphZGRyZXNzOwp0eXBlZGVmIHNob3J0IGlu
dCBzaG9ydGludDsKdHlwZWRlZiBmbG9hdCByZWFsOwp0eXBlZGVmIGRvdWJsZSBkb3VibGVyZWFs
Owp0eXBlZGVmIHN0cnVjdCB7IHJlYWwgciwgaTsgfSBjb21wbGV4Owp0eXBlZGVmIHN0cnVjdCB7
IGRvdWJsZXJlYWwgciwgaTsgfSBkb3VibGVjb21wbGV4Owp0eXBlZGVmIGxvbmcgaW50IGxvZ2lj
YWw7CnR5cGVkZWYgc2hvcnQgaW50IHNob3J0bG9naWNhbDsKdHlwZWRlZiBjaGFyIGxvZ2ljYWwx
Owp0eXBlZGVmIGNoYXIgaW50ZWdlcjE7CiMgNDUgImYyYy5oIgp0eXBlZGVmIGxvbmcgaW50IGZs
YWc7CnR5cGVkZWYgbG9uZyBpbnQgZnRubGVuOwp0eXBlZGVmIGxvbmcgaW50IGZ0bmludDsKCgoK
dHlwZWRlZiBzdHJ1Y3QKeyBmbGFnIGNpZXJyOwogICAgICAgIGZ0bmludCBjaXVuaXQ7CiAgICAg
ICAgZmxhZyBjaWVuZDsKICAgICAgICBjaGFyICpjaWZtdDsKICAgICAgICBmdG5pbnQgY2lyZWM7
Cn0gY2lsaXN0OwoKCnR5cGVkZWYgc3RydWN0CnsgZmxhZyBpY2llcnI7CiAgICAgICAgY2hhciAq
aWNpdW5pdDsKICAgICAgICBmbGFnIGljaWVuZDsKICAgICAgICBjaGFyICppY2lmbXQ7CiAgICAg
ICAgZnRuaW50IGljaXJsZW47CiAgICAgICAgZnRuaW50IGljaXJudW07Cn0gaWNpbGlzdDsKCgp0
eXBlZGVmIHN0cnVjdAp7IGZsYWcgb2VycjsKICAgICAgICBmdG5pbnQgb3VuaXQ7CiAgICAgICAg
Y2hhciAqb2ZubTsKICAgICAgICBmdG5sZW4gb2ZubWxlbjsKICAgICAgICBjaGFyICpvc3RhOwog
ICAgICAgIGNoYXIgKm9hY2M7CiAgICAgICAgY2hhciAqb2ZtOwogICAgICAgIGZ0bmludCBvcmw7
CiAgICAgICAgY2hhciAqb2Jsbms7Cn0gb2xpc3Q7CgoKdHlwZWRlZiBzdHJ1Y3QKeyBmbGFnIGNl
cnI7CiAgICAgICAgZnRuaW50IGN1bml0OwogICAgICAgIGNoYXIgKmNzdGE7Cn0gY2xsaXN0OwoK
CnR5cGVkZWYgc3RydWN0CnsgZmxhZyBhZXJyOwogICAgICAgIGZ0bmludCBhdW5pdDsKfSBhbGlz
dDsKCgp0eXBlZGVmIHN0cnVjdAp7IGZsYWcgaW5lcnI7CiAgICAgICAgZnRuaW50IGludW5pdDsK
ICAgICAgICBjaGFyICppbmZpbGU7CiAgICAgICAgZnRubGVuIGluZmlsZW47CiAgICAgICAgZnRu
aW50ICppbmV4OwogICAgICAgIGZ0bmludCAqaW5vcGVuOwogICAgICAgIGZ0bmludCAqaW5udW07
CiAgICAgICAgZnRuaW50ICppbm5hbWVkOwogICAgICAgIGNoYXIgKmlubmFtZTsKICAgICAgICBm
dG5sZW4gaW5uYW1sZW47CiAgICAgICAgY2hhciAqaW5hY2M7CiAgICAgICAgZnRubGVuIGluYWNj
bGVuOwogICAgICAgIGNoYXIgKmluc2VxOwogICAgICAgIGZ0bmxlbiBpbnNlcWxlbjsKICAgICAg
ICBjaGFyICppbmRpcjsKICAgICAgICBmdG5sZW4gaW5kaXJsZW47CiAgICAgICAgY2hhciAqaW5m
bXQ7CiAgICAgICAgZnRubGVuIGluZm10bGVuOwogICAgICAgIGNoYXIgKmluZm9ybTsKICAgICAg
ICBmdG5pbnQgaW5mb3JtbGVuOwogICAgICAgIGNoYXIgKmludW5mOwogICAgICAgIGZ0bmxlbiBp
bnVuZmxlbjsKICAgICAgICBmdG5pbnQgKmlucmVjbDsKICAgICAgICBmdG5pbnQgKmlubnJlYzsK
ICAgICAgICBjaGFyICppbmJsYW5rOwogICAgICAgIGZ0bmxlbiBpbmJsYW5rbGVuOwp9IGlubGlz
dDsKCgoKdW5pb24gTXVsdGl0eXBlIHsKICAgICAgICBpbnRlZ2VyMSBnOwogICAgICAgIHNob3J0
aW50IGg7CiAgICAgICAgaW50ZWdlciBpOwoKICAgICAgICByZWFsIHI7CiAgICAgICAgZG91Ymxl
cmVhbCBkOwogICAgICAgIGNvbXBsZXggYzsKICAgICAgICBkb3VibGVjb21wbGV4IHo7CiAgICAg
ICAgfTsKCnR5cGVkZWYgdW5pb24gTXVsdGl0eXBlIE11bHRpdHlwZTsKCgoKc3RydWN0IFZhcmRl
c2MgewogICAgICAgIGNoYXIgKm5hbWU7CiAgICAgICAgY2hhciAqYWRkcjsKICAgICAgICBmdG5s
ZW4gKmRpbXM7CiAgICAgICAgaW50IHR5cGU7CiAgICAgICAgfTsKdHlwZWRlZiBzdHJ1Y3QgVmFy
ZGVzYyBWYXJkZXNjOwoKc3RydWN0IE5hbWVsaXN0IHsKICAgICAgICBjaGFyICpuYW1lOwogICAg
ICAgIFZhcmRlc2MgKip2YXJzOwogICAgICAgIGludCBudmFyczsKICAgICAgICB9Owp0eXBlZGVm
IHN0cnVjdCBOYW1lbGlzdCBOYW1lbGlzdDsKIyAxODMgImYyYy5oIgp0eXBlZGVmIGludCAoKlVf
ZnApKCk7CnR5cGVkZWYgc2hvcnRpbnQgKCpKX2ZwKSgpOwp0eXBlZGVmIGludGVnZXIgKCpJX2Zw
KSgpOwp0eXBlZGVmIHJlYWwgKCpSX2ZwKSgpOwp0eXBlZGVmIGRvdWJsZXJlYWwgKCpEX2ZwKSgp
LCAoKkVfZnApKCk7CnR5cGVkZWYgdm9pZCAoKkNfZnApKCk7CnR5cGVkZWYgdm9pZCAoKlpfZnAp
KCk7CnR5cGVkZWYgbG9naWNhbCAoKkxfZnApKCk7CnR5cGVkZWYgc2hvcnRsb2dpY2FsICgqS19m
cCkoKTsKdHlwZWRlZiB2b2lkICgqSF9mcCkoKTsKdHlwZWRlZiBpbnQgKCpTX2ZwKSgpOwoKCnR5
cGVkZWYgdm9pZCBDX2Y7CnR5cGVkZWYgdm9pZCBIX2Y7CnR5cGVkZWYgdm9pZCBaX2Y7CnR5cGVk
ZWYgZG91YmxlcmVhbCBFX2Y7CiMgMyAiY2xhY3J0LmMiIDIKCiAgICAgICAgICAgICAgICAgaW50
IGNsYWNydF8oaW50ZWdlciAqbiwgY29tcGxleCAqY3gsIGludGVnZXIgKmluY3gsIGNvbXBsZXgg
KgogICAgICAgIGN5LCBpbnRlZ2VyICppbmN5LCBjb21wbGV4ICpjX18sIGNvbXBsZXggKnMpCnsK
IyA1NCAiY2xhY3J0LmMiCiAgICBpbnRlZ2VyIGlfXzEsIGlfXzIsIGlfXzMsIGlfXzQ7CiAgICBj
b21wbGV4IHFfXzEsIHFfXzIsIHFfXzM7CgogICAgc3RhdGljIGludGVnZXIgaV9fOwogICAgc3Rh
dGljIGNvbXBsZXggY3RlbXA7CiAgICBzdGF0aWMgaW50ZWdlciBpeCwgaXk7CgogICAgLS1jeTsK
ICAgIC0tY3g7CgoKICAgIGlmICgqbiA8PSAwKSB7CiAgICAgICAgcmV0dXJuIDA7CiAgICB9CiAg
ICBpZiAoKmluY3ggPT0gMSAmJiAqaW5jeSA9PSAxKSB7CiAgICAgICAgZ290byBMMjA7CiAgICB9
CgoKCiAgICBpeCA9IDE7CiAgICBpeSA9IDE7CiAgICBpZiAoKmluY3ggPCAwKSB7CiAgICAgICAg
aXggPSAoLSgqbikgKyAxKSAqICppbmN4ICsgMTsKICAgIH0KICAgIGlmICgqaW5jeSA8IDApIHsK
ICAgICAgICBpeSA9ICgtKCpuKSArIDEpICogKmluY3kgKyAxOwogICAgfQogICAgaV9fMSA9ICpu
OwogICAgZm9yIChpX18gPSAxOyBpX18gPD0gaV9fMTsgKytpX18pIHsKICAgICAgICBpX18yID0g
aXg7CiAgICAgICAgcV9fMi5yID0gY19fLT5yICogY3hbaV9fMl0uciAtIGNfXy0+aSAqIGN4W2lf
XzJdLmksIHFfXzIuaSA9IGNfXy0+ciAqCiAgICAgICAgICAgICAgICBjeFtpX18yXS5pICsgY19f
LT5pICogY3hbaV9fMl0ucjsKICAgICAgICBpX18zID0gaXk7CiAgICAgICAgcV9fMy5yID0gcy0+
ciAqIGN5W2lfXzNdLnIgLSBzLT5pICogY3lbaV9fM10uaSwgcV9fMy5pID0gcy0+ciAqIGN5Wwog
ICAgICAgICAgICAgICAgaV9fM10uaSArIHMtPmkgKiBjeVtpX18zXS5yOwogICAgICAgIHFfXzEu
ciA9IHFfXzIuciArIHFfXzMuciwgcV9fMS5pID0gcV9fMi5pICsgcV9fMy5pOwogICAgICAgIGN0
ZW1wLnIgPSBxX18xLnIsIGN0ZW1wLmkgPSBxX18xLmk7CiAgICAgICAgaV9fMiA9IGl5OwogICAg
ICAgIGlfXzMgPSBpeTsKICAgICAgICBxX18yLnIgPSBjX18tPnIgKiBjeVtpX18zXS5yIC0gY19f
LT5pICogY3lbaV9fM10uaSwgcV9fMi5pID0gY19fLT5yICoKICAgICAgICAgICAgICAgIGN5W2lf
XzNdLmkgKyBjX18tPmkgKiBjeVtpX18zXS5yOwogICAgICAgIGlfXzQgPSBpeDsKICAgICAgICBx
X18zLnIgPSBzLT5yICogY3hbaV9fNF0uciAtIHMtPmkgKiBjeFtpX180XS5pLCBxX18zLmkgPSBz
LT5yICogY3hbCiAgICAgICAgICAgICAgICBpX180XS5pICsgcy0+aSAqIGN4W2lfXzRdLnI7CiAg
ICAgICAgcV9fMS5yID0gcV9fMi5yIC0gcV9fMy5yLCBxX18xLmkgPSBxX18yLmkgLSBxX18zLmk7
CiAgICAgICAgY3lbaV9fMl0uciA9IHFfXzEuciwgY3lbaV9fMl0uaSA9IHFfXzEuaTsKICAgICAg
ICBpX18yID0gaXg7CiAgICAgICAgY3hbaV9fMl0uciA9IGN0ZW1wLnIsIGN4W2lfXzJdLmkgPSBj
dGVtcC5pOwogICAgICAgIGl4ICs9ICppbmN4OwogICAgICAgIGl5ICs9ICppbmN5OwoKICAgIH0K
ICAgIHJldHVybiAwOwoKCgpMMjA6CiAgICBpX18xID0gKm47CiAgICBmb3IgKGlfXyA9IDE7IGlf
XyA8PSBpX18xOyArK2lfXykgewogICAgICAgIGlfXzIgPSBpX187CiAgICAgICAgcV9fMi5yID0g
Y19fLT5yICogY3hbaV9fMl0uciAtIGNfXy0+aSAqIGN4W2lfXzJdLmksIHFfXzIuaSA9IGNfXy0+
ciAqCiAgICAgICAgICAgICAgICBjeFtpX18yXS5pICsgY19fLT5pICogY3hbaV9fMl0ucjsKICAg
ICAgICBpX18zID0gaV9fOwogICAgICAgIHFfXzMuciA9IHMtPnIgKiBjeVtpX18zXS5yIC0gcy0+
aSAqIGN5W2lfXzNdLmksIHFfXzMuaSA9IHMtPnIgKiBjeVsKICAgICAgICAgICAgICAgIGlfXzNd
LmkgKyBzLT5pICogY3lbaV9fM10ucjsKICAgICAgICBxX18xLnIgPSBxX18yLnIgKyBxX18zLnIs
IHFfXzEuaSA9IHFfXzIuaSArIHFfXzMuaTsKICAgICAgICBjdGVtcC5yID0gcV9fMS5yLCBjdGVt
cC5pID0gcV9fMS5pOwogICAgICAgIGlfXzIgPSBpX187CiAgICAgICAgaV9fMyA9IGlfXzsKICAg
ICAgICBxX18yLnIgPSBjX18tPnIgKiBjeVtpX18zXS5yIC0gY19fLT5pICogY3lbaV9fM10uaSwg
cV9fMi5pID0gY19fLT5yICoKICAgICAgICAgICAgICAgIGN5W2lfXzNdLmkgKyBjX18tPmkgKiBj
eVtpX18zXS5yOwogICAgICAgIGlfXzQgPSBpX187CiAgICAgICAgcV9fMy5yID0gcy0+ciAqIGN4
W2lfXzRdLnIgLSBzLT5pICogY3hbaV9fNF0uaSwgcV9fMy5pID0gcy0+ciAqIGN4WwogICAgICAg
ICAgICAgICAgaV9fNF0uaSArIHMtPmkgKiBjeFtpX180XS5yOwogICAgICAgIHFfXzEuciA9IHFf
XzIuciAtIHFfXzMuciwgcV9fMS5pID0gcV9fMi5pIC0gcV9fMy5pOwogICAgICAgIGN5W2lfXzJd
LnIgPSBxX18xLnIsIGN5W2lfXzJdLmkgPSBxX18xLmk7CiAgICAgICAgaV9fMiA9IGlfXzsKICAg
ICAgICBjeFtpX18yXS5yID0gY3RlbXAuciwgY3hbaV9fMl0uaSA9IGN0ZW1wLmk7CgogICAgfQog
ICAgcmV0dXJuIDA7Cn0K


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]