Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 484502 | Differences between
and this patch

Collapse All | Expand All

(-)a/Source/JavaScriptCore/llint/LowLevelInterpreter.cpp (+11 lines)
Lines 117-122 static double Ints2Double(uint32_t lo, uint32_t hi) Link Here
117
    u.ival64 = (static_cast<uint64_t>(hi) << 32) | lo;
117
    u.ival64 = (static_cast<uint64_t>(hi) << 32) | lo;
118
    return u.dval;
118
    return u.dval;
119
}
119
}
120
121
static void Double2Ints(double val, uint32_t& lo, uint32_t& hi)
122
{
123
    union {
124
        double dval;
125
        uint64_t ival64;
126
    } u;
127
    u.dval = val;
128
    hi = static_cast<uint32_t>(u.ival64 >> 32);
129
    lo = static_cast<uint32_t>(u.ival64);
130
}
120
#endif // USE(JSVALUE32_64)
131
#endif // USE(JSVALUE32_64)
121
132
122
} // namespace LLint
133
} // namespace LLint
(-)a/Source/JavaScriptCore/offlineasm/cloop.rb (-1 / +1 lines)
Lines 1025-1031 class Instruction Link Here
1025
        # 32-bit instruction: f2dii dblOp int32LoOp int32HiOp (based on ARMv7)
1025
        # 32-bit instruction: f2dii dblOp int32LoOp int32HiOp (based on ARMv7)
1026
        # Encode a 64-bit double into 2 32-bit ints (low and high).
1026
        # Encode a 64-bit double into 2 32-bit ints (low and high).
1027
        when "fd2ii"
1027
        when "fd2ii"
1028
            $asm.putc "Double2Ints(#{operands[0].clValue(:double)}, #{operands[1].clValue}, #{operands[2].clValue});"
1028
            $asm.putc "Double2Ints(#{operands[0].clValue(:double)}, #{operands[1].clValue(:uint32)}, #{operands[2].clValue(:uint32)});"
1029
1029
1030
        # 64-bit instruction: fq2d int64Op dblOp (based on X64)
1030
        # 64-bit instruction: fq2d int64Op dblOp (based on X64)
1031
        # Copy a bit-encoded double in a 64-bit int register to a double register.
1031
        # Copy a bit-encoded double in a 64-bit int register to a double register.

Return to bug 484502