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