CVS: msp430-libc/src/libm ChangeLog, 1.4, 1.4.2.1 sqrt.S, 1.1, 1.1.2.1

"Sergey A. Borshch" <[email protected]> Mon, 26 Jan 2009 15:47:15 +0000
Newsgroups gmane.comp.hardware.texas-instruments.msp430.gcc.cvs
Message-ID <[email protected]>
Update of /cvsroot/mspgcc/msp430-libc/src/libm
In directory 23jxhf1.ch3.sourceforge.com:/tmp/cvs-serv21574/src/libm

Modified Files:
      Tag: MSP430X
	ChangeLog sqrt.S 
Log Message:
multilib support added. 
430X support added. 
crt functions moved from libgcc to libc.
setjmp rewritten.


Index: ChangeLog
===================================================================
RCS file: /cvsroot/mspgcc/msp430-libc/src/libm/ChangeLog,v
retrieving revision 1.4
retrieving revision 1.4.2.1
diff -u -w -d -r1.4 -r1.4.2.1
--- ChangeLog	7 Aug 2003 23:16:08 -0000	1.4
+++ ChangeLog	26 Jan 2009 15:47:13 -0000	1.4.2.1
@@ -1,3 +1,10 @@
+2009-01-23 Sergey A. Borshch <sb-sf (_at_) users.sourceforge.net>
+	Modified files:
+        sqrt.S
+
+  * sqrt.S: 430X core compability added. -msave-prologue compiler 
+            option compability added.
+
 2003-08-07 Chris Takahashi <ctakahashi (_at_) users.sourceforge.net>
 	Modified files:
         subsf.c

Index: sqrt.S
===================================================================
RCS file: /cvsroot/mspgcc/msp430-libc/src/libm/sqrt.S,v
retrieving revision 1.1
retrieving revision 1.1.2.1
diff -u -w -d -r1.1 -r1.1.2.1
--- sqrt.S	30 Aug 2002 11:53:44 -0000	1.1
+++ sqrt.S	26 Jan 2009 15:47:13 -0000	1.1.2.1
@@ -25,6 +25,7 @@
  *
  * $Id$
  */
+	#include    "../core_common.inc"
 	.file "sqrt.S"
 	
 	.text
@@ -51,12 +52,16 @@
 	tst	r15
 	jn	.Lsqrt_err
 
-	push	argsave_lo
-	push	argsave_hi
-	push	y_lo
-	push	y_hi
-	push	yprev_lo
+#if defined(__MSP430X__)
+        XPUSHM  #6, r11
+#else
 	push	yprev_hi
+        push	yprev_lo
+        push	y_hi
+        push	y_lo
+        push	argsave_hi
+        push	argsave_lo
+#endif
 
 	mov	r14, argsave_lo
 	mov	r15, argsave_hi
@@ -73,10 +78,10 @@
 	mov	y_hi, r13
 	mov	argsave_lo, r14	;	arg/y
 	mov	argsave_hi, r15
-	call	#__divsf3	
+	XCALL   #__divsf3	
 	mov	y_lo, r12		; +y
 	mov	y_hi, r13
-	call	#__addsf3
+	XCALL   #__addsf3
 	mov	#llo(0x3f000000), r12	; *0.5
 	mov	#lhi(0x3f000000), r13
 	call	#__mulsf3
@@ -91,13 +96,20 @@
 	mov	y_lo, r14
 	mov	y_hi, r15
 
-	pop	yprev_hi
-	pop	yprev_lo
-	pop	y_hi
-	pop	y_lo
-	pop	argsave_hi
+#if defined(__MSP430X__)
+        XPOPM   #6, r11
+        XRET
+#elif defined(__MSP430_SAVE_PROLOGUE__)
+        br      #__epilogue_restorer + 2 * 2
+#else
 	pop	argsave_lo
+        pop	argsave_hi
+        pop	y_lo
+        pop	y_hi
+        pop	yprev_lo
+        pop	yprev_hi
 	ret
+#endif
 
 .Lsqrt_err:
 	mov	#0xffff, r14


------------------------------------------------------------------------------
This SF.net email is sponsored by:
SourcForge Community
SourceForge wants to tell your story.
http://p.sf.net/sfu/sf-spreadtheword