[PATCH, h8300]: Fix build on 64bit targets

Uros Bizjak ubizjak@gmail.com
Sat Oct 7 07:57:00 GMT 2006


Hello!

gcc-4.2 currently fails to build for h8300 target on 64bit host with:

../../gcc-svn/trunk/gcc/libgcc2.c: In function '__muldi3':
../../gcc-svn/trunk/gcc/libgcc2.c:542: error: unrecognizable insn:
(insn 234 233 235 2 ../../gcc-svn/trunk/gcc/libgcc2.c:533 (set (reg:HI 3 r3)
        (const_int 4294967214 [0xffffffae])) -1 (nil)
    (nil))
../../gcc-svn/trunk/gcc/libgcc2.c:542: internal compiler error: in 
extract_insn, at recog.c:2077

There is int / HWI mismatch in h8300.c Attached patch fixes the build.

BTW: There are still (harmless) warnings from as during the build:

/tmp/ccwynazV.s: Assembler messages:
/tmp/ccwynazV.s:20: Warning: operand #0xffffffffffffffe4 out of range.

But they are due to (old) 2.16.1 gas and should eventually be fixed in 
binutils.

2006-10-07  Uros Bizjak  <uros@kss-loka.si>

        * config/h8300/h8300.c (h8300_emit_stack_adjustment): Change "size"
        argument to HOST_WIDE_INT.  Update function prototype.
        (round_frame_size): Change return type to HOST_WIDE_INT.  Change
        "size" argument to HOST_WIDE_INT.  Update function prototype.

Patch was checked by compiling gcc for h8300-elf target and visually 
checked produced ASM.

Uros.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: h8300-build.diff
Type: text/x-patch
Size: 1146 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20061007/0147364f/attachment.bin>


More information about the Gcc-patches mailing list