]> sourceware.org Git - glibc.git/commitdiff
Align stack to 16 bytes when calling __errno_location
authorH.J. Lu <hjl.tools@gmail.com>
Sun, 12 Jul 2015 21:41:20 +0000 (14:41 -0700)
committerH.J. Lu <hjl.tools@gmail.com>
Wed, 5 Aug 2015 15:36:27 +0000 (08:36 -0700)
We should align stack to 16 bytes when calling __errno_location.

[BZ #18661]
* sysdeps/x86_64/fpu/s_cosf.S (__cosf): Align stack to 16 bytes
when calling __errno_location.
* sysdeps/x86_64/fpu/s_sincosf.S (__sincosf): Likewise.
* sysdeps/x86_64/fpu/s_sinf.S (__sinf): Likewise.

ChangeLog
NEWS
sysdeps/x86_64/fpu/s_cosf.S
sysdeps/x86_64/fpu/s_sincosf.S
sysdeps/x86_64/fpu/s_sinf.S

index 763771e848c294c463bb952a9169a8bd4a00a9aa..4f985f1591ccecbdc1a55d79122a0b9308413d65 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2015-08-05  H.J. Lu  <hongjiu.lu@intel.com>
+
+       [BZ #18661]
+       * sysdeps/x86_64/fpu/s_cosf.S (__cosf): Align stack to 16 bytes
+       when calling __errno_location.
+       * sysdeps/x86_64/fpu/s_sincosf.S (__sincosf): Likewise.
+       * sysdeps/x86_64/fpu/s_sinf.S (__sinf): Likewise.
+
 2015-08-05  H.J. Lu  <hongjiu.lu@intel.com>
 
        [BZ #18661]
diff --git a/NEWS b/NEWS
index 0eef93906a3a1fc01c685856e43c7e8bc78e5f67..a47687ea258e5ee5351937bcf7b47ae5d056eb88 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -8,7 +8,7 @@ using `glibc' in the "product" field.
 Version 2.23
 
 * The following bugs are resolved with this release:
-  18265, 18525, 18647.
+  18265, 18525, 18647, 18661.
 \f
 Version 2.22
 
index b7868ceb20f25bc46129230c12eca31330229867..bea10ef08921f29c595bb4fb307997ee67684a2f 100644 (file)
@@ -310,8 +310,14 @@ L(arg_inf_or_nan):
        /* Here if |x| is Inf or NAN */
        jne     L(skip_errno_setting)   /* in case of x is NaN */
 
+       /* Align stack to 16 bytes.  */
+       subq    $8, %rsp
+       cfi_adjust_cfa_offset (8)
        /* Here if x is Inf. Set errno to EDOM.  */
        call    JUMPTARGET(__errno_location)
+       addq    $8, %rsp
+       cfi_adjust_cfa_offset (-8)
+
        movl    $EDOM, (%rax)
 
        .p2align        4
index 21db70a88b6e422f029ec98e039fe79e8e3e168b..a2f313338f17a1be0efc32bee5e9a93a94140f0b 100644 (file)
@@ -354,8 +354,14 @@ L(arg_inf_or_nan):
        /* Here if |x| is Inf or NAN */
        jne     L(skip_errno_setting)   /* in case of x is NaN */
 
+       /* Align stack to 16 bytes.  */
+       subq    $8, %rsp
+       cfi_adjust_cfa_offset (8)
        /* Here if x is Inf. Set errno to EDOM.  */
        call    JUMPTARGET(__errno_location)
+       addq    $8, %rsp
+       cfi_adjust_cfa_offset (-8)
+
        movl    $EDOM, (%rax)
 
        .p2align        4
index dc921641dedb3d46b4bf55d55642914d88b868b0..90afbe8e5f84eeeca25c82fa9935d9a1cd88e276 100644 (file)
@@ -336,8 +336,14 @@ L(arg_inf_or_nan):
        /* Here if |x| is Inf or NAN */
        jne     L(skip_errno_setting)   /* in case of x is NaN */
 
+       /* Align stack to 16 bytes.  */
+       subq    $8, %rsp
+       cfi_adjust_cfa_offset (8)
        /* Here if x is Inf. Set errno to EDOM.  */
        call    JUMPTARGET(__errno_location)
+       addq    $8, %rsp
+       cfi_adjust_cfa_offset (-8)
+
        movl    $EDOM, (%rax)
 
        .p2align        4
This page took 0.102428 seconds and 5 git commands to generate.