[WASM] Initial infrastructure

- New module ":compiler:backend.wasm"
    - Initial compiler infra (driver, phaser, context)
    - Subset of Wasm AST
    - Skeleton of IR -> Wasm AST
    - Wasm AST -> WAT transformer

- Testing infra

- SpiderMonkey jsshell tool
This commit is contained in:
Svyatoslav Kuzmich
2019-08-07 14:27:18 +03:00
parent 812083ee05
commit 6e6ffa12a6
106 changed files with 6418 additions and 584 deletions
@@ -0,0 +1,18 @@
// EXPECTED_REACHABLE_NODES: 1284
package foo
fun box(): String {
var l1: Long = 0x12344478935690
var l2: Long = 0x12344478935698
var diff: Long = l2 - l1
l1 += (diff / 2)
l2 -= (diff / 2)
assertEquals(l1, l2, "When L1 == L2")
assertEquals(l1.hashCode(), l2.hashCode(), "L1.hashCode() == L2.hashCode()")
// var l3: Any = l2
// assertEquals(l1.hashCode(), l3.hashCode(), "Any(Long).hashCode()")
return "OK"
}