Wrong code generated for Hitachi SH, and compilation problems withrecent snapshots
Joern Rennecke
amylaar@cygnus.co.uk
Tue Apr 11 08:07:00 GMT 2000
> 20000403 gives this:
>
> _fixunssfsi
> ../../src/gcc/libgcc2.c: In function _fixunssfsi':
> ../../src/gcc/libgcc2.c:1026: Insn does not satisfy its constraints:
> (insn 59 55 4 (set (reg:SI 0 r0)
> (reg:SI 28 fr4)) 123 {movsi_ie} (nil)
> (nil))
> ../../src/gcc/libgcc2.c:1026: Internal compiler error in
> eload_cse_simplify_op
> erands', at reload1.c:8130
> Please submit a full bug report.
> See <URL: http://www.gnu.org/software/gcc/bugs.html > for instructions.
I've fixed this on the 6th:
Thu Apr 6 00:30:50 2000 J"orn Rennecke <amylaar@cygnus.co.uk>
* sh.h (FUNCTION_ARG_PARTIAL_NREGS): Accomodate an unsigned
GET_MODE_SIZE.
Index: config/sh/sh.h
===================================================================
RCS file: /cvs/gcc/egcs/gcc/config/sh/sh.h,v
retrieving revision 1.57
retrieving revision 1.58
diff -p -r1.57 -r1.58
*** sh.h 2000/04/05 23:12:53 1.57
--- sh.h 2000/04/05 23:38:36 1.58
*************** struct sh_args {
*** 1066,1072 ****
+ ((MODE) != BLKmode \
? ROUND_ADVANCE (GET_MODE_SIZE (MODE)) \
: ROUND_ADVANCE (int_size_in_bytes (TYPE))) \
! - NPARM_REGS (MODE) > 0)) \
? NPARM_REGS (MODE) - ROUND_REG ((CUM), (MODE)) \
: 0)
--- 1066,1072 ----
+ ((MODE) != BLKmode \
? ROUND_ADVANCE (GET_MODE_SIZE (MODE)) \
: ROUND_ADVANCE (int_size_in_bytes (TYPE))) \
! > NPARM_REGS (MODE))) \
? NPARM_REGS (MODE) - ROUND_REG ((CUM), (MODE)) \
: 0)
> 20000410 gives this:
>
> /usr/src/gnu/build-sh-coff/gcc/xgcc -B/usr/src/gnu/build-sh-coff/gcc/
> -B/usr/src
> /gnu/build-sh-coff/sh-coff/newlib/ -B/opt/cgcc/sh-coff/bin/ -idirafter
> /usr/src/
> gnu/build-sh-coff/sh-coff/newlib/targ-include -idirafter
> /usr/src/gnu/src/newlib
> /libc/include -nostdinc -c -DHAVE_CONFIG_H -g -O2 -m3e -I.
> -I../../../../src/li
> biberty/../include -W -Wall -Wtraditional
> ../../../../src/libiberty/floatformat
> .c
> xgcc: Internal compiler error: program cc1 got fatal signal 11
I can't seem to get the current fsf sources to build newlib - it's missing
the make target.
More information about the Gcc
mailing list