fixunssfsi.c (__fixunssfsi): Enable on H8/300 as well.
* 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. From-SVN: r78588
This commit is contained in:
parent
dedbabed29
commit
bbc51dc29f
4 changed files with 9 additions and 34 deletions
|
@ -1,3 +1,10 @@
|
|||
2004-02-27 Kazu Hirata <kazu@cs.umass.edu>
|
||||
|
||||
* 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 <apinski@apple.com>
|
||||
|
||||
* c-typeck.c (tagged_types_tu_compatible_p) <ENUMERAL_TYPE>:
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 */
|
||||
|
|
|
@ -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 \
|
||||
|
|
Loading…
Add table
Reference in a new issue