12745e
--- glibc-2.17-c758a686/sysdeps/powerpc/power7/fpu/s_logbl.c	2014-09-10 20:52:01.813168232 -0400
12745e
+++ glibc-2.17-c758a686/sysdeps/powerpc/power7/fpu/s_logbl.c	2014-01-02 13:16:41.441557403 -0500
5de29b
@@ -1,5 +1,5 @@
5de29b
 /* logbl(). PowerPC/POWER7 version.
5de29b
-   Copyright (C) 2012 Free Software Foundation, Inc.
5de29b
+   Copyright (C) 2012-2014 Free Software Foundation, Inc.
5de29b
    This file is part of the GNU C Library.
5de29b
 
5de29b
    The GNU C Library is free software; you can redistribute it and/or
5de29b
@@ -35,14 +35,14 @@
5de29b
 long double
5de29b
 __logbl (long double x)
5de29b
 {
5de29b
-  double xh, xl;
5de29b
+  double xh;
5de29b
   double ret;
5de29b
 
5de29b
   if (__builtin_expect (x == 0.0L, 0))
5de29b
     /* Raise FE_DIVBYZERO and return -HUGE_VAL[LF].  */
5de29b
     return -1.0L / __builtin_fabsl (x);
5de29b
 
5de29b
-  ldbl_unpack (x, &xh, &xl);
5de29b
+  xh = ldbl_high (x);
5de29b
   /* ret = x & 0x7ff0000000000000;  */
5de29b
   asm (
5de29b
     "xxland %x0,%x1,%x2\n"
5de29b
@@ -58,15 +58,14 @@
5de29b
     {
5de29b
       /* POSIX specifies that denormal number is treated as
5de29b
          though it were normalized.  */
5de29b
-      int64_t lx, hx;
5de29b
+      int64_t hx;
5de29b
 
5de29b
-      GET_LDOUBLE_WORDS64 (hx, lx, x);
5de29b
+      EXTRACT_WORDS64 (hx, xh);
5de29b
       return (long double) (-1023 - (__builtin_clzll (hx) - 12));
5de29b
     }
5de29b
   /* Test to avoid logb_downward (0.0) == -0.0.  */
5de29b
   return ret == -0.0 ? 0.0 : ret;
5de29b
 }
5de29b
-
5de29b
 #ifndef __logbl
5de29b
 long_double_symbol (libm, __logbl, logbl);
5de29b
 #endif