Commit 29a963d3 by Herman A.J. ten Brugge Committed by Michael Hayes

t-c4x: Change qi,qf,di,df into si,sf,hi,hf to generate same object names as libgcc2.c.

2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>

	* t-c4x: Change qi,qf,di,df into si,sf,hi,hf to generate same
		object names as libgcc2.c.
	* libgcc.S: Use newly defined names.

From-SVN: r31680
parent 65169dcf
2000-01-29 Herman A.J. ten Brugge <Haj.Ten.Brugge@net.HCC.nl>
* t-c4x: Change qi,qf,di,df into si,sf,hi,hf to generate same
object names as libgcc2.c.
* libgcc.S: Use newly defined names.
Fri Jan 7 19:48:04 CET 2000 Jan Hubicka <jh@suse.cz> Fri Jan 7 19:48:04 CET 2000 Jan Hubicka <jh@suse.cz>
* sbitmap.c (sbitmap_first_set_bit, sbitmap_last_set_bit): New * sbitmap.c (sbitmap_first_set_bit, sbitmap_last_set_bit): New
function. function.
......
...@@ -65,7 +65,7 @@ Boston, MA 02111-1307, USA. */ ...@@ -65,7 +65,7 @@ Boston, MA 02111-1307, USA. */
; r2 dividend, r3 divisor, r0 quotient ; r2 dividend, r3 divisor, r0 quotient
; clobbers r1, ar1 ; clobbers r1, ar1
#ifdef L_divqf3 #ifdef L_divsf3
.text .text
.global ___divqf3 .global ___divqf3
___divqf3: ___divqf3:
...@@ -166,7 +166,7 @@ ___divqf3: ...@@ -166,7 +166,7 @@ ___divqf3:
; ;
; ar2 dividend, r2 divisor, r0 quotient ; ar2 dividend, r2 divisor, r0 quotient
; clobbers r1, r3, ar0, ar1, ir0, ir1, rc, rs, re ; clobbers r1, r3, ar0, ar1, ir0, ir1, rc, rs, re
#ifdef L_divqi3 #ifdef L_divsi3
.text .text
.global ___divqi3 .global ___divqi3
.ref udivqi3n .ref udivqi3n
...@@ -255,7 +255,7 @@ divq32: ...@@ -255,7 +255,7 @@ divq32:
; ;
; ar2 dividend, r2 divisor, r0 quotient, ; ar2 dividend, r2 divisor, r0 quotient,
; clobbers r1, r3, ar0, ar1, ir0, ir1, rc, rs, re ; clobbers r1, r3, ar0, ar1, ir0, ir1, rc, rs, re
#ifdef L_udivqi3 #ifdef L_udivsi3
.text .text
.global ___udivqi3 .global ___udivqi3
.global udivqi3n .global udivqi3n
...@@ -366,7 +366,7 @@ qzero: ...@@ -366,7 +366,7 @@ qzero:
nop nop
#endif #endif
#ifdef L_umodqi3 #ifdef L_umodsi3
.text .text
.global ___umodqi3 .global ___umodqi3
.global umodqi3n .global umodqi3n
...@@ -482,7 +482,7 @@ uzero: bud ir1 ...@@ -482,7 +482,7 @@ uzero: bud ir1
nop nop
#endif #endif
#ifdef L_modqi3 #ifdef L_modsi3
.text .text
.global ___modqi3 .global ___modqi3
.ref umodqi3n .ref umodqi3n
...@@ -606,7 +606,7 @@ ___unsfltcompare: .float 2147483648.0 ...@@ -606,7 +606,7 @@ ___unsfltcompare: .float 2147483648.0
; ;
; ar2 multiplier, r2 multiplicand, r0 product ; ar2 multiplier, r2 multiplicand, r0 product
; clobbers r1, r2, r3 ; clobbers r1, r2, r3
#ifdef L_mulqi3 #ifdef L_mulsi3
.text .text
.global ___mulqi3 .global ___mulqi3
___mulqi3: ___mulqi3:
...@@ -643,7 +643,7 @@ ___mulqi3: ...@@ -643,7 +643,7 @@ ___mulqi3:
; long1 and long2 on stack ; long1 and long2 on stack
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_mulhi3 #ifdef L_muldi3
.text .text
.global ___mulhi3 .global ___mulhi3
#ifdef _TMS320C4x #ifdef _TMS320C4x
...@@ -725,7 +725,7 @@ ___mulhi3: ...@@ -725,7 +725,7 @@ ___mulhi3:
; src2 in r2 ; src2 in r2
; result in r0 ; result in r0
; ;
#ifdef L_umulhi3_high #ifdef L_umuldi3_high
.text .text
.global ___umulhi3_high .global ___umulhi3_high
___umulhi3_high: ___umulhi3_high:
...@@ -771,7 +771,7 @@ ___umulhi3_high: ...@@ -771,7 +771,7 @@ ___umulhi3_high:
; src2 in r2 ; src2 in r2
; result in r0 ; result in r0
; ;
#ifdef L_smulhi3_high #ifdef L_smuldi3_high
.text .text
.global ___smulhi3_high .global ___smulhi3_high
___smulhi3_high: ___smulhi3_high:
...@@ -823,9 +823,9 @@ ___smulhi3_high: ...@@ -823,9 +823,9 @@ ___smulhi3_high:
; long1 and long2 on stack ; long1 and long2 on stack
; divide in r0,r1 ; divide in r0,r1
; modulo in r2,r3 ; modulo in r2,r3
; routine takes a maximum of 64*9+21=597 cycles = 24 us @ 50Mhz ; routine takes a maximum of 64*8+23=535 cycles = 21.4 us @ 50Mhz
; ;
#ifdef L_udivhi3 #ifdef L_udivdi3
.text .text
.global ___udivhi3 .global ___udivhi3
.global ___udivide .global ___udivide
...@@ -879,12 +879,13 @@ udiv0: ...@@ -879,12 +879,13 @@ udiv0:
rolc r2 rolc r2
subi3 ar0,r2,r3 subi3 ar0,r2,r3
xor 1,st ldinc r3,r2
ldic r3,r2
rolc r0 rolc r0
udivend0: udivend0:
rolc r1 rolc r1
not r0
not r1
ldiu 0,r3 ldiu 0,r3
rets rets
udiv1: udiv1:
...@@ -908,13 +909,14 @@ udiv1: ...@@ -908,13 +909,14 @@ udiv1:
rolc r3 rolc r3
subi3 ar0,r2,r4 subi3 ar0,r2,r4
subb3 ar1,r3,r5 subb3 ar1,r3,r5
xor 1,st ldinc r4,r2
ldic r4,r2 ldinc r5,r3
ldic r5,r3
rolc r0 rolc r0
udivend1: udivend1:
rolc r1 rolc r1
not r0
not r1
pop r5 pop r5
pop r4 pop r4
rets rets
...@@ -925,7 +927,7 @@ udivend1: ...@@ -925,7 +927,7 @@ udivend1:
; long1 and long2 on stack ; long1 and long2 on stack
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_umodhi3 #ifdef L_umoddi3
.text .text
.global ___umodhi3 .global ___umodhi3
.ref ___modulo .ref ___modulo
...@@ -948,7 +950,7 @@ ___umodhi3: ...@@ -948,7 +950,7 @@ ___umodhi3:
; long1 and long2 on stack ; long1 and long2 on stack
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_divhi3 #ifdef L_divdi3
.text .text
.global ___divhi3 .global ___divhi3
.ref ___udivide .ref ___udivide
...@@ -985,7 +987,7 @@ div3: ...@@ -985,7 +987,7 @@ div3:
; long1 and long2 on stack ; long1 and long2 on stack
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_modhi3 #ifdef L_moddi3
.text .text
.global ___modhi3 .global ___modhi3
.ref ___umodulo .ref ___umodulo
...@@ -1024,7 +1026,7 @@ mod3: ...@@ -1024,7 +1026,7 @@ mod3:
; input in r2 ; input in r2
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_fix_truncqfhi2 #ifdef L_fix_truncsfdi2
.text .text
.global ___fix_truncqfhi2 .global ___fix_truncqfhi2
.ref ufix_truncqfhi2n .ref ufix_truncqfhi2n
...@@ -1052,7 +1054,7 @@ ___fix_truncqfhi2: ...@@ -1052,7 +1054,7 @@ ___fix_truncqfhi2:
; input in r2 ; input in r2
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_ufix_truncqfhi2 #ifdef L_ufix_truncsfdi2
.text .text
.global ___ufix_truncqfhi2 .global ___ufix_truncqfhi2
.global ufix_truncqfhi2n .global ufix_truncqfhi2n
...@@ -1098,7 +1100,7 @@ ufix1: ...@@ -1098,7 +1100,7 @@ ufix1:
; input on stack ; input on stack
; result in r0 ; result in r0
; ;
#ifdef L_floathiqf2 #ifdef L_floatdisf2
.text .text
.global ___floathiqf2 .global ___floathiqf2
.ref ufloathiqf2n .ref ufloathiqf2n
...@@ -1119,7 +1121,7 @@ ___floathiqf2: ...@@ -1119,7 +1121,7 @@ ___floathiqf2:
; input on stack ; input on stack
; result in r0 ; result in r0
; ;
#ifdef L_ufloathiqf2 #ifdef L_ufloatdisf2
.text .text
.global ___ufloathiqf2 .global ___ufloathiqf2
.global ufloathiqf2n .global ufloathiqf2n
...@@ -1169,7 +1171,7 @@ uflt2: ...@@ -1169,7 +1171,7 @@ uflt2:
; input in r2 ; input in r2
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_fix_trunchfhi2 #ifdef L_fix_truncdfdi2
.text .text
.global ___fix_trunchfhi2 .global ___fix_trunchfhi2
.ref ufix_trunchfhi2n .ref ufix_trunchfhi2n
...@@ -1198,7 +1200,7 @@ ___fix_trunchfhi2: ...@@ -1198,7 +1200,7 @@ ___fix_trunchfhi2:
; input in r2 ; input in r2
; result in r0,r1 ; result in r0,r1
; ;
#ifdef L_ufix_trunchfhi2 #ifdef L_ufix_truncdfdi2
.text .text
.global ___ufix_trunchfhi2 .global ___ufix_trunchfhi2
.global ufix_trunchfhi2n .global ufix_trunchfhi2n
...@@ -1245,7 +1247,7 @@ ufixh1: ...@@ -1245,7 +1247,7 @@ ufixh1:
; input on stack ; input on stack
; result in r0 ; result in r0
; ;
#ifdef L_floathihf2 #ifdef L_floatdidf2
.text .text
.global ___floathihf2 .global ___floathihf2
.ref ufloathihf2n .ref ufloathihf2n
...@@ -1266,7 +1268,7 @@ ___floathihf2: ...@@ -1266,7 +1268,7 @@ ___floathihf2:
; input on stack ; input on stack
; result in r0 ; result in r0
; ;
#ifdef L_ufloathihf2 #ifdef L_ufloatdidf2
.text .text
.global ___ufloathihf2 .global ___ufloathihf2
.global ufloathihf2n .global ufloathihf2n
...@@ -1357,7 +1359,7 @@ ___ffs: ...@@ -1357,7 +1359,7 @@ ___ffs:
; input in r2, r3 ; input in r2, r3
; output in r0 ; output in r0
; ;
#ifdef L_mulhf3 #ifdef L_muldf3
.global ___mulhf3 .global ___mulhf3
.text .text
___mulhf3: ___mulhf3:
...@@ -1392,7 +1394,7 @@ ___mulhf3: ...@@ -1392,7 +1394,7 @@ ___mulhf3:
; calculate long double / long double ; calculate long double / long double
; r2 dividend, r3 divisor, r0 quotient ; r2 dividend, r3 divisor, r0 quotient
; ;
#ifdef L_divhf3 #ifdef L_divdf3
.global ___divhf3 .global ___divhf3
.text .text
___divhf3: ___divhf3:
......
CROSS_LIBGCC1 = libgcc1-asm.a CROSS_LIBGCC1 = libgcc1-asm.a
LIB1ASMSRC = c4x/libgcc.S LIB1ASMSRC = c4x/libgcc.S
LIB1ASMFUNCS = _divqf3 _divqi3 _udivqi3 _umodqi3 _modqi3 _mulqi3 \ LIB1ASMFUNCS = _divsf3 _divsi3 _udivsi3 _umodsi3 _modsi3 _mulsi3 \
_mulhf3 _divhf3 _unsfltconst _unsfltcompare \ _muldf3 _divdf3 _unsfltconst _unsfltcompare \
_mulhi3 _umulhi3_high _smulhi3_high _divhi3 _modhi3 _umodhi3 _udivhi3 \ _muldi3 _umuldi3_high _smuldi3_high _divdi3 _moddi3 _umoddi3 _udivdi3 \
_fix_truncqfhi2 _ufix_truncqfhi2 _floathiqf2 _ufloathiqf2 \ _fix_truncsfdi2 _ufix_truncsfdi2 _floatdisf2 _ufloatdisf2 \
_floathihf2 _ufloathihf2 _fix_trunchfhi2 _ufix_trunchfhi2 _ffs _floatdidf2 _ufloatdidf2 _fix_truncdfdi2 _ufix_truncdfdi2 _ffs
TARGET_LIBGCC2_CFLAGS = -Dexit=unused_exit TARGET_LIBGCC2_CFLAGS = -Dexit=unused_exit
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment