This is the mail archive of the crossgcc@cygnus.com mailing list for the crossgcc project.


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

[Fwd: bug report and fix for gcc-2.8.1 h8300 cross compiler]


-- 
|\/|
|/\| randall@elgar.com
|\/| rsl@zanshinsys.com http://www.zanshinsys.com


using gcc-2.8.1

target system: h8300-hitachi-hms

host system: i586-linux

problem:
gcc produces bad h8300 assembly output (for I think an arithmatic shift
left)
like this:

      mov.b   r4l,r4hn        mov.b   r5h,r4l

(problem was found when compiling newlib library module ef_fmod.c)

I found the bug (missing backslash),
it is in the file gcc-2.8.1/config/h8300/h8300.c
I checked the original file into an rcs file as ver 1.1, here's an
rcsdiff of the original and the fixed file which you can use to make
into a
patch:


   rcsdiff gcc-2.8.1/config/h8300/h8300.c
===================================================================
RCS file: gcc-2.8.1/config/h8300/h8300.c,v
retrieving revision 1.1
diff -r1.1 gcc-2.8.1/config/h8300/h8300.c
2341c2341
<             *assembler_p =
"mov.b\t%y0,%z0n\tmov.b\t%x0,%y0\n\tmov.b\t%w0,%x0\n\tsub.b\t%w0,%w0";
---
>             *assembler_p = "mov.b\t%y0,%z0\n\tmov.b\t%x0,%y0\n\tmov.b\t%w0,%x0\n\tsub.b\t%w0,%w0";


-- 
|\/|
|/\| randall@elgar.com
|\/| rsl@zanshinsys.com http://www.zanshinsys.com