Bug 1288944 - Baldr: fix TLS propagation in i64 case (r=jolesen)

MozReview-Commit-ID: GC8K6R5elHp

--HG--
extra : rebase_source : c6c6310be1506aeea321de9623105904fe6ff188
This commit is contained in:
Luke Wagner 2016-08-02 10:14:05 -05:00
Родитель 7bae287798
Коммит 4d1575de95
2 изменённых файлов: 6 добавлений и 1 удалений

Просмотреть файл

@ -4144,6 +4144,11 @@ LIRGenerator::visitAsmJSReturn(MAsmJSReturn* ins)
if (rval->type() == MIRType::Int64) {
LAsmJSReturnI64* lir = new(alloc()) LAsmJSReturnI64(useInt64Fixed(rval, ReturnReg64));
// Preserve the TLS pointer we were passed in `WasmTlsReg`.
MDefinition* tlsPtr = ins->getOperand(1);
lir->setOperand(INT64_PIECES, useFixed(tlsPtr, WasmTlsReg));
add(lir);
return;
}

Просмотреть файл

@ -8234,7 +8234,7 @@ class LAsmJSReturn : public LInstructionHelper<0, 2, 0>
LIR_HEADER(AsmJSReturn);
};
class LAsmJSReturnI64 : public LInstructionHelper<0, INT64_PIECES, 0>
class LAsmJSReturnI64 : public LInstructionHelper<0, INT64_PIECES + 1, 0>
{
public:
LIR_HEADER(AsmJSReturnI64)