diff --git a/js/src/nanojit/LIR.h b/js/src/nanojit/LIR.h index c2c3712e888c..dbe4d56aa0f6 100644 --- a/js/src/nanojit/LIR.h +++ b/js/src/nanojit/LIR.h @@ -145,8 +145,8 @@ namespace nanojit LIR_ldf = LIR_ldd, LIR_ld32f = LIR_lds2d, - // LIR_stb - LIR_sts = LIR_stw, + LIR_stb = LIR_stl2b, + LIR_sts = LIR_stl2w, LIR_sti = LIR_stl, #ifdef NANOJIT_64BIT LIR_stqi = LIR_stq, diff --git a/js/src/nanojit/LIRopcode.tbl b/js/src/nanojit/LIRopcode.tbl index 6528e7acf9f8..0629db01c309 100644 --- a/js/src/nanojit/LIRopcode.tbl +++ b/js/src/nanojit/LIRopcode.tbl @@ -152,8 +152,8 @@ OP_64(ldq, 22, Ld, I64, -1) // load quad OP___(ldd, 23, Ld, F64, -1) // load double OP___(lds2d, 24, Ld, F64, -1) // load single and extend to a double -OP___(stb, 25, Sti, Void, 0) // store byte -OP___(stw, 26, Sti, Void, 0) // store word +OP___(stl2b, 25, Sti, Void, 0) // store long truncated to byte +OP___(stl2w, 26, Sti, Void, 0) // store long truncated to word OP___(stl, 27, Sti, Void, 0) // store long OP_64(stq, 28, Sti, Void, 0) // store quad OP___(std, 29, Sti, Void, 0) // store double