Skip to content

Commit b1872c1

Browse files
authored
fix:(encoder) incorrectly pass pv due to wrongly use BTC instead of BTS (#706)
1 parent 8bfed73 commit b1872c1

File tree

1 file changed

+2
-1
lines changed

1 file changed

+2
-1
lines changed

internal/encoder/x86/assembler_regabi_amd64.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1050,8 +1050,9 @@ func (self *Assembler) _asm_OP_recurse(p *ir.Instr) {
10501050
self.Emit("MOVQ", _ST, _DI) // MOVQ ST, DI
10511051
self.Emit("MOVQ", _ARG_fv, _SI) // MOVQ $fv, SI
10521052
if pv {
1053-
self.Emit("BTCQ", jit.Imm(alg.BitPointerValue), _SI) // BTCQ $1, SI
1053+
self.Emit("BTSQ", jit.Imm(alg.BitPointerValue), _SI) // BTSQ $1, SI
10541054
}
1055+
10551056
self.call_encoder(_F_encodeTypedPointer) // CALL encodeTypedPointer
10561057
self.Emit("TESTQ", _ET, _ET) // TESTQ ET, ET
10571058
self.Sjmp("JNZ", _LB_error) // JNZ _error

0 commit comments

Comments
 (0)