Skip to content

Commit

Permalink
Update Binaryen (#2612)
Browse files Browse the repository at this point in the history
  • Loading branch information
dcodeIO committed Jan 12, 2023
1 parent d46bfeb commit 9971708
Show file tree
Hide file tree
Showing 317 changed files with 14,480 additions and 14,524 deletions.
14 changes: 7 additions & 7 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
},
"engineStrict": true,
"dependencies": {
"binaryen": "110.0.0-nightly.20221105",
"binaryen": "111.0.0-nightly.20230111",
"long": "^5.2.0"
},
"devDependencies": {
Expand Down
9 changes: 4 additions & 5 deletions src/builtins.ts
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,6 @@ import {
SIMDTernaryOp,
SIMDLoadOp,
SIMDLoadStoreLaneOp,
RefIsOp,
TypeRef,
ExpressionRef,
ExpressionId,
Expand Down Expand Up @@ -3470,13 +3469,13 @@ function builtin_assert(ctx: BuiltinContext): ExpressionRef {
case TypeKind.Externref:
case TypeKind.Anyref:
case TypeKind.Eqref:
case TypeKind.Dataref:
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.I31ref:
case TypeKind.Stringref:
case TypeKind.StringviewWTF8:
case TypeKind.StringviewWTF16:
case TypeKind.StringviewIter: return module.if(module.ref_is(RefIsOp.Null, arg0), abort);
case TypeKind.StringviewIter: return module.if(module.ref_is_null(arg0), abort);
}
} else {
compiler.currentType = type.nonNullableType;
Expand Down Expand Up @@ -3551,7 +3550,7 @@ function builtin_assert(ctx: BuiltinContext): ExpressionRef {
case TypeKind.Externref:
case TypeKind.Anyref:
case TypeKind.Eqref:
case TypeKind.Dataref:
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.I31ref:
case TypeKind.Stringref:
Expand All @@ -3560,7 +3559,7 @@ function builtin_assert(ctx: BuiltinContext): ExpressionRef {
case TypeKind.StringviewIter: {
let temp = flow.getTempLocal(type);
let ret = module.if(
module.ref_is(RefIsOp.Null,
module.ref_is_null(
module.local_tee(temp.index, arg0, false) // ref
),
abort,
Expand Down
8 changes: 4 additions & 4 deletions src/common.ts
Original file line number Diff line number Diff line change
Expand Up @@ -130,9 +130,9 @@ export namespace CommonNames {
export const externref = "externref";
export const anyref = "anyref";
export const eqref = "eqref";
export const i31ref = "i31ref";
export const dataref = "dataref";
export const structref = "structref";
export const arrayref = "arrayref";
export const i31ref = "i31ref";
export const stringref = "stringref";
export const stringview_wtf8 = "stringview_wtf8";
export const stringview_wtf16 = "stringview_wtf16";
Expand Down Expand Up @@ -211,9 +211,9 @@ export namespace CommonNames {
export const Externref = "Externref";
export const Anyref = "Anyref";
export const Eqref = "Eqref";
export const I31ref = "I31ref";
export const Dataref = "Dataref";
export const Structref = "Structref";
export const Arrayref = "Arrayref";
export const I31ref = "I31ref";
export const String = "String";
export const RegExp = "RegExp";
export const Object = "Object";
Expand Down
17 changes: 9 additions & 8 deletions src/compiler.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4838,9 +4838,9 @@ export class Compiler extends DiagnosticEmitter {
);
}
case TypeKind.Eqref:
case TypeKind.I31ref:
case TypeKind.Dataref:
case TypeKind.Arrayref: return module.ref_eq(leftExpr, rightExpr);
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.I31ref: return module.ref_eq(leftExpr, rightExpr);
case TypeKind.Stringref: return module.string_eq(leftExpr, rightExpr);
case TypeKind.StringviewWTF8:
case TypeKind.StringviewWTF16:
Expand Down Expand Up @@ -4888,9 +4888,9 @@ export class Compiler extends DiagnosticEmitter {
);
}
case TypeKind.Eqref:
case TypeKind.I31ref:
case TypeKind.Dataref:
case TypeKind.Arrayref: {
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.I31ref: {
return module.unary(UnaryOp.EqzI32,
module.ref_eq(leftExpr, rightExpr)
);
Expand Down Expand Up @@ -9861,7 +9861,7 @@ export class Compiler extends DiagnosticEmitter {
case TypeKind.Externref:
case TypeKind.Anyref:
case TypeKind.Eqref:
case TypeKind.Dataref:
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.Stringref:
case TypeKind.StringviewWTF8:
Expand Down Expand Up @@ -10020,8 +10020,9 @@ export class Compiler extends DiagnosticEmitter {
case TypeKind.Externref:
case TypeKind.Anyref:
case TypeKind.Eqref:
case TypeKind.Structref:
case TypeKind.Arrayref:
case TypeKind.I31ref:
case TypeKind.Dataref:
case TypeKind.Stringref:
case TypeKind.StringviewWTF8:
case TypeKind.StringviewWTF16:
Expand Down
30 changes: 14 additions & 16 deletions src/glue/binaryen.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -54,9 +54,9 @@ export declare function _BinaryenTypeFuncref(): TypeRef;
export declare function _BinaryenTypeExternref(): TypeRef;
export declare function _BinaryenTypeAnyref(): TypeRef;
export declare function _BinaryenTypeEqref(): TypeRef;
export declare function _BinaryenTypeI31ref(): TypeRef;
export declare function _BinaryenTypeDataref(): TypeRef;
export declare function _BinaryenTypeStructref(): TypeRef;
export declare function _BinaryenTypeArrayref(): TypeRef;
export declare function _BinaryenTypeI31ref(): TypeRef;
export declare function _BinaryenTypeStringref(): TypeRef;
export declare function _BinaryenTypeStringviewWTF8(): TypeRef;
export declare function _BinaryenTypeStringviewWTF16(): TypeRef;
Expand All @@ -70,7 +70,7 @@ export declare function _BinaryenHeapTypeExt(): HeapTypeRef;
export declare function _BinaryenHeapTypeAny(): HeapTypeRef;
export declare function _BinaryenHeapTypeEq(): HeapTypeRef;
export declare function _BinaryenHeapTypeI31(): HeapTypeRef;
export declare function _BinaryenHeapTypeData(): HeapTypeRef;
export declare function _BinaryenHeapTypeStruct(): HeapTypeRef;
export declare function _BinaryenHeapTypeArray(): HeapTypeRef;
export declare function _BinaryenHeapTypeString(): HeapTypeRef;
export declare function _BinaryenHeapTypeStringviewWTF8(): HeapTypeRef;
Expand Down Expand Up @@ -448,11 +448,9 @@ export declare function _BinaryenMemoryFillSetSize(expr: ExpressionRef, sizeExpr

export declare function _BinaryenRefNull(module: ModuleRef, type: TypeRef): ExpressionRef;

export declare function _BinaryenRefIs(module: ModuleRef, op: Op, valueExpr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefIsGetOp(expr: ExpressionRef): Op;
export declare function _BinaryenRefIsSetOp(expr: ExpressionRef, op: Op): void;
export declare function _BinaryenRefIsGetValue(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefIsSetValue(expr: ExpressionRef, valueExpr: ExpressionRef): void;
export declare function _BinaryenRefIsNull(module: ModuleRef, valueExpr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefIsNullGetValue(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefIsNullSetValue(expr: ExpressionRef, valueExpr: ExpressionRef): void;

export declare function _BinaryenRefAs(module: ModuleRef, op: Op, valueExpr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefAsGetOp(expr: ExpressionRef): Op;
Expand Down Expand Up @@ -570,27 +568,25 @@ export declare function _BinaryenCallRefSetTarget(expr: ExpressionRef, targetExp
export declare function _BinaryenCallRefIsReturn(expr: ExpressionRef): bool;
export declare function _BinaryenCallRefSetReturn(expr: ExpressionRef, isReturn: bool): void;

export declare function _BinaryenRefTest(module: ModuleRef, refExpr: ExpressionRef, intendedType: HeapTypeRef): ExpressionRef;
export declare function _BinaryenRefTest(module: ModuleRef, refExpr: ExpressionRef, castType: HeapTypeRef): ExpressionRef;
export declare function _BinaryenRefTestGetRef(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefTestSetRef(expr: ExpressionRef, refExpr: ExpressionRef): void;
export declare function _BinaryenRefTestGetIntendedType(expr: ExpressionRef): HeapTypeRef;
export declare function _BinaryenRefTestSetIntendedType(expr: ExpressionRef, intendedType: HeapTypeRef): void;
export declare function _BinaryenRefTestGetCastType(expr: ExpressionRef): HeapTypeRef;
export declare function _BinaryenRefTestSetCastType(expr: ExpressionRef, castType: HeapTypeRef): void;

export declare function _BinaryenRefCast(module: ModuleRef, refExpr: ExpressionRef, intendedType: HeapTypeRef): ExpressionRef;
export declare function _BinaryenRefCastGetRef(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenRefCastSetRef(expr: ExpressionRef, refExpr: ExpressionRef): void;
export declare function _BinaryenRefCastGetIntendedType(expr: ExpressionRef): HeapTypeRef;
export declare function _BinaryenRefCastSetIntendedType(expr: ExpressionRef, intendedType: HeapTypeRef): void;

export declare function _BinaryenBrOn(module: ModuleRef, op: Op, name: StringRef, ref: ExpressionRef, intendedType: HeapTypeRef): ExpressionRef;
export declare function _BinaryenBrOn(module: ModuleRef, op: Op, name: StringRef, ref: ExpressionRef, castType: HeapTypeRef): ExpressionRef;
export declare function _BinaryenBrOnGetOp(expr: ExpressionRef): Op;
export declare function _BinaryenBrOnSetOp(expr: ExpressionRef, op: Op): void;
export declare function _BinaryenBrOnGetName(expr: ExpressionRef): StringRef;
export declare function _BinaryenBrOnSetName(expr: ExpressionRef, nameStr: StringRef): void;
export declare function _BinaryenBrOnGetRef(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenBrOnSetRef(expr: ExpressionRef, refExpr: ExpressionRef): void;
export declare function _BinaryenBrOnGetIntendedType(expr: ExpressionRef): HeapTypeRef;
export declare function _BinaryenBrOnSetIntendedType(expr: ExpressionRef, intendedType: HeapTypeRef): void;
export declare function _BinaryenBrOnGetCastType(expr: ExpressionRef): HeapTypeRef;
export declare function _BinaryenBrOnSetCastType(expr: ExpressionRef, castType: HeapTypeRef): void;

export declare function _BinaryenStructNew(module: ModuleRef, operands: ArrayRef<ExpressionRef>, numOperands: Index, type: HeapTypeRef): ExpressionRef;
export declare function _BinaryenStructNewGetNumOperands(expr: ExpressionRef): Index;
Expand Down Expand Up @@ -622,6 +618,8 @@ export declare function _BinaryenArrayNewSetInit(expr: ExpressionRef, initExpr:
export declare function _BinaryenArrayNewGetSize(expr: ExpressionRef): ExpressionRef;
export declare function _BinaryenArrayNewSetSize(expr: ExpressionRef, sizeExpr: ExpressionRef): void;

// TODO: BinaryenArrayNewSeg

export declare function _BinaryenArrayInit(module: ModuleRef, type: HeapTypeRef, values: ArrayRef<ExpressionRef>, numValues: Index): ExpressionRef;
export declare function _BinaryenArrayInitGetNumValues(expr: ExpressionRef): Index;
export declare function _BinaryenArrayInitGetValueAt(expr: ExpressionRef, index: Index): ExpressionRef;
Expand Down
22 changes: 9 additions & 13 deletions src/glue/binaryen.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@ export const {
_BinaryenTypeAnyref,
_BinaryenTypeEqref,
_BinaryenTypeI31ref,
_BinaryenTypeDataref,
_BinaryenTypeStructref,
_BinaryenTypeArrayref,
_BinaryenTypeStringref,
_BinaryenTypeStringviewWTF8,
Expand All @@ -33,7 +33,7 @@ export const {
_BinaryenHeapTypeAny,
_BinaryenHeapTypeEq,
_BinaryenHeapTypeI31,
_BinaryenHeapTypeData,
_BinaryenHeapTypeStruct,
_BinaryenHeapTypeArray,
_BinaryenHeapTypeString,
_BinaryenHeapTypeStringviewWTF8,
Expand Down Expand Up @@ -406,11 +406,9 @@ export const {

_BinaryenRefNull,

_BinaryenRefIs,
_BinaryenRefIsGetOp,
_BinaryenRefIsSetOp,
_BinaryenRefIsGetValue,
_BinaryenRefIsSetValue,
_BinaryenRefIsNull,
_BinaryenRefIsNullGetValue,
_BinaryenRefIsNullSetValue,

_BinaryenRefAs,
_BinaryenRefAsGetOp,
Expand Down Expand Up @@ -531,14 +529,12 @@ export const {
_BinaryenRefTest,
_BinaryenRefTestGetRef,
_BinaryenRefTestSetRef,
_BinaryenRefTestGetIntendedType,
_BinaryenRefTestSetIntendedType,
_BinaryenRefTestGetCastType,
_BinaryenRefTestSetCastType,

_BinaryenRefCast,
_BinaryenRefCastGetRef,
_BinaryenRefCastSetRef,
_BinaryenRefCastGetIntendedType,
_BinaryenRefCastSetIntendedType,

_BinaryenBrOn,
_BinaryenBrOnGetOp,
Expand All @@ -547,8 +543,8 @@ export const {
_BinaryenBrOnSetName,
_BinaryenBrOnGetRef,
_BinaryenBrOnSetRef,
_BinaryenBrOnGetIntendedType,
_BinaryenBrOnSetIntendedType,
_BinaryenBrOnGetCastType,
_BinaryenBrOnSetCastType,

_BinaryenStructNew,
_BinaryenStructNewGetNumOperands,
Expand Down

0 comments on commit 9971708

Please sign in to comment.