Commit Graph

  • 47f2e0950a Make 'instanceof' behave like TS if the lhs is nullable dcodeIO 2018-06-09 02:01:45 +02:00
  • 7478c8a0d3 Initial implementation of 'instanceof' dcodeIO 2018-06-07 17:04:41 +02:00
  • cea69a6de1 Unify operator overloading and reuse arguments where possible; Update Binaryen; Update dist files dcodeIO 2018-06-05 23:09:08 +02:00
  • 567a5fb064 Implement unary operator overloads (#124) Max Graey 2018-06-04 18:23:09 +03:00
  • 0054eae491 Handle numeric separators in integer literals while tokenizing dcodeIO 2018-06-02 13:39:24 +02:00
  • f69bccfe09 Add @operator.binary, @operator.prefix, @operator.postfix decorators for #124 dcodeIO 2018-06-01 14:17:27 +02:00
  • 9d25f78fc1 Implement 'this' context parsing and serialization; Other minor improvements dcodeIO 2018-05-30 16:22:56 +02:00
  • c9ed03028d Add CLI definitions; CLI restructure dcodeIO 2018-05-28 18:55:51 +02:00
  • d0244a9b0f Add an error for missing initializers on default params, fixes #121; Fix detection of terminated switch cases and improve tests, fixes #122 dcodeIO 2018-05-27 12:24:16 +02:00
  • 113925fa7e Add a mechanism to hook into the compilation process with custom transforms, see #20 dcodeIO 2018-05-26 13:13:39 +02:00
  • 7ad13f9d65 Add a 'call_indirect' builtin to emit arbitrary calls (might trap at runtime); Optimize 'for' loop compilation a bit dcodeIO 2018-05-25 15:59:17 +02:00
  • 51ede113dd Fix possible out of bounds read in string UTF8 conversion dcodeIO 2018-05-23 15:37:09 +02:00
  • 829af2285c Fix continue labels in 'for' loops skipping the incrementor dcodeIO 2018-05-23 11:32:12 +02:00
  • c897b8405b Update dist files dcodeIO 2018-05-22 12:10:56 +02:00
  • 558ed78cc9 Add a more helpful error message when you haven't defined an allocator (#108) Alan Pierce 2018-05-22 03:09:05 -07:00
  • edf4aaa966 Allow trailing commas in import and export statements (#114) Alan Pierce 2018-05-22 03:08:01 -07:00
  • 33b10e347b Properly resolve top level enums to i32s, see #116 dcodeIO 2018-05-22 12:06:03 +02:00
  • ea0eb7f1a5 Add a simple UTF8 converter, i.e. for calling C++ APIs; Fix disabling 'abort' entirely dcodeIO 2018-05-21 23:14:47 +02:00
  • 73417a9a06 Move 'abort' out of builtins and make it overridable dcodeIO 2018-05-21 18:48:29 +02:00
  • 940392f463 Fix handling of readonly/type as identifiers, see #115 dcodeIO 2018-05-21 10:52:55 +02:00
  • e049e72171 Fix a few issues with TSD generation; Update Binaryen dcodeIO 2018-05-21 10:31:00 +02:00
  • 98a0aa863d Initial loader that unifies utils and demangle dcodeIO 2018-05-19 13:38:47 +02:00
  • d678807286 Initial demangler implementation, i.e. for use with TypeScript definitions dcodeIO 2018-05-17 11:59:35 +02:00
  • 25cf51833d Improve rust build of the n-body example (#112) Max Graey 2018-05-14 18:49:39 +03:00
  • 41289acf70 Add a fiddle for the mandelbrot example, fixes #109 dcodeIO 2018-05-14 17:15:06 +02:00
  • 6c0a5c47d9 Update Binaryen and take care of WebAssembly/binaryen#1547 dcodeIO 2018-05-14 16:55:55 +02:00
  • 5ab81a00a1 Allow keywords in named import/export syntax (#107) Alan Pierce 2018-05-13 04:26:12 -07:00
  • e415377cda Avoid trampolines where optional arguments are constant literals, see #102; Fix temporary local flags not being cleared; Fix inlined temporary locals not being free'd; Fix inlined flows not breaking after returns; Allow changetype of u32s, i.e. function pointers dcodeIO 2018-05-11 16:31:56 +02:00
  • ef9b43740d Eliminate leftover temporary function types using latest Binaryen dcodeIO 2018-05-09 16:33:42 +02:00
  • dae9880428 Fix and also unify ugc example, see #101 dcodeIO 2018-05-09 15:22:38 +02:00
  • 1f3bb61fae Fix issues with more than 64 locals, see #99 dcodeIO 2018-05-08 22:16:12 +02:00
  • 2a7f40953a Update README dcodeIO 2018-05-08 14:37:51 +02:00
  • 27f0621ee9 Add support for the 'mutable-global' proposal behind a feature flag dcodeIO 2018-05-08 09:27:56 +02:00
  • 1bf0ca6525 Add a mechanism to enable additional (experimental) features and start with sign extension operations; Hashing experimentation dcodeIO 2018-05-08 00:36:19 +02:00
  • 00fee73022 Implement optional trailing commas (#97) Alan Pierce 2018-05-06 17:16:26 -07:00
  • 25a1f6230a Suppress some unnecessary blocks and nops; Fix compilation of always 'break'ing 'do's dcodeIO 2018-05-06 05:46:35 +02:00
  • 2f8f477ab0 Update dist files; Unify some examples dcodeIO 2018-05-06 01:32:58 +02:00
  • 50f6c1c460 Update internal ABI to zero/sign-extend where necessary only (#87) Daniel Wirtz 2018-05-06 00:00:54 +02:00
  • ce2bf00d62 Fix crash when assigning to bool class fields (#95) Alan Pierce 2018-05-05 14:54:39 -07:00
  • 8997561670 Update dependencies (#93) Max Graey 2018-05-03 19:25:32 +03:00
  • 061976ee0c Add rust n-body version for comparison (#88) Max Graey 2018-05-03 03:12:03 +03:00
  • 99bde3a5fa Use insertion sort for references in Array#sort (#90) Max Graey 2018-05-02 20:33:17 +03:00
  • 8b5d1d7f74 Minor refactoring; Fix n-body TS build dcodeIO 2018-04-28 18:07:20 +02:00
  • 2aea14b518 Add more inline-assembler-ish builtins; Update Binaryen dcodeIO 2018-04-27 19:12:25 +02:00
  • 06f99406be Experimenting with inline-assembler-ish explicit builtins dcodeIO 2018-04-27 00:08:41 +02:00
  • d445608467 Fix deprecation warning in node 10 (#85) Max Graey 2018-04-26 03:18:39 +03:00
  • fe9d53329d Fix asinit tsconfig.json generation dcodeIO 2018-04-25 22:54:55 +02:00
  • ab08269276 Clarify the use of RGBA vs ABGR in the game-of-life example dcodeIO 2018-04-25 22:39:51 +02:00
  • 6d6d1dddcf Improve inlining where locals can be aliased; Add a crude mechanism for explicit unchecked array accesses dcodeIO 2018-04-25 05:04:35 +02:00
  • 391db28fe2 Always try to eliminate branches if tree-shaking is enabled dcodeIO 2018-04-24 23:11:11 +02:00
  • 97e7158fff Add some motivation dcodeIO 2018-04-24 17:03:22 +02:00
  • 8465776a1d Use 'super' in Uint8ClampedArray#__set dcodeIO 2018-04-24 00:42:17 +02:00
  • ddde13a648 Implement Uint8ClampedArray (#82) Max Graey 2018-04-24 01:33:21 +03:00
  • 63aa648ace Slim down indexed access as far as currently possible dcodeIO 2018-04-23 23:57:15 +02:00
  • de98a19eb8 Implement dynamic array literals dcodeIO 2018-04-23 22:49:04 +02:00
  • 88b00c1689 Use the element type annotated on the setter when doing indexed sets dcodeIO 2018-04-23 16:17:33 +02:00
  • 78a3dcfaf0 Compare n-body to asmjs and js dcodeIO 2018-04-23 15:04:04 +02:00
  • 80d104201c Add ol' N-body benchmark to examples fwiw dcodeIO 2018-04-23 02:43:03 +02:00
  • 2ff1bb745a Fix some diagnostic issues when skipping invalid statements, see #80; Make game-of-life example somewhat interactive; Update dist files dcodeIO 2018-04-22 23:13:02 +02:00
  • fac0fc59b5 Implement Array#map, Array#forEach, Array#filter, Array#reduceRight (#81) Max Graey 2018-04-22 23:15:38 +03:00
  • 05117f9ee3 Make sure that contextual type arguments are passed when resolving the target of a new expression; Fix decoding of UTF8 strings with more than two code units in the Binaryen interface dcodeIO 2018-04-22 00:17:14 +02:00
  • bde13b12cf Some final tweaks to the examples dcodeIO 2018-04-20 18:56:51 +02:00
  • 4eade0f319 Make the mandelbrot example a bit more fun as well dcodeIO 2018-04-20 15:36:01 +02:00
  • b53b3e08ec Add some smoothing to mandelbrot example dcodeIO 2018-04-20 05:06:05 +02:00
  • 9cd3304e13 Make the game-of-life example a bit more interesting dcodeIO 2018-04-19 23:16:03 +02:00
  • 18ef7c1932 Also link to the source from the demos dcodeIO 2018-04-19 18:53:01 +02:00
  • 7d3fb86691 Add demo links to README dcodeIO 2018-04-19 17:49:44 +02:00
  • 485c3fd9b2 Add mandelbrot example; Update game-of-life example dcodeIO 2018-04-19 17:32:23 +02:00
  • 350befee9b Also compile the constructor if a class is exported dcodeIO 2018-04-19 02:58:04 +02:00
  • 9579086699 Add what we have for GC so far dcodeIO 2018-04-18 16:32:07 +02:00
  • a15457d8b9 Simplify isFinite & isNaN (#78) Max Graey 2018-04-18 16:14:24 +03:00
  • 5a2f834c0d Fix game-of-life example inconsistencies; Fix ternary expression issues in void contexts and variable statements; Simplify HEAP_BASE handling dcodeIO 2018-04-18 15:12:33 +02:00
  • 4026c087fd Export the trampoline and provide a helper for functions that take optional arguments dcodeIO 2018-04-17 16:04:29 +02:00
  • 4929fca363 Move some numeric builtins to stdlib; Minor refactoring dcodeIO 2018-04-17 02:50:38 +02:00
  • 6d0b5d92c2 Minor string comparision optimizations (#77) Max Graey 2018-04-17 00:02:55 +03:00
  • 1013c21359 Remove type checking from load/store for portable (#76) Max Graey 2018-04-17 00:02:12 +03:00
  • d66f9d205c Add portable ctz, popcnt, rotl, rotr, nearest & copysign (#75) Max Graey 2018-04-15 01:35:43 +03:00
  • 990fa850ff Add more Array#sort tests (#73) Max Graey 2018-04-15 01:35:17 +03:00
  • 81223977d0 Fix external names of class exports and similar; Support a few more kinds in TSDBuilder, see #74 dcodeIO 2018-04-15 00:34:19 +02:00
  • 78a679759a Update dependencies dcodeIO 2018-04-13 15:31:23 +02:00
  • ee73a4d28f Initial type parameter inference, see #61 dcodeIO 2018-04-13 12:25:27 +02:00
  • 748e811137 Proper isNaN/isFinite without a temp. local dcodeIO 2018-04-12 20:40:00 +02:00
  • 1cea3c6f08 Improve Math#sign (#72) Max Graey 2018-04-12 20:26:50 +03:00
  • 2002e32c9c Inline small stdlib functions (#71) Max Graey 2018-04-12 15:17:30 +03:00
  • 5b97427bfa Update dist files dcodeIO 2018-04-11 23:37:33 +02:00
  • 623597c23a Make the transition to ArrayBuffer backed Arrays (#70) Daniel Wirtz 2018-04-11 23:35:19 +02:00
  • 0f49e054d2 Minor optimizations to array sorting dcodeIO 2018-04-08 01:53:22 +02:00
  • ac2281b14b Improve memory usage for weakHeap sorting (#68) Max Graey 2018-04-08 02:03:26 +03:00
  • 9731958738 Implement a mechanism to realloc array buffers; Trap when trying to allocate more than max size; Test allocators in CI dcodeIO 2018-04-08 00:43:38 +02:00
  • dcc0e284fb Make type checking builtins also accept just a type argument dcodeIO 2018-04-07 23:31:36 +02:00
  • 8ffc7d463d Fix invalid assertion when resolving element accesses dcodeIO 2018-04-07 21:58:22 +02:00
  • 89e8de5d82 Enable open-in-browser in the Game Of Life example (#69) Prince Mathew 2018-04-07 22:31:10 +05:30
  • b7ef21950b Add String#repeat method (#67) Max Graey 2018-04-07 19:59:26 +03:00
  • f1b00c90be Fix browser asc dcodeIO 2018-04-07 16:37:39 +02:00
  • 8770f7b548 New ArrayBuffer/TypedArray; Stdlib restructure; Fix importing stdlib in stdlib; Traverse constructors; Allow initialization of readonly instance fields in constructors dcodeIO 2018-04-07 03:27:22 +02:00
  • 6268b92eba Resolve string instances to the program's string class dcodeIO 2018-04-06 00:19:45 +02:00
  • 70a0123554 Fix some cases in string comparision (#66) Max Graey 2018-04-05 18:44:17 +03:00
  • 26601dcfb1 Make '===' and '!==' ignore operator overloads dcodeIO 2018-04-05 02:42:12 +02:00
  • 7e90ab161d Simplify resolve infrastructure; Fix handling of nested element and property accesses dcodeIO 2018-04-05 02:23:03 +02:00
  • e790eb757f Add string comparison operator overloads (#64) Max Graey 2018-04-04 22:50:40 +03:00