mirror of
https://github.com/LuaJIT/LuaJIT.git
synced 2025-02-08 07:34:07 +00:00
x64: Fix lightuserdata comparisons.
This commit is contained in:
parent
7b0157aa99
commit
f1849fa928
1152
src/buildvm_x64.h
1152
src/buildvm_x64.h
File diff suppressed because it is too large
Load Diff
1140
src/buildvm_x64win.h
1140
src/buildvm_x64win.h
File diff suppressed because it is too large
Load Diff
@ -4022,6 +4022,10 @@ static void build_ins(BuildCtx *ctx, BCOp op, int defop, int cmov, int sse)
|
|||||||
| je <1 // Same GCobjs or pvalues?
|
| je <1 // Same GCobjs or pvalues?
|
||||||
| cmp RB, LJ_TISTABUD
|
| cmp RB, LJ_TISTABUD
|
||||||
| ja <2 // Different objects and not table/ud?
|
| ja <2 // Different objects and not table/ud?
|
||||||
|
|.if X64
|
||||||
|
| cmp RB, LJ_TUDATA // And not 64 bit lightuserdata.
|
||||||
|
| jb <2
|
||||||
|
|.endif
|
||||||
|
|
|
|
||||||
| // Different tables or userdatas. Need to check __eq metamethod.
|
| // Different tables or userdatas. Need to check __eq metamethod.
|
||||||
| // Field metatable must be at same offset for GCtab and GCudata!
|
| // Field metatable must be at same offset for GCtab and GCudata!
|
||||||
|
Loading…
Reference in New Issue
Block a user