svn commit: r198077 - in projects/clangbsd/lib/libc: amd64/gen i386/gen

Roman Divacky rdivacky at FreeBSD.org
Wed Oct 14 13:12:01 UTC 2009


Author: rdivacky
Date: Wed Oct 14 13:12:00 2009
New Revision: 198077
URL: http://svn.freebsd.org/changeset/base/198077

Log:
  fix the build of ldexp.s by turning it into assembler-with-cpp
  so PIC build works

Added:
  projects/clangbsd/lib/libc/amd64/gen/ldexp.S
     - copied, changed from r198076, projects/clangbsd/lib/libc/amd64/gen/ldexp.s
  projects/clangbsd/lib/libc/i386/gen/ldexp.S
     - copied, changed from r198076, projects/clangbsd/lib/libc/i386/gen/ldexp.s
Deleted:
  projects/clangbsd/lib/libc/amd64/gen/ldexp.s
  projects/clangbsd/lib/libc/i386/gen/ldexp.s
Modified:
  projects/clangbsd/lib/libc/amd64/gen/Makefile.inc
  projects/clangbsd/lib/libc/i386/gen/Makefile.inc

Modified: projects/clangbsd/lib/libc/amd64/gen/Makefile.inc
==============================================================================
--- projects/clangbsd/lib/libc/amd64/gen/Makefile.inc	Wed Oct 14 12:01:11 2009	(r198076)
+++ projects/clangbsd/lib/libc/amd64/gen/Makefile.inc	Wed Oct 14 13:12:00 2009	(r198077)
@@ -5,6 +5,6 @@
 # http://llvm.org/bugs/show_bug.cgi?id=879
 SRCS+=	_setjmp.S _set_tp.c rfork_thread.S setjmp.S sigsetjmp.S \
 	fabs.S modf.S \
-	infinity.c ldexp.s makecontext.c signalcontext.c \
+	infinity.c ldexp.S makecontext.c signalcontext.c \
 	flt_rounds.c fpgetmask.c fpsetmask.c fpgetprec.c fpsetprec.c \
 	fpgetround.c fpsetround.c fpgetsticky.c

Copied and modified: projects/clangbsd/lib/libc/amd64/gen/ldexp.S (from r198076, projects/clangbsd/lib/libc/amd64/gen/ldexp.s)
==============================================================================
--- projects/clangbsd/lib/libc/amd64/gen/ldexp.s	Wed Oct 14 12:01:11 2009	(r198076, copy source)
+++ projects/clangbsd/lib/libc/amd64/gen/ldexp.S	Wed Oct 14 13:12:00 2009	(r198077)
@@ -1,53 +1,14 @@
-	.file	"ldexp.c"
-#APP
-	.ident	"$FreeBSD$"
-#NO_APP
-	.text
-	.p2align 4,,15
-.globl ldexp
-	.type	ldexp, @function
-ldexp:
-.LFB2:
+#include <machine/asm.h>
+
+ENTRY(ldexp)
 	cvtsi2sd	%edi, %xmm1
 	movsd	%xmm0, -16(%rsp)
 	movsd	%xmm1, -8(%rsp)
 	fldl	-8(%rsp)
 	fldl	-16(%rsp)
-#APP
 	fscale 
-#NO_APP
 	fstp	%st(1)
 	fstpl	-16(%rsp)
 	movsd	-16(%rsp), %xmm0
 	ret
-.LFE2:
-	.size	ldexp, .-ldexp
-	.section	.eh_frame,"a", at progbits
-.Lframe1:
-	.long	.LECIE1-.LSCIE1
-.LSCIE1:
-	.long	0x0
-	.byte	0x1
-	.string	"zR"
-	.uleb128 0x1
-	.sleb128 -8
-	.byte	0x10
-	.uleb128 0x1
-	.byte	0x3
-	.byte	0xc
-	.uleb128 0x7
-	.uleb128 0x8
-	.byte	0x90
-	.uleb128 0x1
-	.align 8
-.LECIE1:
-.LSFDE1:
-	.long	.LEFDE1-.LASFDE1
-.LASFDE1:
-	.long	.LASFDE1-.Lframe1
-	.long	.LFB2
-	.long	.LFE2-.LFB2
-	.uleb128 0x0
-	.align 8
-.LEFDE1:
-	.ident	"GCC: (GNU) 4.2.1 20070719  [FreeBSD]"
+END(modf)

Modified: projects/clangbsd/lib/libc/i386/gen/Makefile.inc
==============================================================================
--- projects/clangbsd/lib/libc/i386/gen/Makefile.inc	Wed Oct 14 12:01:11 2009	(r198076)
+++ projects/clangbsd/lib/libc/i386/gen/Makefile.inc	Wed Oct 14 13:12:00 2009	(r198077)
@@ -4,5 +4,5 @@
 # XXX: the ldexp.s should be ldexp.c see 
 # http://llvm.org/bugs/show_bug.cgi?id=879
 SRCS+=	_ctx_start.S _setjmp.S _set_tp.c fabs.S \
-	flt_rounds.c infinity.c ldexp.s makecontext.c modf.S \
+	flt_rounds.c infinity.c ldexp.S makecontext.c modf.S \
 	rfork_thread.S setjmp.S signalcontext.c sigsetjmp.S

Copied and modified: projects/clangbsd/lib/libc/i386/gen/ldexp.S (from r198076, projects/clangbsd/lib/libc/i386/gen/ldexp.s)
==============================================================================
--- projects/clangbsd/lib/libc/i386/gen/ldexp.s	Wed Oct 14 12:01:11 2009	(r198076, copy source)
+++ projects/clangbsd/lib/libc/i386/gen/ldexp.S	Wed Oct 14 13:12:00 2009	(r198077)
@@ -1,22 +1,13 @@
-	.file	"ldexp.c"
-#APP
-	.ident	"$FreeBSD$"
-#NO_APP
-	.text
-	.p2align 4,,15
-.globl ldexp
-	.type	ldexp, @function
-ldexp:
+#include <machine/asm.h>
+
+ENTRY(ldexp)
 	pushl	%ebp
 	movl	%esp, %ebp
 	fldl	8(%ebp)
 	fildl	16(%ebp)
 	fxch	%st(1)
 	popl	%ebp
-#APP
 	fscale 
-#NO_APP
 	fstp	%st(1)
 	ret
-	.size	ldexp, .-ldexp
-	.ident	"GCC: (GNU) 4.2.1 20070719  [FreeBSD]"
+END(ldexp)


More information about the svn-src-projects mailing list