Commit graph

11 commits

Author SHA1 Message Date
Chronos Ouroboros
3c8aa9f641 Changed binary int ops to use a temporary register, fixed some opcodes.
For some reason, binary ops might reuse one of the input registers as the output register.
This is a problem for very obvious reasons.
2019-04-15 14:31:39 +02:00
Jonathan Russell
62ece01c0a - made CMP_CHECK checking compile time 2019-04-15 14:31:37 +02:00
Jonathan Russell
f897f2bfd3 - added exact floating point comparison opcodes 2019-04-15 14:31:36 +02:00
Jonathan Russell
5846357268 - implemented all integer comparison operators 2019-04-15 14:31:34 +02:00
Jonathan Russell
166ce87a86 - adds OP_EQ_R, the first instruction using jumps 2019-04-15 14:31:33 +02:00
Magnus Norddahl
5c3ef8ac15 - add misc float opcodes 2019-04-15 14:31:31 +02:00
Jonathan Russell
b242ffdbbe - added most vector maths opcodes 2019-04-15 14:31:29 +02:00
Chronos Ouroboros
73892f4a6e Fix floats and implement some more opcodes. 2019-04-15 14:31:27 +02:00
Magnus Norddahl
113714990e - copy initial register values from the VM frame 2019-04-15 14:31:26 +02:00
Magnus Norddahl
10a6ab4d56 - implement most of the integer math opcodes 2019-04-15 14:31:24 +02:00
Magnus Norddahl
d651c02b17 - embed and use asmjit to JIT ZScript VM functions 2019-04-15 14:31:22 +02:00