Bug 1519401 - ARM64: Fix CodeGenerator::LBitAndAndBranch to use the condition flag of the MIR. r=sstangl
authorNicolas B. Pierron <nicolas.b.pierron@nbp.name>
Tue, 15 Jan 2019 15:12:30 +0100
changeset 513992 6362baa5cb54a12724396665790d982c84516c90
parent 513991 1d0d0fed3608b845bde92823eb157cd8ce611d21
child 513993 325d06d3ba7341035f01ae14bc882643d0235083
push id1953
push userffxbld-merge
push dateMon, 11 Mar 2019 12:10:20 +0000
treeherdermozilla-release@9c35dcbaa899 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewerssstangl
bugs1519401
milestone66.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1519401 - ARM64: Fix CodeGenerator::LBitAndAndBranch to use the condition flag of the MIR. r=sstangl
js/src/jit/arm64/CodeGenerator-arm64.cpp
--- a/js/src/jit/arm64/CodeGenerator-arm64.cpp
+++ b/js/src/jit/arm64/CodeGenerator-arm64.cpp
@@ -1451,17 +1451,17 @@ void CodeGenerator::visitCompareBitwiseA
 }
 
 void CodeGenerator::visitBitAndAndBranch(LBitAndAndBranch* baab) {
   if (baab->right()->isConstant()) {
     masm.Tst(toWRegister(baab->left()), Operand(ToInt32(baab->right())));
   } else {
     masm.Tst(toWRegister(baab->left()), toWRegister(baab->right()));
   }
-  emitBranch(Assembler::NonZero, baab->ifTrue(), baab->ifFalse());
+  emitBranch(baab->cond(), baab->ifTrue(), baab->ifFalse());
 }
 
 void CodeGenerator::visitWasmUint32ToDouble(LWasmUint32ToDouble* lir) {
   masm.convertUInt32ToDouble(ToRegister(lir->input()),
                              ToFloatRegister(lir->output()));
 }
 
 void CodeGenerator::visitWasmUint32ToFloat32(LWasmUint32ToFloat32* lir) {