From 601e26f3b13a5c7a4840a0e31e9b50899c715db6 Mon Sep 17 00:00:00 2001 From: Jan de Mooij Date: Wed, 13 Apr 2011 06:14:27 -0700 Subject: [PATCH] [INFER] Fix SetName stub call in jsop_setprop, bug 649593. r=bhackett --- js/src/jit-test/tests/jaeger/bug649593.js | 10 ++++++++++ js/src/methodjit/Compiler.cpp | 2 +- 2 files changed, 11 insertions(+), 1 deletion(-) create mode 100644 js/src/jit-test/tests/jaeger/bug649593.js diff --git a/js/src/jit-test/tests/jaeger/bug649593.js b/js/src/jit-test/tests/jaeger/bug649593.js new file mode 100644 index 00000000000..9d878d4a287 --- /dev/null +++ b/js/src/jit-test/tests/jaeger/bug649593.js @@ -0,0 +1,10 @@ +function RunSingleBenchmark(data) { + if (data == null) + return { runs: 0, elapsed: 0 }; + data.runs += 10; + return data; +} +var data; +data = RunSingleBenchmark(data); +data = RunSingleBenchmark(data); +assertEq(data.runs, 10); \ No newline at end of file diff --git a/js/src/methodjit/Compiler.cpp b/js/src/methodjit/Compiler.cpp index 39b53ebe5dd..3969066c000 100644 --- a/js/src/methodjit/Compiler.cpp +++ b/js/src/methodjit/Compiler.cpp @@ -4950,7 +4950,7 @@ mjit::Compiler::jsop_setprop(JSAtom *atom, bool usePropCache, bool popGuaranteed Jump notObject = frame.testObject(Assembler::NotEqual, lhs); stubcc.linkExit(notObject, Uses(2)); stubcc.leave(); - masm.move(ImmPtr(atom), Registers::ArgReg1); + stubcc.masm.move(ImmPtr(atom), Registers::ArgReg1); OOL_STUBCALL(STRICT_VARIANT(stubs::SetName)); } RegisterID reg = frame.tempRegForData(lhs);