mirror of
https://gitlab.winehq.org/wine/wine-gecko.git
synced 2024-09-13 09:24:08 -07:00
Bug 1046125 - IonMonkey: (ARM) Correct handling of 16 DP float registers for SetElementCache code generation. r=mjrosenb
This commit is contained in:
parent
22bcb4ede2
commit
5c733f9379
@ -3745,10 +3745,11 @@ GenerateSetTypedArrayElement(JSContext *cx, MacroAssembler &masm, IonCache::Stub
|
||||
BaseIndex target(elements, index, ScaleFromElemWidth(width));
|
||||
|
||||
if (arrayType == Scalar::Float32) {
|
||||
JS_ASSERT(tempFloat32 != InvalidFloatReg);
|
||||
if (!masm.convertConstantOrRegisterToFloat(cx, value, tempFloat32, &failures))
|
||||
JS_ASSERT_IF(hasUnaliasedDouble(), tempFloat32 != InvalidFloatReg);
|
||||
FloatRegister tempFloat = hasUnaliasedDouble() ? tempFloat32 : tempDouble;
|
||||
if (!masm.convertConstantOrRegisterToFloat(cx, value, tempFloat, &failures))
|
||||
return false;
|
||||
masm.storeToTypedFloatArray(arrayType, tempFloat32, target);
|
||||
masm.storeToTypedFloatArray(arrayType, tempFloat, target);
|
||||
} else if (arrayType == Scalar::Float64) {
|
||||
if (!masm.convertConstantOrRegisterToDouble(cx, value, tempDouble, &failures))
|
||||
return false;
|
||||
|
Loading…
Reference in New Issue
Block a user