261 Commits

Author SHA1 Message Date
Tobias Lindahl
89f5ebc84b
Add missing basic instructions (#45)
* Add missing basic instructions

* MAP_SIZE
* MAP_TO_LIST
* STR_LENGTH

* Change name of erlang function to not shadow builtin guard
2019-05-28 11:15:04 +02:00
Erik Stenman
e98298cce4
Add accepted types to operator declarations. Check opcode numbering. (#43)
* Add accepted types to operator declarations. 
* Check opcode numbering.
2019-05-24 13:21:49 +02:00
Erik Stenman
0d1899b32a
Pt 165352420 dissallow stack n (#42)
* Get rid of redundant arity field from op defs. Reorder and renumber ops. Fix bb_end for abort and exit.

* FATE does not accept arbitrary stack positions, only the accumulator aka stack 0.
2019-05-23 13:40:49 +02:00
Erik Stenman
3e0e289f2f
Get rid of redundant arity field from op defs. Reorder and renumber ops. Fix bb_end for abort and exit. (#41) 2019-05-23 13:37:32 +02:00
Tobias Lindahl
11a8997ac7
Pt 166148534 refactor fate code (#40)
* Change names of generated aeb_fate_code -> aeb_fate_ops

* Break out fate code to separate adt module

* Fix documentation of the SPEND op

* More compact implementation of serialization/deserialization

* Changed argument specification order
2019-05-23 08:15:18 +02:00
Tobias Lindahl
2f4e1888c2
Merge pull request #38 from aeternity/PT-165857097-add-gas-and-value-to-calls
Pt 165857097 add gas and value to calls
2019-05-09 14:18:15 +02:00
Tobias Lindahl
a9389e4e69 Add the CALL_VALUE instruction 2019-05-09 10:57:18 +02:00
Tobias Lindahl
2d3cede235 Add value to remote calls and the new ops CALL_GR and CALL_GTR 2019-05-09 10:57:18 +02:00
Hans Svensson
08a09b065b
Merge pull request #39 from aeternity/PT-165440601-165713319-sophia_addons
Add CREATOR opcode and address check primops
2019-05-09 09:51:40 +02:00
Hans Svensson
5fd076f043 Add CREATOR opcode and address check primops 2019-05-09 09:35:48 +02:00
Ulf Norell
2555868990
Merge pull request #37 from aeternity/fate-compiler
Fate compiler
2019-05-07 13:04:53 +02:00
Tobias Lindahl
7eafbc22ae
Merge pull request #36 from aeternity/PT-165760129-fix-object-parsing
Fix object parsing
2019-05-07 12:40:20 +02:00
Tobias Lindahl
3ed0fcbe05 Add test for parsing immediate objects 2019-05-07 11:28:54 +02:00
Tobias Lindahl
b6019eb81b Fix object parsing 2019-05-07 11:16:05 +02:00
Ulf Norell
6eab9a32c9 Bump aeserialization dependency 2019-05-07 10:14:23 +02:00
Ulf Norell
91fc56c322 Change local calls to allow dynamic function name 2019-05-07 09:04:24 +02:00
Ulf Norell
1887486d36 Replace STR_EQ by APPEND
STR_EQ is not needed, the regular EQ instruction can handle strings as well. Having
an instruction for list append is quite handy though (would need two passes to do it
tail recursive in FATE assembly)
2019-05-07 09:04:24 +02:00
Ulf Norell
bf6741eac4 Format of li should be {immediate, [integer()]} 2019-05-07 08:38:23 +02:00
Ulf Norell
491489ca7d Change ~w to ~p 2019-05-07 08:38:23 +02:00
Thomas Arts
91c4ab5bea
Merge pull request #35 from aeternity/PT-property-based-tests
Pt property based tests
2019-05-06 14:51:04 +02:00
Thomas Arts
163e805f55 Enable running properties as Eunit tests
Update model to address serialization

Update eunit test wrapper

Update tests

Add tests for serialize_type
2019-05-02 13:08:43 +02:00
Thomas Arts
d69375e72b Fix types 2019-05-02 13:08:43 +02:00
Tobias Lindahl
2b3603e86f
Merge pull request #33 from aeternity/PT-165760129-FATE-blockhash
Correct arity for BLOCKHASH
2019-05-02 12:28:58 +02:00
Tobias Lindahl
31d188ce81 Update test of BLOCKHASH to correct arity 2019-05-02 10:52:07 +02:00
Tobias Lindahl
dfca41c98d Correct arity for BLOCKHASH 2019-05-02 10:33:26 +02:00
Hans Svensson
1526ad3bf0
Merge pull request #32 from aeternity/remove_bytes_from_aevm
Revert bytes(N) from ABI encode it in word/tuple
2019-04-23 17:43:41 +02:00
Hans Svensson
4e325ff203 Revert bytes(N) from ABI encode it in word/tuple 2019-04-23 16:21:11 +02:00
Hans Svensson
e8253b0970
Merge pull request #31 from aeternity/PT-164629541-generic_hash_and_signature
Add bytes(int) as type + ecverify_secp256k1
2019-04-23 10:34:23 +02:00
Hans Svensson
230e2187ce Add bytes(int) as type + ecverify_secp256k1 2019-04-23 09:30:45 +02:00
Erik Stenman
a6a2686d53
Fixing edoc build the easy way. Real documentation in Readme.md. (#30) 2019-04-15 12:18:16 +02:00
Erik Stenman
56cf62b487
Add setelement instruction. (#29) 2019-04-12 15:47:16 +02:00
Tobias Lindahl
15628c9a05
Merge pull request #28 from aeternity/PT-165079561-fate-chain-api
Differ between BALANCE for the current contract and BALANCE_OTHER for…
2019-04-12 11:43:13 +02:00
Tobias Lindahl
431b311ae5 Differ between BALANCE for the current contract and BALANCE_OTHER for a remote address 2019-04-12 11:04:56 +02:00
Thomas Arts
28f6c42647
Merge pull request #27 from aeternity/PT-165246396-prepare-remove-dependency
Pt 165246396 prepare remove dependency
2019-04-11 08:56:47 +02:00
Thomas Arts
734c8e8e40 ignore generated aefate file 2019-04-10 15:44:53 +02:00
Thomas Arts
436ba457e9 Robuster way to create binaries from strings 2019-04-10 15:43:50 +02:00
Thomas Arts
0261b76314 tuple_to_list is now replaced by a constructor and the "convenience" functions will be moved to apps/aefate tests were they are needed 2019-04-10 15:43:25 +02:00
Thomas Arts
e1e2236a26 If we have destructors for maps, lists, etc, we need one for tuples as well 2019-04-10 15:42:33 +02:00
Thomas Arts
04d64dfe9b Extend QuickCheck model to use the make_BLA functions to create the fate data 2019-04-10 15:41:59 +02:00
Thomas Arts
afcc6fd31a
Merge pull request #26 from aeternity/PT-165180296-fix-fate-scanner
Pt 165180296 fix fate scanner
2019-04-10 10:49:33 +02:00
Thomas Arts
6466ddb866 Bump version 2019-04-09 14:02:21 +02:00
Thomas Arts
75f3eeffa7 Add quickcheck properties 2019-04-09 10:32:08 +02:00
Thomas Arts
a670d1ca6c Remove the quotes from scanned string 2019-04-09 09:05:26 +02:00
Thomas Arts
96c0fab3ab Remove fate_type_type is not a fate_type 2019-04-09 08:29:55 +02:00
Thomas Arts
90659342c0 Quote the string 2019-04-08 16:29:55 +02:00
Thomas Arts
f88fe008bf Add fate_bits as type 2019-04-08 16:29:45 +02:00
Thomas Arts
f5f007e74d Since the binaries are likely to be strings, unicode conversion makes more sense. 2019-04-08 16:29:31 +02:00
Thomas Arts
0c01215b6a fix arities formatting 2019-04-08 14:49:17 +02:00
Thomas Arts
fa64bbb56c Don't forget z 2019-04-08 13:41:23 +02:00
Thomas Arts
fe7e3a638a Fix scan error 2019-04-08 12:29:18 +02:00