summaryrefslogtreecommitdiff
path: root/test/importedSignCast.fromasm.clamp.no-opts
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2017-03-07 13:56:35 -0800
committerGitHub <noreply@github.com>2017-03-07 13:56:35 -0800
commit71804e2bfd1ba49b7dd4ce82b6ad26ba13f1bca8 (patch)
tree7a91f560708b5017cf795850db94267f2cb58f62 /test/importedSignCast.fromasm.clamp.no-opts
parenta452f92aeb96e9617a20146503720cd5acb64f29 (diff)
downloadbinaryen-71804e2bfd1ba49b7dd4ce82b6ad26ba13f1bca8.tar.gz
binaryen-71804e2bfd1ba49b7dd4ce82b6ad26ba13f1bca8.tar.bz2
binaryen-71804e2bfd1ba49b7dd4ce82b6ad26ba13f1bca8.zip
Use 3 modes for potentially trapping ops in asm2wasm (#929)
* use 3 modes for potentially trapping ops in asm2wasm: allow (just emit a potentially trapping op), js (do exactly what js does, even if it takes a slow ffi to do it), and clamp (avoid the trap by clamping as necessary)
Diffstat (limited to 'test/importedSignCast.fromasm.clamp.no-opts')
-rw-r--r--test/importedSignCast.fromasm.clamp.no-opts23
1 files changed, 23 insertions, 0 deletions
diff --git a/test/importedSignCast.fromasm.clamp.no-opts b/test/importedSignCast.fromasm.clamp.no-opts
new file mode 100644
index 000000000..97f1f82b7
--- /dev/null
+++ b/test/importedSignCast.fromasm.clamp.no-opts
@@ -0,0 +1,23 @@
+(module
+ (type $FUNCSIG$ii (func (param i32) (result i32)))
+ (import "env" "_emscripten_glIsTexture" (func $gm (param i32) (result i32)))
+ (import "env" "memory" (memory $0 256 256))
+ (import "env" "table" (table 1 1 anyfunc))
+ (import "env" "memoryBase" (global $memoryBase i32))
+ (import "env" "tableBase" (global $tableBase i32))
+ (elem (get_global $tableBase) $gm)
+ (export "func" (func $func))
+ (func $func
+ (drop
+ (i32.shr_s
+ (i32.shl
+ (call $gm
+ (i32.const 0)
+ )
+ (i32.const 24)
+ )
+ (i32.const 24)
+ )
+ )
+ )
+)