Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(256)

Unified Diff: test/mjsunit/wasm/asm-wasm-expr.js

Issue 2361053004: Revert of [wasm] Master CL for Binary 0xC changes. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « test/mjsunit/wasm/asm-wasm.js ('k') | test/mjsunit/wasm/calls.js » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: test/mjsunit/wasm/asm-wasm-expr.js
diff --git a/test/mjsunit/wasm/asm-wasm-expr.js b/test/mjsunit/wasm/asm-wasm-expr.js
deleted file mode 100644
index 3b20826fe74e9a07446f24a2a55a791cdaabdf97..0000000000000000000000000000000000000000
--- a/test/mjsunit/wasm/asm-wasm-expr.js
+++ /dev/null
@@ -1,151 +0,0 @@
-// Copyright 2016 the V8 project authors. All rights reserved.
-// Use of this source code is governed by a BSD-style license that can be
-// found in the LICENSE file.
-
-// Flags: --validate-asm --allow-natives-syntax
-
-var selectedTest = undefined;
-//selectedTest = 16;
-
-function skip(a) {
- return selectedTest != undefined ? a != selectedTest : false;
-}
-
-const assign_in_stmt = [
- "if (E) =",
- "if (=) E",
- "if (E) E; else =",
- "for (=; E; S) S",
- "for (E; =; S) S",
- "for (E; E; =) E",
- "for (E; E; E) =",
- "do { = } while(E)",
- "do { S } while (=)",
-];
-const assign_in_expr = [
- "i32_func(=)",
- "(=) ? E : E",
- "E ? (=) : E",
- "E ? E : (=)",
- "(=) + E",
- "E + (=)",
- "imul(=, E)",
- "imul(E, =)",
- "~(=)",
- "(=) | 0",
- "(=), E",
- "E, (=)",
- "E, E, (=)",
- "E, (=), E",
- "(=), E, E",
-];
-
-const stdlib = {
- Math: Math,
- Int8Array: Int8Array,
- Int16Array: Int16Array,
- Int32Array: Int32Array,
- Uint8Array: Uint8Array,
- Uint16Array: Uint16Array,
- Uint32Array: Uint32Array,
- Float32Array: Float32Array,
- Float64Array: Float64Array,
-};
-
-const buffer = new ArrayBuffer(65536);
-
-// Template for a module.
-function MODULE_TEMPLATE(stdlib, foreign, buffer) {
- "use asm";
- var imul = stdlib.Math.imul;
- var fround = stdlib.Math.fround;
- var M = new stdlib.Int32Array(buffer);
- var G = 0;
-
- function void_func() {}
- function i32_func(a) {
- a = a | 0;
- return a | 0;
- }
-
- FUNC_DECL
- return {main: main};
-}
-
-// Template for main function.
-{
- function main(i32, f32, f64) {
- i32 = i32 | 0;
- f32 = fround(f32);
- f64 = +f64;
- FUNC_BODY
- }
-}
-
-function RunAsmJsTest(asmfunc, expect) {
- var asm_source = asmfunc.toString();
- var nonasm_source = asm_source.replace(new RegExp("use asm"), "");
-
- print("Testing " + asmfunc.name + " (js)...");
- var js_module = eval("(" + nonasm_source + ")")(stdlib, {}, buffer);
- expect(js_module);
-
- print("Testing " + asmfunc.name + " (asm.js)...");
- var asm_module = asmfunc(stdlib, {}, buffer);
- assertTrue(%IsAsmWasmCode(asmfunc));
- expect(asm_module);
-}
-
-var test = 0;
-
-function DoTheTests(expr, assign, stmt) {
- // ==== Expression assignment tests ========================================
- for (let e of assign_in_expr) {
- if (skip(++test)) continue;
- var orig = e;
- e = e.replace(/=/g, assign);
- e = e.replace(/E/g, expr);
- e = e.replace(/S/g, stmt);
- var str = main.toString().replace("FUNC_BODY", "return (" + e + ") | 0;");
- var asm_source = MODULE_TEMPLATE.toString().replace("FUNC_DECL", str);
- // TODO(titzer): a verbosity API for these kinds of tests?
- // print(asm_source);
-
- doTest(asm_source, "(" + test + ") " + e);
- }
-
- // ==== Statement assignment tests =========================================
- for (let e of assign_in_stmt) {
- if (skip(++test)) continue;
- var orig = e;
- e = e.replace(/=/g, assign);
- e = e.replace(/E/g, expr);
- e = e.replace(/S/g, stmt);
- var str = main.toString().replace("FUNC_BODY", e + "; return 0;");
- var asm_source = MODULE_TEMPLATE.toString().replace("FUNC_DECL", str);
-// print(asm_source);
-
- doTest(asm_source, "(" + test + ") " + e);
- }
-
- function doTest(asm_source, orig) {
- var nonasm_source = asm_source.replace(new RegExp("use asm"), "");
- print("Testing JS: " + orig);
- var js_module = eval("(" + nonasm_source + ")")(stdlib, {}, buffer);
- expect(js_module);
-
- var asmfunc = eval("(" + asm_source + ")");
-
- print("Testing ASMJS: " + orig);
- var asm_module = asmfunc(stdlib, {}, buffer);
- assertTrue(%IsAsmWasmCode(asmfunc));
- expect(asm_module);
- }
-
- function expect(module) { module.main(0, 0, 0); print(" ok"); return true; }
-}
-
-DoTheTests("(i32 | 0)", "i32 = 0", "void_func()");
-DoTheTests("G", "G = 0", "void_func()");
-DoTheTests("G", "G = 0", "G");
-DoTheTests("(M[0] | 0)", "M[0] = 0", "void_func()");
« no previous file with comments | « test/mjsunit/wasm/asm-wasm.js ('k') | test/mjsunit/wasm/calls.js » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698