Evgenii Stratonikov
|
b6629fb6bd
|
compiler: refactor argument handling for builtins
It is more convenient to have all unusual logic in one place.
|
2020-01-29 12:28:38 +03:00 |
|
Evgenii Stratonikov
|
d2326a8b96
|
compiler: support panic in source
In situations where VM's FAULT state needs to be reached,
panic function can be used. It compiles to THROW instruction.
|
2020-01-29 12:28:38 +03:00 |
|
Evgenii Stratonikov
|
e0f47decc7
|
compiler: replace ROLL(2) with equivalent ROT
|
2020-01-29 09:56:16 +03:00 |
|
Evgenii Stratonikov
|
28571bd3dc
|
compiler: implement switch statement support
|
2020-01-29 09:56:16 +03:00 |
|
Evgenii Stratonikov
|
77f9a2ee26
|
compiler: convert AppCall parameter from string properly
|
2020-01-27 15:34:03 +03:00 |
|
Evgenii Stratonikov
|
d65d6ab08d
|
compiler: allow to convert string constants to []byte
Also load constant directly into stack, not by name.
|
2020-01-27 15:29:52 +03:00 |
|
Evgenii Stratonikov
|
097d35b9d5
|
compiler: fix a bug with FromAddress handling
Conversion of string to address with FromAddress is performed
at compile time so there is no need to push parameters on stack.
|
2020-01-27 13:14:40 +03:00 |
|
Evgenii Stratonikov
|
330db36168
|
compiler: implement engine.AppCall interop
|
2020-01-27 13:14:36 +03:00 |
|
Evgenii Stratonikov
|
4fd766fe09
|
compiler: allow usage of string literals in index expressions
|
2020-01-23 17:28:35 +03:00 |
|
Evgenii Stratonikov
|
058958729d
|
compiler: support map literals
|
2020-01-23 17:06:15 +03:00 |
|
Evgenii Stratonikov
|
def73db8e9
|
compiler: support variables in slice literals
|
2020-01-23 15:51:16 +03:00 |
|
Roman Khimov
|
67fe99b0ba
|
Merge pull request #618 from nspcc-dev/feature/for
compiler: support for loops with no init/post condition
|
2020-01-23 13:19:55 +03:00 |
|
Evgenii Stratonikov
|
328267ca6f
|
compiler: support for loops with no init/post condition
Make it possible to use `for` loop with a single condition.
|
2020-01-23 11:48:43 +03:00 |
|
Evgenii Stratonikov
|
bd37359393
|
compiler: implement ECDSA signature verification
Add VerifySignature interop for signature verification.
It is converted to VERIFY opcode.
|
2020-01-23 10:56:15 +03:00 |
|
Roman Khimov
|
9145855d2c
|
Merge pull request #579 from nspcc-dev/refactor-crypto
This moves some functionality into micro-packages, improves testing,
unexports some code and fixes bugs along the way.
|
2019-12-25 18:12:50 +03:00 |
|
Roman Khimov
|
b246653f62
|
address: rename functions as per #579 comments
Make them more clear to understand.
|
2019-12-25 17:34:18 +03:00 |
|
Roman Khimov
|
e685e9bf9a
|
address: move into its own package
Doesn't really belong to the crypto.
|
2019-12-25 15:22:02 +03:00 |
|
Evgenii Stratonikov
|
f4571ba8cf
|
compiler: implement multiple return support
|
2019-12-24 16:46:43 +03:00 |
|
Roman Khimov
|
79323cc10b
|
Merge pull request #567 from nspcc-dev/feature/codegen_add_mod
compiler: Add Mod token, closes #563
|
2019-12-19 15:32:18 +03:00 |
|
Vsevolod Brekelov
|
3c7ac7eb95
|
compiler: add mod
|
2019-12-19 15:23:14 +03:00 |
|
Evgenii Stratonikov
|
891a878af1
|
compiler: implement assignment to a variable index
Fixes #564.
|
2019-12-19 13:14:17 +03:00 |
|
Evgenii Stratonikov
|
57efad912c
|
util: add LE suffix to Uint160 methods
|
2019-12-06 12:16:55 +03:00 |
|
Roman Khimov
|
852e6a335b
|
compiler: move it up from vm
It really deserves it, I think. Especially given that it doesn't have any
direct usage of `vm` package now.
|
2019-12-03 18:23:46 +03:00 |
|