aboutsummaryrefslogtreecommitdiff
path: root/sysdeps/i386
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2014-06-16 22:54:46 +0000
committerJoseph Myers <joseph@codesourcery.com>2014-06-16 22:54:46 +0000
commit91c03c5389ed957da852de60e0e508cc682d9b12 (patch)
tree6e147d53351a7ddbc9f8d74c8705c155686300de /sysdeps/i386
parenta76e63c586f40a824f738219bd473cb890af9ea7 (diff)
downloadglibc-91c03c5389ed957da852de60e0e508cc682d9b12.zip
glibc-91c03c5389ed957da852de60e0e508cc682d9b12.tar.gz
glibc-91c03c5389ed957da852de60e0e508cc682d9b12.tar.bz2
Add CFI to x86 ceil / floor / trunc (bug 16681).
This patch adds CFI to the sysdeps/i386/fpu/ implementations of ceil, floor and trunc functions, for consistency with other x86 .S files in glibc which have CFI for stack adjustments. Tested x86. [BZ #16681] * sysdeps/i386/fpu/s_ceil.S (__ceil): Add CFI. * sysdeps/i386/fpu/s_ceilf.S (__ceilf): Likewise. * sysdeps/i386/fpu/s_ceill.S (__ceill): Likewise. * sysdeps/i386/fpu/s_floor.S (__floor): Likewise. * sysdeps/i386/fpu/s_floorf.S (__floorf): Likewise. * sysdeps/i386/fpu/s_floorl.S (__floorl): Likewise. * sysdeps/i386/fpu/s_trunc.S (__trunc): Likewise. * sysdeps/i386/fpu/s_truncf.S (__truncf): Likewise. * sysdeps/i386/fpu/s_truncl.S (__truncl): Likewise.
Diffstat (limited to 'sysdeps/i386')
-rw-r--r--sysdeps/i386/fpu/s_ceil.S2
-rw-r--r--sysdeps/i386/fpu/s_ceilf.S2
-rw-r--r--sysdeps/i386/fpu/s_ceill.S2
-rw-r--r--sysdeps/i386/fpu/s_floor.S2
-rw-r--r--sysdeps/i386/fpu/s_floorf.S2
-rw-r--r--sysdeps/i386/fpu/s_floorl.S2
-rw-r--r--sysdeps/i386/fpu/s_trunc.S2
-rw-r--r--sysdeps/i386/fpu/s_truncf.S2
-rw-r--r--sysdeps/i386/fpu/s_truncl.S2
9 files changed, 18 insertions, 0 deletions
diff --git a/sysdeps/i386/fpu/s_ceil.S b/sysdeps/i386/fpu/s_ceil.S
index b015912..f32fa26 100644
--- a/sysdeps/i386/fpu/s_ceil.S
+++ b/sysdeps/i386/fpu/s_ceil.S
@@ -10,6 +10,7 @@ RCSID("$NetBSD: s_ceil.S,v 1.4 1995/05/08 23:52:13 jtc Exp $")
ENTRY(__ceil)
fldl 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -27,6 +28,7 @@ ENTRY(__ceil)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__ceil)
weak_alias (__ceil, ceil)
diff --git a/sysdeps/i386/fpu/s_ceilf.S b/sysdeps/i386/fpu/s_ceilf.S
index 352d40d..4fe703b 100644
--- a/sysdeps/i386/fpu/s_ceilf.S
+++ b/sysdeps/i386/fpu/s_ceilf.S
@@ -10,6 +10,7 @@ RCSID("$NetBSD: s_ceilf.S,v 1.3 1995/05/08 23:52:44 jtc Exp $")
ENTRY(__ceilf)
flds 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -27,6 +28,7 @@ ENTRY(__ceilf)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__ceilf)
weak_alias (__ceilf, ceilf)
diff --git a/sysdeps/i386/fpu/s_ceill.S b/sysdeps/i386/fpu/s_ceill.S
index 0128966..4b272c5 100644
--- a/sysdeps/i386/fpu/s_ceill.S
+++ b/sysdeps/i386/fpu/s_ceill.S
@@ -11,6 +11,7 @@ RCSID("$NetBSD: $")
ENTRY(__ceill)
fldt 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -28,6 +29,7 @@ ENTRY(__ceill)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__ceill)
weak_alias (__ceill, ceill)
diff --git a/sysdeps/i386/fpu/s_floor.S b/sysdeps/i386/fpu/s_floor.S
index 20a8660..2d6287d 100644
--- a/sysdeps/i386/fpu/s_floor.S
+++ b/sysdeps/i386/fpu/s_floor.S
@@ -10,6 +10,7 @@ RCSID("$NetBSD: s_floor.S,v 1.4 1995/05/09 00:01:59 jtc Exp $")
ENTRY(__floor)
fldl 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -27,6 +28,7 @@ ENTRY(__floor)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__floor)
weak_alias (__floor, floor)
diff --git a/sysdeps/i386/fpu/s_floorf.S b/sysdeps/i386/fpu/s_floorf.S
index eca93a2..e969fbe 100644
--- a/sysdeps/i386/fpu/s_floorf.S
+++ b/sysdeps/i386/fpu/s_floorf.S
@@ -10,6 +10,7 @@ RCSID("$NetBSD: s_floorf.S,v 1.3 1995/05/09 00:04:32 jtc Exp $")
ENTRY(__floorf)
flds 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -27,6 +28,7 @@ ENTRY(__floorf)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__floorf)
weak_alias (__floorf, floorf)
diff --git a/sysdeps/i386/fpu/s_floorl.S b/sysdeps/i386/fpu/s_floorl.S
index c2bf091..1206554 100644
--- a/sysdeps/i386/fpu/s_floorl.S
+++ b/sysdeps/i386/fpu/s_floorl.S
@@ -11,6 +11,7 @@ RCSID("$NetBSD: $")
ENTRY(__floorl)
fldt 4(%esp)
subl $8,%esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp) /* store fpu control word */
@@ -28,6 +29,7 @@ ENTRY(__floorl)
fldcw 4(%esp) /* restore original control word */
addl $8,%esp
+ cfi_adjust_cfa_offset (-8)
ret
END (__floorl)
weak_alias (__floorl, floorl)
diff --git a/sysdeps/i386/fpu/s_trunc.S b/sysdeps/i386/fpu/s_trunc.S
index 5a14864..a5f8fc7 100644
--- a/sysdeps/i386/fpu/s_trunc.S
+++ b/sysdeps/i386/fpu/s_trunc.S
@@ -22,6 +22,7 @@
ENTRY(__trunc)
fldl 4(%esp)
subl $8, %esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp)
movl $0xc00, %edx
orl 4(%esp), %edx
@@ -30,6 +31,7 @@ ENTRY(__trunc)
frndint
fldcw 4(%esp)
addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
ret
END(__trunc)
weak_alias (__trunc, trunc)
diff --git a/sysdeps/i386/fpu/s_truncf.S b/sysdeps/i386/fpu/s_truncf.S
index d3b9385..746d52f 100644
--- a/sysdeps/i386/fpu/s_truncf.S
+++ b/sysdeps/i386/fpu/s_truncf.S
@@ -22,6 +22,7 @@
ENTRY(__truncf)
flds 4(%esp)
subl $8, %esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp)
movl $0xc00, %edx
orl 4(%esp), %edx
@@ -30,6 +31,7 @@ ENTRY(__truncf)
frndint
fldcw 4(%esp)
addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
ret
END(__truncf)
weak_alias (__truncf, truncf)
diff --git a/sysdeps/i386/fpu/s_truncl.S b/sysdeps/i386/fpu/s_truncl.S
index 4bef0f4..d573855 100644
--- a/sysdeps/i386/fpu/s_truncl.S
+++ b/sysdeps/i386/fpu/s_truncl.S
@@ -22,6 +22,7 @@
ENTRY(__truncl)
fldt 4(%esp)
subl $8, %esp
+ cfi_adjust_cfa_offset (8)
fstcw 4(%esp)
movl $0xc00, %edx
orl 4(%esp), %edx
@@ -30,6 +31,7 @@ ENTRY(__truncl)
frndint
fldcw 4(%esp)
addl $8, %esp
+ cfi_adjust_cfa_offset (-8)
ret
END(__truncl)
weak_alias (__truncl, truncl)