You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This is incorrect, as some bytes can be a part of other instructions and not a separate opcode.
E.g. this test fails (notice, that 0x62 == byte(opcode.JMP)):
There are several ways to address this issue.
I propose implementing some richer intermediate representation (list of structs, not just a slice of bytes). This will also make it easier to implement byte-code level optimizations in future.
The text was updated successfully, but these errors were encountered:
Currently JMP* targets are translated from relative to absolute numbers going byte-by-byte with script.
https://github.com/nspcc-dev/neo-go/blob/master/pkg/compiler/codegen.go#L1029
This is incorrect, as some bytes can be a part of other instructions and not a separate opcode.
E.g. this test fails (notice, that
0x62 == byte(opcode.JMP)
):There are several ways to address this issue.
I propose implementing some richer intermediate representation (list of structs, not just a slice of bytes). This will also make it easier to implement byte-code level optimizations in future.
The text was updated successfully, but these errors were encountered: