In perl.git, the branch blead has been updated

<http://perl5.git.perl.org/perl.git/commitdiff/ac52a899378c1b28715ed80f23f21d43357072ac?hp=c517e197da3b8bb2949d59f3ff064587b810fa99>

- Log -----------------------------------------------------------------
commit ac52a899378c1b28715ed80f23f21d43357072ac
Author: Jarkko Hietaniemi <[email protected]>
Date:   Tue Nov 4 07:07:19 2014 -0500

    I shouldn't think of fp formats when tired.
    
    Or awake, come to think of it.

M       sv.c

commit c9c33d61e6ec8971ac0bb8d6e462378787d1a5ab
Author: Jarkko Hietaniemi <[email protected]>
Date:   Tue Nov 4 06:48:25 2014 -0500

    AIX noticed the broken comment and broke.

M       sv.c
-----------------------------------------------------------------------

Summary of changes:
 sv.c | 41 ++++++++++++++++++++++-------------------
 1 file changed, 22 insertions(+), 19 deletions(-)

diff --git a/sv.c b/sv.c
index f64890c..181da58 100644
--- a/sv.c
+++ b/sv.c
@@ -10999,35 +10999,38 @@ S_hextract(pTHX_ const NV nv, int* exponent, U8* 
vhex, U8* vend)
      * also need to insert the radix. */
     HEXTRACT_IMPLICIT_BIT(nv);
 #  ifdef HEXTRACT_LITTLE_ENDIAN
+    /* 0 1 2 3 4 5 6 7 (MSB = 7, LSB = 0, 6+7 = exponent+sign) */
     HEXTRACT_LO_NYBBLE(6);
     for (ix = 5; ix >= 0; ix--) {
         HEXTRACT_BYTE(ix);
     }
 #  elif defined(HEXTRACT_BIG_ENDIAN)
+    /* 7 6 5 4 3 2 1 0 (MSB = 7, LSB = 0, 6+7 = exponent+sign) */
     HEXTRACT_LO_NYBBLE(1);
     for (ix = 2; ix < NVSIZE; ix++) {
         HEXTRACT_BYTE(ix);
     }
+#  elif DOUBLEKIND == DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_LE_BE
+    /* 4 5 6 7 0 1 2 3 (MSB = 7, LSB = 0, 6+7 = exponent+sign) */
+    HEXTRACT_LO_NYBBLE(2); /* 6 */
+    HEXTRACT_BYTE(1); /* 5 */
+    HEXTRACT_BYTE(0); /* 4 */
+    HEXTRACT_BYTE(7); /* 3 */
+    HEXTRACT_BYTE(6); /* 2 */
+    HEXTRACT_BYTE(5); /* 1 */
+    HEXTRACT_BYTE(4); /* 0 */
+#  elif DOUBLEKIND == DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_BE_LE
+    /* 3 2 1 0 7 6 5 4 (MSB = 7, LSB = 0, 7+6 = sign+exponent) */
+    HEXTRACT_LO_NYBBLE(5); /* 6 */
+    HEXTRACT_BYTE(6); /* 5 */
+    HEXTRACT_BYTE(7); /* 4 */
+    HEXTRACT_BYTE(0); /* 3 */
+    HEXTRACT_BYTE(1); /* 2 */
+    HEXTRACT_BYTE(2); /* 1 */
+    HEXTRACT_BYTE(3); /* 0 */
 #  else
-#    if DOUBLEKIND == DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_LE_BE
-     /* 4 5 6 7 0 1 2 3 (MSB = 7, LSB = 0, 6+7 = exponent + sign)
-        HEXTRACT_BYTE(2);
-        HEXTRACT_BYTE(1);
-        HEXTRACT_BYTE(7);
-        HEXTRACT_BYTE(6);
-        HEXTRACT_BYTE(5);
-        HEXTRACT_BYTE(4);
-#    elif DOUBLEKIND == DOUBLE_IS_IEEE_754_64_BIT_MIXED_ENDIAN_BE_LE
-     /* 3 2 1 0 7 6 5 4 (MSB = 7, LSB = 0, 0+1 = sign+exponent) */
-        HEXTRACT_BYTE(4);
-        HEXTRACT_BYTE(5);
-        HEXTRACT_BYTE(6);
-        HEXTRACT_BYTE(7);
-        HEXTRACT_BYTE(0);
-        HEXTRACT_BYTE(1);
-#    else
-#      error "Unknown DOUBLEKIND"
-#    endif
+    /* XXX restore fallback to frexp+ldexp */
+    error "Unexpected DOUBLEKIND"
 #  endif
 #endif
     /* Croak for various reasons: if the output pointer escaped the

--
Perl5 Master Repository

Reply via email to