Skip to content

Commit aa00984

Browse files
committed
build: update binaryen to version_116
1 parent 145cbc6 commit aa00984

File tree

319 files changed

+92578
-95539
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

319 files changed

+92578
-95539
lines changed

package-lock.json

Lines changed: 19 additions & 19 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
},
2626
"engineStrict": true,
2727
"dependencies": {
28-
"binaryen": "112.0.0-nightly.20230411",
28+
"binaryen": "116.0.0",
2929
"long": "^5.2.1"
3030
},
3131
"devDependencies": {

src/glue/binaryen.d.ts

Lines changed: 5 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,6 @@ export type ExpressionRunnerRef = Ref;
4141
export type BinaryenModuleAllocateAndWriteResultRef = Ref;
4242
export type TypeBuilderRef = Ref;
4343
export type TypeBuilderErrorReason = u32;
44-
export type TypeSystem = u32;
4544

4645
export declare function _BinaryenTypeCreate(types: ArrayRef<TypeRef>, numTypes: u32): TypeRef;
4746
export declare function _BinaryenTypeArity(type: TypeRef): u32;
@@ -546,9 +545,9 @@ export declare function _BinaryenTupleExtractSetIndex(expr: ExpressionRef, index
546545

547546
export declare function _BinaryenPop(module: ModuleRef, type: TypeRef): ExpressionRef;
548547

549-
export declare function _BinaryenI31New(module: ModuleRef, value: ExpressionRef): ExpressionRef;
550-
export declare function _BinaryenI31NewGetValue(expr: ExpressionRef): ExpressionRef;
551-
export declare function _BinaryenI31NewSetValue(expr: ExpressionRef, valueExpr: ExpressionRef): void;
548+
export declare function _BinaryenRefI31(module: ModuleRef, value: ExpressionRef): ExpressionRef;
549+
export declare function _BinaryenRefI31GetValue(expr: ExpressionRef): ExpressionRef;
550+
export declare function _BinaryenRefI31SetValue(expr: ExpressionRef, valueExpr: ExpressionRef): void;
552551

553552
export declare function _BinaryenI31Get(module: ModuleRef, i31Expr: ExpressionRef, signed: bool): ExpressionRef;
554553
export declare function _BinaryenI31GetGetI31(expr: ExpressionRef): ExpressionRef;
@@ -661,7 +660,7 @@ export declare function _BinaryenArrayCopyGetLength(expr: ExpressionRef): Expres
661660
export declare function _BinaryenArrayCopySetLength(expr: ExpressionRef, lengthExpr: ExpressionRef): void;
662661

663662
// TODO: BinaryenArrayFill
664-
// TODO: BinaryenArrayInit
663+
// TODO: BinaryenArrayNewFixed
665664

666665
export declare function _BinaryenStringNew(module: ModuleRef, op: Op, ptr: ExpressionRef, length: ExpressionRef, start: ExpressionRef, end: ExpressionRef, isTry: bool): ExpressionRef;
667666
export declare function _BinaryenStringNewGetOp(expr: ExpressionRef): Op;
@@ -884,16 +883,14 @@ export declare function _ExpressionRunnerRunAndDispose(runner: ExpressionRunnerR
884883
export declare function _TypeBuilderCreate(size: Index): TypeBuilderRef;
885884
export declare function _TypeBuilderGrow(builder: TypeBuilderRef, count: Index): void;
886885
export declare function _TypeBuilderGetSize(builder: TypeBuilderRef): Index;
887-
export declare function _TypeBuilderSetBasicHeapType(builder: TypeBuilderRef, index: Index, basicHeapType: HeapTypeRef): void;
888886
export declare function _TypeBuilderSetSignatureType(builder: TypeBuilderRef, index: Index, paramTypes: TypeRef, resultTypes: TypeRef): void;
889887
export declare function _TypeBuilderSetStructType(builder: TypeBuilderRef, index: Index, fieldTypes: ArrayRef<TypeRef>, fieldPackedTypes: ArrayRef<PackedType>, fieldMutables: ArrayRef<bool>, numFields: i32): void;
890888
export declare function _TypeBuilderSetArrayType(builder: TypeBuilderRef, index: Index, elementType: TypeRef, elementPackedTyype: PackedType, elementMutable: bool): void;
891-
export declare function _TypeBuilderIsBasic(builder: TypeBuilderRef, index: Index): bool;
892-
export declare function _TypeBuilderGetBasic(builder: TypeBuilderRef, index: Index): HeapTypeRef;
893889
export declare function _TypeBuilderGetTempHeapType(builder: TypeBuilderRef, index: Index): HeapTypeRef;
894890
export declare function _TypeBuilderGetTempTupleType(builder: TypeBuilderRef, types: ArrayRef<TypeRef>, numTypes: Index): TypeRef;
895891
export declare function _TypeBuilderGetTempRefType(builder: TypeBuilderRef, heapType: HeapTypeRef, nullable: bool): TypeRef;
896892
export declare function _TypeBuilderSetSubType(builder: TypeBuilderRef, index: Index, superType: HeapTypeRef): void;
893+
export declare function _TypeBuilderSetOpen(builder: TypeBuilderRef, index: Index): void;
897894
export declare function _TypeBuilderCreateRecGroup(builder: TypeBuilderRef, index: Index, length: Index): void;
898895
export declare function _TypeBuilderBuildAndDispose(builder: TypeBuilderRef, heapTypes: ArrayRef<HeapTypeRef>, errorIndex: Pointer<Index>, errorReason: Pointer<TypeBuilderErrorReason>): bool;
899896
export declare function _BinaryenModuleSetTypeName(module: ModuleRef, heapType: HeapTypeRef, name: StringRef): void;
@@ -922,8 +919,6 @@ export declare function _BinaryenGetOneCallerInlineMaxSize(): Index;
922919
export declare function _BinaryenSetOneCallerInlineMaxSize(size: Index): void;
923920
export declare function _BinaryenGetAllowInliningFunctionsWithLoops(): bool;
924921
export declare function _BinaryenSetAllowInliningFunctionsWithLoops(enabled: bool): void;
925-
export declare function _BinaryenGetTypeSystem(): TypeSystem;
926-
export declare function _BinaryenSetTypeSystem(typeSystem: TypeSystem): void;
927922

928923
// Helpers
929924

src/glue/binaryen.js

Lines changed: 4 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -504,9 +504,9 @@ export const {
504504

505505
_BinaryenPop,
506506

507-
_BinaryenI31New,
508-
_BinaryenI31NewGetValue,
509-
_BinaryenI31NewSetValue,
507+
_BinaryenRefI31,
508+
_BinaryenRefI31GetValue,
509+
_BinaryenRefI31SetValue,
510510

511511
_BinaryenI31Get,
512512
_BinaryenI31GetGetI31,
@@ -837,16 +837,14 @@ export const {
837837
_TypeBuilderCreate,
838838
_TypeBuilderGrow,
839839
_TypeBuilderGetSize,
840-
_TypeBuilderSetBasicHeapType,
841840
_TypeBuilderSetSignatureType,
842841
_TypeBuilderSetStructType,
843842
_TypeBuilderSetArrayType,
844-
_TypeBuilderIsBasic,
845-
_TypeBuilderGetBasic,
846843
_TypeBuilderGetTempHeapType,
847844
_TypeBuilderGetTempTupleType,
848845
_TypeBuilderGetTempRefType,
849846
_TypeBuilderSetSubType,
847+
_TypeBuilderSetOpen,
850848
_TypeBuilderCreateRecGroup,
851849
_TypeBuilderBuildAndDispose,
852850
_BinaryenModuleSetTypeName,
@@ -875,8 +873,6 @@ export const {
875873
_BinaryenSetOneCallerInlineMaxSize,
876874
_BinaryenGetAllowInliningFunctionsWithLoops,
877875
_BinaryenSetAllowInliningFunctionsWithLoops,
878-
_BinaryenGetTypeSystem,
879-
_BinaryenSetTypeSystem,
880876

881877
// Helpers
882878

src/module.ts

Lines changed: 23 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -202,13 +202,6 @@ export namespace TypeBuilderErrorReason {
202202
}
203203
}
204204

205-
/** Type system constants. */
206-
export type TypeSystem = binaryen.TypeSystem;
207-
export namespace TypeSystem {
208-
export const Isorecursive: TypeSystem = 0 /* _BinaryenTypeSystemIsorecursive */;
209-
export const Nominal: TypeSystem = 1 /* _BinaryenTypeSystemNominal */;
210-
}
211-
212205
/** Binaryen feature constants. */
213206
export const enum FeatureFlags {
214207
MVP = 0 /* _BinaryenFeatureMVP */,
@@ -287,7 +280,7 @@ export const enum ExpressionId {
287280
Rethrow = 51 /* _BinaryenRethrowId */,
288281
TupleMake = 52 /* _BinaryenTupleMakeId */,
289282
TupleExtract = 53 /* _BinaryenTupleExtractId */,
290-
I31New = 54 /* _BinaryenI31NewId */,
283+
RefI31 = 54 /* _BinaryenRefI31Id */,
291284
I31Get = 55 /* _BinaryenI31GetId */,
292285
CallRef = 56 /* _BinaryenCallRefId */,
293286
RefTest = 57 /* _BinaryenRefTestId */,
@@ -297,28 +290,26 @@ export const enum ExpressionId {
297290
StructGet = 61 /* _BinaryenStructGetId */,
298291
StructSet = 62 /* _BinaryenStructSetId */,
299292
ArrayNew = 63 /* _BinaryenArrayNewId */,
300-
ArrayNewSeg = 64 /* TODO_BinaryenArraySegId */,
301-
ArrayNewFixed = 65 /* _BinaryenArrayNewFixedId */,
302-
ArrayGet = 66 /* _BinaryenArrayGetId */,
303-
ArraySet = 67 /* _BinaryenArraySetId */,
304-
ArrayLen = 68 /* _BinaryenArrayLenId */,
305-
ArrayCopy = 69 /* _BinaryenArrayCopyId */,
306-
ArrayFill = 70 /* _BinaryenArrayFillId */,
307-
ArrayInit = 71 /* _BinaryenArrayInitId */,
308-
RefAs = 72 /* _BinaryenRefAsId */,
309-
StringNew = 73 /* _BinaryenStringNewId */,
310-
StringConst = 74 /* _BinaryenStringConstId */,
311-
StringMeasure = 75 /* _BinaryenStringMeasureId */,
312-
StringEncode = 76 /* _BinaryenStringEncodeId */,
313-
StringConcat = 77 /* _BinaryenStringConcatId */,
314-
StringEq = 78 /* _BinaryenStringEqId */,
315-
StringAs = 79 /* _BinaryenStringAsId */,
316-
StringWTF8Advance = 80 /* _BinaryenStringWTF8AdvanceId */,
317-
StringWTF16Get = 81 /* _BinaryenStringWTF16GetId */,
318-
StringIterNext = 82 /* _BinaryenStringIterNextId */,
319-
StringIterMove = 83 /* _BinaryenStringIterMoveId */,
320-
StringSliceWTF = 84 /* _BinaryenStringSliceWTFId */,
321-
StringSliceIter = 85 /* _BinaryenStringSliceIterId */
293+
ArrayNewFixed = 66 /* _BinaryenArrayNewFixedId */,
294+
ArrayGet = 67 /* _BinaryenArrayGetId */,
295+
ArraySet = 68 /* _BinaryenArraySetId */,
296+
ArrayLen = 69 /* _BinaryenArrayLenId */,
297+
ArrayCopy = 70 /* _BinaryenArrayCopyId */,
298+
ArrayFill = 71 /* _BinaryenArrayFillId */,
299+
RefAs = 74 /* _BinaryenRefAsId */,
300+
StringNew = 75 /* _BinaryenStringNewId */,
301+
StringConst = 76 /* _BinaryenStringConstId */,
302+
StringMeasure = 77 /* _BinaryenStringMeasureId */,
303+
StringEncode = 78 /* _BinaryenStringEncodeId */,
304+
StringConcat = 79 /* _BinaryenStringConcatId */,
305+
StringEq = 80 /* _BinaryenStringEqId */,
306+
StringAs = 81 /* _BinaryenStringAsId */,
307+
StringWTF8Advance = 82 /* _BinaryenStringWTF8AdvanceId */,
308+
StringWTF16Get = 83 /* _BinaryenStringWTF16GetId */,
309+
StringIterNext = 84 /* _BinaryenStringIterNextId */,
310+
StringIterMove = 85 /* _BinaryenStringIterMoveId */,
311+
StringSliceWTF = 86 /* _BinaryenStringSliceWTFId */,
312+
StringSliceIter = 87 /* _BinaryenStringSliceIterId */
322313
}
323314

324315
/** Binaryen external kind constants. */
@@ -1378,7 +1369,6 @@ export class Module {
13781369
) {
13791370
assert(sizeType == TypeRef.I32 || sizeType == TypeRef.I64);
13801371
this.lit = binaryen._malloc(binaryen._BinaryenSizeofLiteral());
1381-
binaryen._BinaryenSetTypeSystem(TypeSystem.Nominal);
13821372
}
13831373

13841374
private lit: usize;
@@ -2126,7 +2116,7 @@ export class Module {
21262116
i31_new(
21272117
value: ExpressionRef
21282118
): ExpressionRef {
2129-
return binaryen._BinaryenI31New(this.ref, value);
2119+
return binaryen._BinaryenRefI31(this.ref, value);
21302120
}
21312121

21322122
i31_get(
@@ -2959,7 +2949,7 @@ export class Module {
29592949
case ExpressionId.Const:
29602950
case ExpressionId.RefNull:
29612951
case ExpressionId.RefFunc:
2962-
case ExpressionId.I31New: return true;
2952+
case ExpressionId.RefI31: return true;
29632953
case ExpressionId.Binary: {
29642954
if (this.getFeatures() & FeatureFlags.ExtendedConst) {
29652955
switch (getBinaryOp(expr)) {
@@ -3713,7 +3703,6 @@ export function ensureType(type: Type): TypeRef {
37133703
// @ts-ignore: Wasm only
37143704
assert(sizeof<usize>() == 4); // ABI code below assumes 32-bit pointers
37153705
}
3716-
assert(binaryen._BinaryenGetTypeSystem() == TypeSystem.Nominal);
37173706
let builder = binaryen._TypeBuilderCreate(0);
37183707
let seen = new Map<Type,HeapTypeRef>();
37193708
prepareType(builder, seen, type); // drop temp return

src/passes/pass.ts

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -175,9 +175,9 @@ import {
175175
_BinaryenRefEqSetLeft,
176176
_BinaryenRefEqSetRight,
177177
_BinaryenFunctionSetBody,
178-
_BinaryenI31NewGetValue,
178+
_BinaryenRefI31GetValue,
179179
_BinaryenI31GetGetI31,
180-
_BinaryenI31NewSetValue,
180+
_BinaryenRefI31SetValue,
181181
_BinaryenI31GetSetI31,
182182
_BinaryenCallRefGetNumOperands,
183183
_BinaryenCallRefGetOperandAt,
@@ -512,7 +512,7 @@ export abstract class Visitor {
512512
// unimp
513513
}
514514

515-
visitI31New(expr: ExpressionRef): void {
515+
visitRefI31(expr: ExpressionRef): void {
516516
// unimp
517517
}
518518

@@ -1040,11 +1040,11 @@ export abstract class Visitor {
10401040
this.visitTupleExtract(expr);
10411041
break;
10421042
}
1043-
case ExpressionId.I31New: {
1043+
case ExpressionId.RefI31: {
10441044
this.stack.push(expr);
1045-
this.visit(_BinaryenI31NewGetValue(expr));
1045+
this.visit(_BinaryenRefI31GetValue(expr));
10461046
assert(this.stack.pop() == expr);
1047-
this.visitI31New(expr);
1047+
this.visitRefI31(expr);
10481048
break;
10491049
}
10501050
case ExpressionId.I31Get: {
@@ -1884,10 +1884,10 @@ export function replaceChild(
18841884
}
18851885
break;
18861886
}
1887-
case ExpressionId.I31New: {
1888-
let value = _BinaryenI31NewGetValue(parent);
1887+
case ExpressionId.RefI31: {
1888+
let value = _BinaryenRefI31GetValue(parent);
18891889
if (value == search) {
1890-
_BinaryenI31NewSetValue(parent, replacement);
1890+
_BinaryenRefI31SetValue(parent, replacement);
18911891
return value;
18921892
}
18931893
break;

0 commit comments

Comments
 (0)