Commit Graph

  • 80ed24a4f6 Fix bug in basic block generation #571 Ulf Norell 2019-06-03 10:30:25 +02:00
  • 05256eeb60
    Merge pull request #79 from aeternity/negative_literals_in_calldata Hans Svensson 2019-06-03 09:21:22 +02:00
  • 7592390059
    Merge pull request #78 from radrow/builtins Ulf Norell 2019-06-03 09:19:03 +02:00
  • bb4ef61a50 Allow negative literals in calldata and result #570 Hans Svensson 2019-06-03 09:08:53 +02:00
  • bb5a710626 Popularized use of builtin_call function #569 radrow 2019-05-31 12:21:48 +02:00
  • 758fecbb9b
    Merge pull request #75 from aeternity/fix_aci Hans Svensson 2019-05-31 11:33:07 +02:00
  • b1e882b115
    Merge pull request #77 from aeternity/fate-compiler-improvements Ulf Norell 2019-05-28 19:00:57 +02:00
  • bea524635b Add backend argument (aevm | fate) to aeso_compiler options #568 Ulf Norell 2019-05-28 16:40:54 +02:00
  • e44a890292 Fix bug in compilation of Map.lookup Ulf Norell 2019-05-28 16:19:39 +02:00
  • d3a13eafed A record should be _one_ object #566 Hans Svensson 2019-05-28 14:25:37 +02:00
  • 0532c54ca0 Pretty print state variables Ulf Norell 2019-05-28 13:15:51 +02:00
  • 02d0025fd7 Don't use POP Ulf Norell 2019-05-28 11:49:33 +02:00
  • 0409a658b0 Update to new TUPLE instruction Ulf Norell 2019-05-28 11:45:32 +02:00
  • c045e5d653
    Merge pull request #76 from aeternity/map-update-bug Ulf Norell 2019-05-28 14:03:00 +02:00
  • a95913e793 Fix bug when compiling map updates with default values #567 Ulf Norell 2019-05-28 13:47:22 +02:00
  • ec678878fa Update aeso_aci.md Hans Svensson 2019-05-28 13:18:43 +02:00
  • 4b0837dc59 Leave state/event blank if not present Hans Svensson 2019-05-28 13:07:24 +02:00
  • ed96dc1d42
    Merge pull request #74 from aeternity/PT-166282300-add-missing-fate-instructions Tobias Lindahl 2019-05-28 13:05:59 +02:00
  • 60d9581fae Add missing instructions for FATE #565 Tobias Lindahl 2019-05-28 11:19:41 +02:00
  • 0ded431df8 Fix interface and use atoms instead of binaries Hans Svensson 2019-05-28 11:07:01 +02:00
  • e7419b79fd Put state and event types at the top level Hans Svensson 2019-05-28 09:56:38 +02:00
  • c60999edf0 Refactor aeso_aci with dont_unfold, etc. Hans Svensson 2019-05-27 16:04:06 +02:00
  • ea17dae93e Silence compiler warning Hans Svensson 2019-05-27 16:00:44 +02:00
  • 8a16bd4fa1 Add dont_unfold option to type inference function Hans Svensson 2019-05-27 16:00:08 +02:00
  • 1ed40f1cca Pretty print state variables 'a instead of '1 Hans Svensson 2019-05-27 15:59:13 +02:00
  • 5c98317a5a Make 'indexed' keyword optional Hans Svensson 2019-05-27 15:57:46 +02:00
  • 33dbeeefad Consider namespaces when collecting used_types Hans Svensson 2019-05-27 15:56:43 +02:00
  • 098dac65e2
    Merge pull request #73 from aeternity/PT-162805991-fate-state Tobias Lindahl 2019-05-28 09:59:22 +02:00
  • 9cf8733f77 The state is always live to prevent bad optimizations #564 Tobias Lindahl 2019-05-28 09:52:50 +02:00
  • 98f349f67c
    Merge pull request #72 from aeternity/bad-record-compiler-crash Ulf Norell 2019-05-27 12:18:24 +02:00
  • 96547ea2ec Test for record field parse error #563 Ulf Norell 2019-05-27 12:04:38 +02:00
  • ee03442ddf Return parse error instead of crashing the type checker Ulf Norell 2019-05-27 11:58:09 +02:00
  • 0fa09467f6
    Pt 166148534 refactor fate code (#71) Tobias Lindahl 2019-05-23 14:01:41 +02:00
  • fa2de31d79 Rewrite for clarity and Dialyzer #562 Tobias Lindahl 2019-05-23 09:21:08 +02:00
  • 30e3acfe94 Fix BLOCKHASH function for fate Tobias Lindahl 2019-05-22 10:44:11 +02:00
  • 781b058632 Add default init function if not present and keep init function if present Tobias Lindahl 2019-05-22 10:43:37 +02:00
  • 4f4cf0eaa9 Use new adt for fate code Tobias Lindahl 2019-05-21 17:59:05 +02:00
  • 53a5c70994 Add missing call instructions Tobias Lindahl 2019-05-21 17:54:19 +02:00
  • 71a38ee516 Change of module names aeb_fate_code -> aeb_fate_ops Tobias Lindahl 2019-05-21 17:53:32 +02:00
  • dcae96ed21
    Merge pull request #70 from aeternity/PT-166147620-prepare_v3 v3.0.0 Hans Svensson 2019-05-21 10:37:41 +02:00
  • 94689dd0e9 Prepare for v3.0.0 #561 Hans Svensson 2019-05-21 09:55:17 +02:00
  • be7c0e1bd4 Remove escript aesophia Hans Svensson 2019-05-21 09:54:42 +02:00
  • 8eaafa736c
    Merge pull request #69 from aeternity/PT-162578475-stateful Ulf Norell 2019-05-15 15:44:37 +02:00
  • cf5a8aeb5f changelog #560 Ulf Norell 2019-05-14 10:10:53 +02:00
  • 9e555a3121 Fix type definition Ulf Norell 2019-05-14 09:42:27 +02:00
  • d051fa6c89 Remove bad code Ulf Norell 2019-05-14 09:42:17 +02:00
  • d4238c0bdc
    Merge pull request #68 from aeternity/PT-165964555-make-remote-calls-to-contract-objects Tobias Lindahl 2019-05-14 09:41:31 +02:00
  • 389072fb12 Add stateful to __call Ulf Norell 2019-05-14 09:32:52 +02:00
  • 1760593170 Keep the contract type in fate code #559 Tobias Lindahl 2019-05-14 09:29:52 +02:00
  • d8dd6b900f Remove unused test contract Ulf Norell 2019-05-13 17:51:56 +02:00
  • 74d4048d9f Check that init doesn't read or write the state Ulf Norell 2019-05-13 17:51:47 +02:00
  • 6bd2b7c483 Remember source location when computing used names Ulf Norell 2019-05-13 17:50:34 +02:00
  • 5aed8b3ef5 Check stateful annotations Ulf Norell 2019-05-13 13:39:17 +02:00
  • e1a798aef4 Check for repeated argument names to functions Ulf Norell 2019-05-10 14:04:01 +02:00
  • f347eaee90 Check for repeated argument names to functions #558 Ulf Norell 2019-05-10 14:04:01 +02:00
  • 23cc8e1132
    Letrec and letfun (#65) Ulf Norell 2019-05-10 13:27:57 +02:00
  • 691ae72fbb
    Merge pull request #66 from aeternity/PT-165857097-add-call-value-instruction Tobias Lindahl 2019-05-10 13:15:22 +02:00
  • 8830095c7e Add call value instruction in fate #557 Tobias Lindahl 2019-05-10 12:34:06 +02:00
  • f2951d5bd7 Remove let rec from Sophia #556 Ulf Norell 2019-05-10 12:36:08 +02:00
  • a542612c9f Minor code simplification Ulf Norell 2019-05-10 12:29:02 +02:00
  • 1ae5974762 Type check and compile letfuns Ulf Norell 2019-05-10 12:28:45 +02:00
  • 251b876495
    Add value and gas to remote calls (#64) Tobias Lindahl 2019-05-10 09:00:36 +02:00
  • be37606064 Whitespace alignment #555 Tobias Lindahl 2019-05-10 08:48:37 +02:00
  • 258db2604a Add value and gas to remote calls Tobias Lindahl 2019-05-09 08:41:06 +02:00
  • f8ee8f7129
    Merge pull request #63 from aeternity/PT-165440601-165713319-sophia_addons Hans Svensson 2019-05-09 10:34:45 +02:00
  • 192ec207a7 Add Contract.creator and address checking primitives #554 Hans Svensson 2019-05-09 09:54:04 +02:00
  • d16fb82e25 Break out state and event from typedefs and update docs extend-aci-interface Robert Virding 2019-05-08 16:06:58 +02:00
  • 0aa1c89556
    Fate compiler (#62) Ulf Norell 2019-05-07 15:48:47 +02:00
  • a2b762c066 Jump some hoops to please Dialyzer #553 Ulf Norell 2019-05-07 13:58:19 +02:00
  • 519850e1fd Get rid of catchall todos Ulf Norell 2019-05-07 13:42:13 +02:00
  • 63332c5cd1 Update aebytecode commit Ulf Norell 2019-05-07 09:08:33 +02:00
  • bd33990786 We now have block hash at height in FATE Ulf Norell 2019-05-07 11:44:21 +02:00
  • 8233c780e4 Tag for literals in fcode to make code cleaner Ulf Norell 2019-05-07 10:05:16 +02:00
  • 182f30133b Clearer distinction between applied and unapplied top-level things (def/builtin) in fcode Ulf Norell 2019-05-07 09:39:50 +02:00
  • 2ef94b03ec Compile remote calls Ulf Norell 2019-05-06 17:01:20 +02:00
  • 49b00715c5 Compile events Ulf Norell 2019-05-06 15:56:36 +02:00
  • b43e8d9f68 Compile statements Ulf Norell 2019-05-06 15:56:19 +02:00
  • fac136bded Compiler side of state updates Ulf Norell 2019-05-06 14:58:48 +02:00
  • db48be1805 Fix variable binding bug in fcode compiler Ulf Norell 2019-05-06 14:58:25 +02:00
  • 16f00701d7 Missing case in fcode pretty printer Ulf Norell 2019-05-06 14:19:41 +02:00
  • 110466b08c Handle unapplied builtins and top-level functions Ulf Norell 2019-05-06 14:17:41 +02:00
  • 4c872c4690 Optimize single variable closure envs Ulf Norell 2019-05-06 13:43:18 +02:00
  • 26b7c5bf12 Compile lambdas and higher-order functions Ulf Norell 2019-05-06 13:21:05 +02:00
  • ff0f2b57d2 Change map_get/set to operators in fcode Ulf Norell 2019-05-06 09:03:25 +02:00
  • c06e032199 Fix name resolution bug Ulf Norell 2019-05-03 17:01:09 +02:00
  • 4371bf7db4 Improve inlining of PUSH Ulf Norell 2019-05-03 16:54:33 +02:00
  • 2291f8d4c1 Compile bytes(N) Ulf Norell 2019-05-03 16:54:03 +02:00
  • 1f40d2a321 Compile builtins Ulf Norell 2019-05-03 12:28:57 +02:00
  • 6f17477c72 Distinguish local vars and top-level names already in fcode Ulf Norell 2019-05-03 10:16:55 +02:00
  • 1d39464190 Add compile-time evaluation for more operators Ulf Norell 2019-05-03 09:06:44 +02:00
  • b5330882ba Fixed left-over reference to STR_EQ Ulf Norell 2019-05-03 08:56:49 +02:00
  • ef120a7194 Simplify JUMPIF on true/false Ulf Norell 2019-05-03 08:49:17 +02:00
  • 4a8fb5ba05 Compile maps Ulf Norell 2019-04-30 13:27:55 +02:00
  • cd454fb538 Compile all the operators Ulf Norell 2019-04-30 11:43:27 +02:00
  • 8559ab0628 fix minor bugs Ulf Norell 2019-04-30 09:51:46 +02:00
  • 0307a82433 Case on constructor optimization Ulf Norell 2019-04-29 14:21:37 +02:00
  • 389a5c4e62 some constant propagation optimizations Ulf Norell 2019-04-29 12:40:50 +02:00
  • 4c2288274d no-op fcode optimization pass Ulf Norell 2019-04-29 12:40:19 +02:00
  • 081a4d28b6 use STORE ?a instead of PUSH during optimizations Ulf Norell 2019-04-29 12:03:33 +02:00
  • 690d55eefe pretty printing for function calls Ulf Norell 2019-04-29 12:02:23 +02:00