summaryrefslogtreecommitdiff
path: root/src/emscripten-optimizer/optimizer.h
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2016-09-30 17:04:25 -0700
committerGitHub <noreply@github.com>2016-09-30 17:04:25 -0700
commit58832ad0b8a197ece6165bfe163f634a21f8bd6d (patch)
treeb6f56bb970a53996d5bd6fabf1187a7139997f9f /src/emscripten-optimizer/optimizer.h
parentcbe71a99f3b53db81cfd23f7a12f2010daeff65d (diff)
downloadbinaryen-58832ad0b8a197ece6165bfe163f634a21f8bd6d.tar.gz
binaryen-58832ad0b8a197ece6165bfe163f634a21f8bd6d.tar.bz2
binaryen-58832ad0b8a197ece6165bfe163f634a21f8bd6d.zip
asm2wasm i64 support (#723)
* support i64 intrinsics from fastcomp, adding --wasm-only flag * refactor callImport logic in asm2wasm to avoid recomputing wasm types again * legalize illegal i64 params in exports and imports * do safe i64 binary ops depending on precision * fix addVar, only assert on names if we are using a name
Diffstat (limited to 'src/emscripten-optimizer/optimizer.h')
-rw-r--r--src/emscripten-optimizer/optimizer.h3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/emscripten-optimizer/optimizer.h b/src/emscripten-optimizer/optimizer.h
index 684fc0164..dc73962c5 100644
--- a/src/emscripten-optimizer/optimizer.h
+++ b/src/emscripten-optimizer/optimizer.h
@@ -49,12 +49,13 @@ enum AsmType {
ASM_INT8X16,
ASM_INT16X8,
ASM_INT32X4,
+ ASM_INT64, // non-asm.js
ASM_NONE // number of types
};
struct AsmData;
-AsmType detectType(cashew::Ref node, AsmData *asmData=nullptr, bool inVarDef=false, cashew::IString minifiedFround=cashew::IString());
+AsmType detectType(cashew::Ref node, AsmData *asmData=nullptr, bool inVarDef=false, cashew::IString minifiedFround=cashew::IString(), bool allowI64=false);
struct AsmData {
struct Local {