target/10205: Incorrect code generated for H8300 "normal" mode

mnmoran@bellsouth.net mnmoran@bellsouth.net
Tue Mar 25 05:46:00 GMT 2003


>Number:         10205
>Category:       target
>Synopsis:       Incorrect code generated for H8300 "normal" mode
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Mar 25 05:36:00 UTC 2003
>Closed-Date:
>Last-Modified:
>Originator:     Mike Moran
>Release:        gcc-20030324 snapshot
>Organization:
>Environment:
Linux glass 2.2.18-4hpmac #1 Thu Dec 21 15:16:15 MST 2000 ppc unknown
$ gcc -v
Reading specs from /usr/lib/gcc-lib/ppc-redhat-linux/2.95.3/specs
gcc version 2.95.3 20001130 (prerelease/franzo/20001204)
>Description:
       subs  #0x4,er7    --- reserve space for object
       mov.l er4,@-er7   --- save non-volatile register
       mov.w r7,r4       --- copy of SP/FP
       adds  #0x2,er4    --- BUG! should add 4 to SP/FP
       mov.w #0x0,r2
       mov.w r2,@er4     --- Overwrites saved non-volatile

I tried the snapshot since the same type of problem
in GCC-3.2.1
>How-To-Repeat:
../gcc-20030324/configure --prefix=/tools/gnu/h8300-elf --target=h8300-elf --enable-languages=c c++ --with-newlib

h8300-elf-gcc -c -fno-builtin -mn -mh -fomit-frame-pointer -fno-exceptions -O2 testcase.cpp

>Fix:

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

CmNsYXNzIEIgewoJcHVibGljOgoJCXZpcnR1YWwgdm9pZAl4KCkgdGhyb3coKT0wOwoJCXZpcnR1
YWwgdm9pZAl5KCkgdGhyb3coKT0wOwoJfTsKCmNsYXNzIE1YIDogcHVibGljIEIgewoJdW5zaWdu
ZWQgY2hhcglfc2F2ZTsKCXB1YmxpYzoKCQl2b2lkIHgoKSB0aHJvdygpOwoJCXZvaWQgeSgpIHRo
cm93KCk7Cgl9OwoKY2xhc3MgREEgewoJcHVibGljOgoJCXZpcnR1YWwgdm9pZAl0KCkgdGhyb3co
KT0wOwoJfTsKCmNsYXNzIEQgOiBwdWJsaWMgREEgewoJcHVibGljOgoJCXZvaWQJdCgpIHRocm93
KCk7Cgl9OwoKZXh0ZXJuIHZvaWQgeihCICZhLEIgJmIpOwovL2V4dGVybiB2b2lkIHooTVggJmEs
TVggJmIpOwoKdm9pZCBEOjp0KCkgdGhyb3coKXsKCU1YCW14OwoJbXgueCgpOwoJeihteCxteCk7
CglteC55KCk7Cgl9Cgo=



More information about the Gcc-prs mailing list