VM: allow ptr setting ptr fields (#12825)
This commit is contained in:
parent
7213969901
commit
23fc93fc2d
1 changed files with 5 additions and 1 deletions
|
|
@ -231,7 +231,11 @@ proc fastAsgnComplex(x: var TFullReg, y: TFullReg) =
|
||||||
proc writeField(n: var PNode, x: TFullReg) =
|
proc writeField(n: var PNode, x: TFullReg) =
|
||||||
case x.kind
|
case x.kind
|
||||||
of rkNone: discard
|
of rkNone: discard
|
||||||
of rkInt: n.intVal = x.intVal
|
of rkInt:
|
||||||
|
if n.kind == nkNilLit:
|
||||||
|
n[].reset
|
||||||
|
n.kind = nkIntLit # ideally, `nkPtrLit`
|
||||||
|
n.intVal = x.intVal
|
||||||
of rkFloat: n.floatVal = x.floatVal
|
of rkFloat: n.floatVal = x.floatVal
|
||||||
of rkNode: n = copyValue(x.node)
|
of rkNode: n = copyValue(x.node)
|
||||||
of rkRegisterAddr: writeField(n, x.regAddr[])
|
of rkRegisterAddr: writeField(n, x.regAddr[])
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue