Bug 1393723 - Fix usage of branchTestString in CacheIRCompiler::emitArrayJoinResult. r=jandem
authorDragan Mladjenovic <dragan.mladjenovic@rt-rk.com>
Tue, 29 Aug 2017 00:52:00 -0400
changeset 377593 2a7f4271c027
parent 377592 e37c3786444a
child 377594 68604930b47b
push id32411
push userkwierso@gmail.com
push dateTue, 29 Aug 2017 23:14:35 +0000
treeherdermozilla-central@db7f19e26e57 [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersjandem
bugs1393723
milestone57.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 1393723 - Fix usage of branchTestString in CacheIRCompiler::emitArrayJoinResult. r=jandem On mips, NonZero is not alias for NonEqual making it illegal condition argument for branchTestString.
js/src/jit/CacheIRCompiler.cpp
--- a/js/src/jit/CacheIRCompiler.cpp
+++ b/js/src/jit/CacheIRCompiler.cpp
@@ -2101,17 +2101,17 @@ CacheIRCompiler::emitArrayJoinResult()
     masm.branch32(Assembler::NotEqual, lengthAddr, Imm32(1), failure->label());
 
     // But only if initializedLength is also 1.
     Address initLength(scratch, ObjectElements::offsetOfInitializedLength());
     masm.branch32(Assembler::NotEqual, initLength, Imm32(1), failure->label());
 
     // And only if elem0 is a string.
     Address elementAddr(scratch, 0);
-    masm.branchTestString(Assembler::NonZero, elementAddr, failure->label());
+    masm.branchTestString(Assembler::NotEqual, elementAddr, failure->label());
 
     // Store the value.
     masm.loadValue(elementAddr, output.valueReg());
 
     masm.bind(&finished);
 
     return true;
 }