c/2704: Incorrect optimization for Sparc V9 chip

vyvee@ntu.edu.sg vyvee@ntu.edu.sg
Mon Apr 30 20:36:00 GMT 2001


>Number:         2704
>Category:       c
>Synopsis:       Incorrect optimization for Sparc V9 chip
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          wrong-code
>Submitter-Id:   net
>Arrival-Date:   Mon Apr 30 20:36:01 PDT 2001
>Closed-Date:
>Last-Modified:
>Originator:     Voon-Yee Vee
>Release:        gcc version 2.95.3 20010315 (release)
>Organization:
>Environment:
Sun Enterprise 3000 (UltraSparc)
SunOS 5.6
>Description:
The optimizer for V9 seems to produce incorrect output when optimized for
   (x*x)%y
for certain large values of x and y.  See the file attached.
>How-To-Repeat:
Compile the file with the following options:
  -O1 -mcpu=v9 -Wa,-Av9a
and the program generates incorrect output.  (The correct results should always be non-negative.)  However, the program works fine if -O1 is omitted, or with -O1, -O2 or -O3 turned on but optimized for V8 chip.
>Fix:
No known fix yet
>Release-Note:
>Audit-Trail:
>Unformatted:
----gnatsweb-attachment----
Content-Type: application/gzip; name="try2.i.gz"
Content-Transfer-Encoding: base64
Content-Disposition: attachment; filename="try2.i.gz"

H4sICF8h7joCA3RyeTIuaQCdWFFvozgQfia/YpSoEomiJJA03QittC930kp3T/eYqxABk6IjgGyT
bu+0//3GNhAMhqSL2gL+vm88M7bHpjNwYMrph7sKpxOY9K6ZwNclo+skC9MyImvGoyRfvU0R2KIC
NVDfKklBg/MlgCQiGbem3+zZvNJYzmp3sA4v683zenOAv/78PrWMXXywdUwCXlLic8I4M3Vn7qkj
wx6drexxv3b3skflpBaqIW7zBQ+0jFnDUF+G0ulifAO5uAZ+mjB+y8JwphsqRr63Dvv1xrkFDl1v
dnd62woa/yhIRGK45kkEC9+vcK8T2JfRwLp910bLjCXnjESQYAQs+RdHzmslsaJZaZ6dQfyxfF/c
xK+vu3CzKXlWHsc1owbaWoHvd40NXRsXORsVC0JL3YkPBsbedYdytJ38ylW7xjgtQ27B5D/ZbIlc
Wn6YcQ/brCbF4VtArYVfcCra+8ApYMSg8OM0OBvbk1Tyf8Lv3//4TaSC/OCEZvIVHfCT/HR0N/Aq
s6RhCz8NGD+VsVe395wpY5JFPDgdhdxIAp8lSDu+LvEpl0+ezP4M3HuprgyKTFFyya/EDvOMcWkY
FnNPJ2TBRScswUyX0S34pRC5scWKuWEqMMTQmt0IdV/iMM0ZsYWZrhdxnJbsrQepHuO8INknPIwp
uaNYQrcnEY3FiBi1yosltMJosUCxYkI7xCWoJa5FJthpkpGb3bmnJQXxa7/TpcBaBkFLVkHx1pJo
ka1Wq56AhUH2CX5l/y5PmTXRJh1iVpvUMmV2pSPtKO87ZfLKpGppruMpbbaFjsqYpzZZG+nrg1nQ
DGj60VQMOBmfCQ97C0stV4ExW5txxsVZlGhiFGb2+PISPKMjNYA6Y0VpeaiLxn0SqDCJzz2AjVTD
MpNeGu2q0bKwugSRrc4LtyGs70Oid5rwuso+qq2HD7fjZmKqzbvHYoT803DENi6Hs0fSTCln+gbl
KSHmJE1tY5Wk5D3JIjMWpiSghFJzkSd5PABQmlOzxUJhnSFrq32xV2v1VQdTJkB9SOtTjL5vRHLb
kEzzFFFzMsTnSxIZp6XYGrO8VepVVzPYOoexTRv67hQPb3uVWyUj1OBWtTWTam9+wF61KPOCV8mQ
uOL2RR0VK09CqOBFX6zaWzrlH2oCetZcwCacaEvAO04Cecefrpfv9kABeB8pD52TSD0A3SWVN4tF
Hrg7i0q2qZWijbhxbonB3O8+f4oZ1fSj085oqNVraquiINauKeK8b6gqHeatZAzwMWUtevUV0k+b
aK0S19Bl6vCrbf/yS98RM3h2nh9Q4pfKofmnALjYIk5plyCRCx9wDob1JMXn6/F1jh8eAM03Glzg
K7jO7mX3ZbvfvXga9uO4Fad0wIfNK/J2z4eD48l3R7zbsn0h4Tk8wUVhboU5CnNuWLXjT5/SNIKn
NPo7my6lYAm26HEuX2RBA0p4iendeJOfk8n/uhKaVvsQAAA=



More information about the Gcc-bugs mailing list