Skip to content

Commit 1868f2e

Browse files
authored
Validate modules by default (#1258)
1 parent 2864286 commit 1868f2e

File tree

16 files changed

+32
-36
lines changed

16 files changed

+32
-36
lines changed

bin/asinit

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -249,8 +249,8 @@ function ensureGitignore() {
249249
function ensurePackageJson() {
250250
console.log("- Making sure that 'package.json' contains the build commands...")
251251
const entryPath = path.relative(projectDir, entryFile).replace(/\\/g, "/");
252-
const buildUntouched = "asc " + entryPath + " -b build/untouched.wasm -t build/untouched.wat --validate --sourceMap --debug";
253-
const buildOptimized = "asc " + entryPath + " -b build/optimized.wasm -t build/optimized.wat --validate --sourceMap --optimize";
252+
const buildUntouched = "asc " + entryPath + " -b build/untouched.wasm -t build/untouched.wat --sourceMap --debug";
253+
const buildOptimized = "asc " + entryPath + " -b build/optimized.wasm -t build/optimized.wat --sourceMap --optimize";
254254
const buildAll = "npm run asbuild:untouched && npm run asbuild:optimized";
255255
if (!fs.existsSync(packageFile)) {
256256
fs.writeFileSync(packageFile, JSON.stringify({

cli/asc.d.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,6 @@ interface CompilerOptions {
6969
shrinkLevel?: number;
7070
/** Re-optimizes until no further improvements can be made. */
7171
converge?: boolean;
72-
/** Validates the module using Binaryen. Exits if invalid. */
73-
validate?: boolean;
7472
/** Specifies the base directory of input and output files. */
7573
baseDir?: string;
7674
/** Specifies the output file. File extension indicates format. */
@@ -119,6 +117,8 @@ interface CompilerOptions {
119117
trapMode?: "allow" | "clamp" | "js";
120118
/** Specifies additional Binaryen passes to run. */
121119
runPasses?: string | string[];
120+
/** Skips validating the module using Binaryen. */
121+
noValidate?: boolean;
122122
/** Enables WebAssembly features that are disabled by default. */
123123
enable?: string | string[];
124124
/** Disables WebAssembly features that are enabled by default. */

cli/asc.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -638,7 +638,7 @@ exports.main = function main(argv, options, callback) {
638638
}
639639

640640
// Validate the module if requested
641-
if (args.validate) {
641+
if (!args.noValidate) {
642642
stats.validateCount++;
643643
stats.validateTime += measure(() => {
644644
if (!module.validate()) {

cli/asc.json

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -218,13 +218,6 @@
218218
"type": "S"
219219
},
220220

221-
"validate": {
222-
"category": "Binaryen",
223-
"description": "Validates the module using Binaryen. Exits if invalid.",
224-
"type": "b",
225-
"alias": "c",
226-
"default": false
227-
},
228221
"trapMode": {
229222
"category": "Binaryen",
230223
"description": [
@@ -246,6 +239,13 @@
246239
],
247240
"type": "s"
248241
},
242+
"noValidate": {
243+
"category": "Binaryen",
244+
"description": "Skips validating the module using Binaryen.",
245+
"type": "b",
246+
"alias": "c",
247+
"default": false
248+
},
249249

250250
"baseDir": {
251251
"description": "Specifies the base directory of input and output files.",

lib/parse/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
"main": "index.js",
66
"types": "index.d.ts",
77
"scripts": {
8-
"asbuild": "asc assembly/index.ts -O3 -b build/index.wasm -t build/index.wat --importMemory --runtime none --sourceMap --validate",
8+
"asbuild": "asc assembly/index.ts -O3 -b build/index.wasm -t build/index.wat --importMemory --runtime none --sourceMap",
99
"build": "npm run asbuild && webpack --mode production --display-modules",
1010
"test": "ts-node tests/"
1111
},

lib/webpack/index.js

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,6 @@ function compile() {
2323
"--baseDir", path.dirname(this.resourcePath),
2424
"--binaryFile", basePath + ".wasm",
2525
"--textFile", basePath + ".wat",
26-
"--validate",
2726
"--optimize"
2827
];
2928
if (this.sourceMap)

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -66,8 +66,8 @@
6666
"prepublishOnly": "node scripts/prepublish",
6767
"postpublish": "node scripts/postpublish",
6868
"asbuild": "npm run asbuild:untouched && npm run asbuild:optimized",
69-
"asbuild:untouched": "node bin/asc src/glue/wasm/index.ts src/index.ts -t out/assemblyscript.untouched.wat -b out/assemblyscript.untouched.wasm -d out/assemblyscript.d.ts --validate --debug --measure --runtime stub",
70-
"asbuild:optimized": "node bin/asc src/glue/wasm/index.ts src/index.ts -t out/assemblyscript.optimized.wat -b out/assemblyscript.optimized.wasm -O3 --validate --measure --runtime stub",
69+
"asbuild:untouched": "node bin/asc src/glue/wasm/index.ts src/index.ts -t out/assemblyscript.untouched.wat -b out/assemblyscript.untouched.wasm -d out/assemblyscript.d.ts --debug --measure --runtime stub",
70+
"asbuild:optimized": "node bin/asc src/glue/wasm/index.ts src/index.ts -t out/assemblyscript.optimized.wat -b out/assemblyscript.optimized.wasm -O3 --measure --runtime stub",
7171
"astest": "ts-node tests/bootstrap"
7272
},
7373
"releaseFiles": [

tests/allocators/buddy/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"private": true,
33
"scripts": {
44
"build": "npm run build:untouched && npm run build:optimized",
5-
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime none --validate --sourceMap --measure",
6-
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime none --validate --sourceMap --measure --noAssert --optimize"
5+
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime none --sourceMap --measure",
6+
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime none --sourceMap --measure --noAssert --optimize"
77
}
88
}

tests/allocators/rt-full/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"private": true,
33
"scripts": {
44
"build": "npm run build:untouched && npm run build:optimized",
5-
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime full --validate --sourceMap --measure",
6-
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime full --validate --sourceMap --measure --noAssert --optimize"
5+
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime full --sourceMap --measure",
6+
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime full --sourceMap --measure --noAssert --optimize"
77
}
88
}

tests/allocators/rt-stub/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
"private": true,
33
"scripts": {
44
"build": "npm run build:untouched && npm run build:optimized",
5-
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime stub --validate --sourceMap --measure",
6-
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime stub --validate --sourceMap --measure --noAssert --optimize"
5+
"build:untouched": "node ../../../bin/asc assembly/index.ts -t untouched.wat -b untouched.wasm --runtime stub --sourceMap --measure",
6+
"build:optimized": "node ../../../bin/asc assembly/index.ts -t optimized.wat -b optimized.wasm --runtime stub --sourceMap --measure --noAssert --optimize"
77
}
88
}

0 commit comments

Comments
 (0)