summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xConfigure3
-rw-r--r--sv.c5
2 files changed, 3 insertions, 5 deletions
diff --git a/Configure b/Configure
index ccc6df4a20..90094aaee5 100755
--- a/Configure
+++ b/Configure
@@ -6842,8 +6842,7 @@ int main() {
printf("3\n");
exit(0);
}
- if (b[LONGDBLSIZE - 11] == 0x00 && b[LONGDBLSIZE - 10] == 0xBF &&
- b[LONGDBLSIZE - 1] == 0xCD) {
+ if (b[0] == 0xBF && b[9] == 0xCD && b[10] == 0x00) {
/* is there ever big-endian 80-bit, really? */
printf("4\n");
exit(0);
diff --git a/sv.c b/sv.c
index 017ab87178..0de25950ab 100644
--- a/sv.c
+++ b/sv.c
@@ -10716,10 +10716,9 @@ S_hextract(pTHX_ const NV nv, int* exponent, U8* vhex, U8* vend)
HEXTRACT_COUNT(ix, 2);
}
# elif LONG_DOUBLEKIND == LONG_DOUBLE_IS_X86_80_BIT_BIG_ENDIAN
- /* The last 8 bytes are the mantissa/fraction.
- * (does this format ever happen?) */
+ /* (does this format ever happen?) */
/* There explicitly is *no* implicit bit in this case. */
- for (ix = LONGDBLSIZE - 8; ix < LONGDBLSIZE; ix++) {
+ for (ix = 0; ix < 8; ix++) {
if (vend)
HEXTRACT_OUTPUT(ix);
else