diff --git a/gcc/ChangeLog b/gcc/ChangeLog index e6a72d0a121..a16b583d4c8 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,10 @@ +2004-02-27 Kazu Hirata + + * config/h8300/fixunssfsi.c (__fixunssfsi): Enable on H8/300 + as well. + * config/h8300/lib1funcs.asm (___fixunssfsi): Remove. + * config/h8300/t-h8300 (LIB1ASMFUNCS): Remove _fixunssfsi_asm. + 2004-02-27 Andrew Pinski * c-typeck.c (tagged_types_tu_compatible_p) : diff --git a/gcc/config/h8300/fixunssfsi.c b/gcc/config/h8300/fixunssfsi.c index 06120ba4905..0cd72dee048 100644 --- a/gcc/config/h8300/fixunssfsi.c +++ b/gcc/config/h8300/fixunssfsi.c @@ -29,10 +29,8 @@ the Free Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ /* The libgcc2.c implementation gets confused by our type setup and creates - a directly recursive call, so we do our own implementation. For - the H8/300, that's in lib1funcs.asm, for H8/300H and H8S, it's here. */ + a directly recursive call, so we do our own implementation. */ -#ifndef __H8300__ long __fixunssfsi (float a); long @@ -42,4 +40,3 @@ __fixunssfsi (float a) return (long) (a - 32768L) + 32768L; return (long) a; } -#endif diff --git a/gcc/config/h8300/lib1funcs.asm b/gcc/config/h8300/lib1funcs.asm index 985ec36e317..bf981e050d0 100644 --- a/gcc/config/h8300/lib1funcs.asm +++ b/gcc/config/h8300/lib1funcs.asm @@ -806,31 +806,3 @@ L_skip2: #endif #endif /* L_mulsi3 */ -#ifdef L_fixunssfsi_asm -/* For the h8300 we use asm to save some bytes, to - allow more programs to fit into the tiny address - space. For the H8/300H and H8S, the C version is good enough. */ -#ifdef __H8300__ -/* We still treat NANs different than libgcc2.c, but then, the - behavior is undefined anyways. */ - .global ___fixunssfsi -___fixunssfsi: - cmp.b #0x47,r0h - bge Large_num - jmp @___fixsfsi -Large_num: - bhi L_huge_num - xor.b #0x80,A0L - bmi L_shift8 -L_huge_num: - mov.w #65535,A0 - mov.w A0,A1 - rts -L_shift8: - mov.b A0L,A0H - mov.b A1H,A0L - mov.b A1L,A1H - mov.b #0,A1L - rts -#endif -#endif /* L_fixunssfsi_asm */ diff --git a/gcc/config/h8300/t-h8300 b/gcc/config/h8300/t-h8300 index 28ea2cf71bd..476dc18884a 100644 --- a/gcc/config/h8300/t-h8300 +++ b/gcc/config/h8300/t-h8300 @@ -1,6 +1,5 @@ LIB1ASMSRC = h8300/lib1funcs.asm -LIB1ASMFUNCS = _cmpsi2 _ucmpsi2 _divhi3 _divsi3 _mulhi3 _mulsi3 \ - _fixunssfsi_asm +LIB1ASMFUNCS = _cmpsi2 _ucmpsi2 _divhi3 _divsi3 _mulhi3 _mulsi3 LIB2FUNCS_EXTRA = \ $(srcdir)/config/h8300/clzhi2.c \