Skip to content

Commit b95886d

Browse files
authored
Update binaryen (#1952)
1 parent f4091b8 commit b95886d

File tree

5 files changed

+62
-69
lines changed

5 files changed

+62
-69
lines changed

package-lock.json

+7-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"url": "https://github.com/AssemblyScript/assemblyscript/issues"
2222
},
2323
"dependencies": {
24-
"binaryen": "101.0.0-nightly.20210604",
24+
"binaryen": "101.0.0-nightly.20210703",
2525
"long": "^4.0.0",
2626
"source-map-support": "^0.5.19",
2727
"ts-node": "^6.2.0"

src/glue/binaryen.d.ts

+19-20
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export type FunctionRef = Ref;
2626
export type ImportRef = Ref;
2727
export type ExportRef = Ref;
2828
export type GlobalRef = Ref;
29-
export type EventRef = Ref;
29+
export type TagRef = Ref;
3030
export type TableRef = Ref;
3131
export type ElementSegmentRef = Ref;
3232
export type RelooperRef = Ref;
@@ -410,18 +410,18 @@ export declare function _BinaryenRefEqSetLeft(expr: ExpressionRef, leftExpr: Exp
410410
export declare function _BinaryenRefEqGetRight(expr: ExpressionRef): ExpressionRef;
411411
export declare function _BinaryenRefEqSetRight(expr: ExpressionRef, rightExpr: ExpressionRef): void;
412412

413-
export declare function _BinaryenTry(module: ModuleRef, name: StringRef, bodyExpr: ExpressionRef, catchEvents: ArrayRef<StringRef>, numCatchEvents: Index, catchBodies: ArrayRef<ExpressionRef>, numCatchBodies: Index, delegateTarget: StringRef): ExpressionRef;
413+
export declare function _BinaryenTry(module: ModuleRef, name: StringRef, bodyExpr: ExpressionRef, catchTags: ArrayRef<StringRef>, numCatchTags: Index, catchBodies: ArrayRef<ExpressionRef>, numCatchBodies: Index, delegateTarget: StringRef): ExpressionRef;
414414
export declare function _BinaryenTryGetName(expr: ExpressionRef): StringRef;
415415
export declare function _BinaryenTrySetName(expr: ExpressionRef, name: StringRef): void;
416416
export declare function _BinaryenTryGetBody(expr: ExpressionRef): ExpressionRef;
417417
export declare function _BinaryenTrySetBody(expr: ExpressionRef, bodyExpr: ExpressionRef): void;
418-
export declare function _BinaryenTryGetNumCatchEvents(expr: ExpressionRef): Index;
418+
export declare function _BinaryenTryGetNumCatchTags(expr: ExpressionRef): Index;
419419
export declare function _BinaryenTryGetNumCatchBodies(expr: ExpressionRef): Index;
420-
export declare function _BinaryenTryGetCatchEventAt(expr: ExpressionRef, index: Index): StringRef;
421-
export declare function _BinaryenTrySetCatchEventAt(expr: ExpressionRef, index: Index, catchEvent: StringRef): void;
422-
export declare function _BinaryenTryAppendCatchEvent(expr: ExpressionRef, catchEvent: StringRef): Index;
423-
export declare function _BinaryenTryInsertCatchEventAt(expr: ExpressionRef, index: Index, catchEvent: StringRef): void;
424-
export declare function _BinaryenTryRemoveCatchEventAt(expr: ExpressionRef, index: Index): StringRef;
420+
export declare function _BinaryenTryGetCatchTagAt(expr: ExpressionRef, index: Index): StringRef;
421+
export declare function _BinaryenTrySetCatchTagAt(expr: ExpressionRef, index: Index, catchTag: StringRef): void;
422+
export declare function _BinaryenTryAppendCatchTag(expr: ExpressionRef, catchTag: StringRef): Index;
423+
export declare function _BinaryenTryInsertCatchTagAt(expr: ExpressionRef, index: Index, catchTag: StringRef): void;
424+
export declare function _BinaryenTryRemoveCatchTagAt(expr: ExpressionRef, index: Index): StringRef;
425425
export declare function _BinaryenTryGetCatchBodyAt(expr: ExpressionRef, index: Index): ExpressionRef;
426426
export declare function _BinaryenTrySetCatchBodyAt(expr: ExpressionRef, index: Index, catchExpr: ExpressionRef): void;
427427
export declare function _BinaryenTryAppendCatchBody(expr: ExpressionRef, catchExpr: ExpressionRef): Index;
@@ -432,9 +432,9 @@ export declare function _BinaryenTryGetDelegateTarget(expr: ExpressionRef): Stri
432432
export declare function _BinaryenTrySetDelegateTarget(expr: ExpressionRef, delegateTarget: StringRef): void;
433433
export declare function _BinaryenTryIsDelegate(expr: ExpressionRef): bool;
434434

435-
export declare function _BinaryenThrow(module: ModuleRef, eventName: StringRef, operands: ArrayRef<ExpressionRef>, numOperands: Index): ExpressionRef;
436-
export declare function _BinaryenThrowGetEvent(expr: ExpressionRef): StringRef;
437-
export declare function _BinaryenThrowSetEvent(expr: ExpressionRef, eventName: StringRef): void;
435+
export declare function _BinaryenThrow(module: ModuleRef, tagName: StringRef, operands: ArrayRef<ExpressionRef>, numOperands: Index): ExpressionRef;
436+
export declare function _BinaryenThrowGetTag(expr: ExpressionRef): StringRef;
437+
export declare function _BinaryenThrowSetTag(expr: ExpressionRef, tagName: StringRef): void;
438438
export declare function _BinaryenThrowGetNumOperands(expr: ExpressionRef): Index;
439439
export declare function _BinaryenThrowGetOperandAt(expr: ExpressionRef, index: Index): ExpressionRef;
440440
export declare function _BinaryenThrowSetOperandAt(expr: ExpressionRef, index: Index, operandExpr: ExpressionRef): void;
@@ -497,13 +497,13 @@ export declare function _BinaryenAddFunctionImport(module: ModuleRef, internalNa
497497
export declare function _BinaryenAddTableImport(module: ModuleRef, internalName: StringRef, externalModuleName: StringRef, externalBaseName: StringRef): void;
498498
export declare function _BinaryenAddMemoryImport(module: ModuleRef, internalName: StringRef, externalModuleName: StringRef, externalBaseName: StringRef, shared:bool): void;
499499
export declare function _BinaryenAddGlobalImport(module: ModuleRef, internalName: StringRef, externalModuleName: StringRef, externalBaseName: StringRef, globalType: TypeRef, mutable: bool): void;
500-
export declare function _BinaryenAddEventImport(module: ModuleRef, internalName: StringRef, externalModuleName: StringRef, externalBaseName: StringRef, attribute: u32, params: TypeRef, results: TypeRef): void;
500+
export declare function _BinaryenAddTagImport(module: ModuleRef, internalName: StringRef, externalModuleName: StringRef, externalBaseName: StringRef, params: TypeRef, results: TypeRef): void;
501501

502502
export declare function _BinaryenAddFunctionExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
503503
export declare function _BinaryenAddTableExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
504504
export declare function _BinaryenAddMemoryExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
505505
export declare function _BinaryenAddGlobalExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
506-
export declare function _BinaryenAddEventExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
506+
export declare function _BinaryenAddTagExport(module: ModuleRef, internalName: StringRef, externalName: StringRef): ExportRef;
507507
export declare function _BinaryenGetExport(module: ModuleRef, externalName: StringRef): ExportRef;
508508
export declare function _BinaryenRemoveExport(module: ModuleRef, externalName: StringRef): void;
509509
export declare function _BinaryenGetNumExports(module: ModuleRef): Index;
@@ -523,14 +523,13 @@ export declare function _BinaryenGlobalGetType(global: GlobalRef): TypeRef;
523523
export declare function _BinaryenGlobalIsMutable(global: GlobalRef): bool;
524524
export declare function _BinaryenGlobalGetInitExpr(global: GlobalRef): ExpressionRef;
525525

526-
export declare function _BinaryenAddEvent(module: ModuleRef, name: StringRef, attribute: u32, params: TypeRef, results: TypeRef): EventRef;
527-
export declare function _BinaryenGetEvent(module: ModuleRef, name: StringRef): EventRef;
528-
export declare function _BinaryenRemoveEvent(module: ModuleRef, name: StringRef): void;
526+
export declare function _BinaryenAddTag(module: ModuleRef, name: StringRef, params: TypeRef, results: TypeRef): TagRef;
527+
export declare function _BinaryenGetTag(module: ModuleRef, name: StringRef): TagRef;
528+
export declare function _BinaryenRemoveTag(module: ModuleRef, name: StringRef): void;
529529

530-
export declare function _BinaryenEventGetName(event: EventRef): StringRef;
531-
export declare function _BinaryenEventGetAttribute(event: EventRef): u32;
532-
export declare function _BinaryenEventGetParams(event: EventRef): TypeRef;
533-
export declare function _BinaryenEventGetResults(event: EventRef): TypeRef;
530+
export declare function _BinaryenTagGetName(tag: TagRef): StringRef;
531+
export declare function _BinaryenTagGetParams(tag: TagRef): TypeRef;
532+
export declare function _BinaryenTagGetResults(tag: TagRef): TypeRef;
534533

535534
export declare function _BinaryenAddTable(module: ModuleRef, name: StringRef, initial: Index, maximum: Index): TableRef;
536535
export declare function _BinaryenRemoveTable(module: ModuleRef, table: StringRef): void;

src/module.ts

+32-38
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,8 @@ export type FunctionRef = binaryen.FunctionRef;
2424
export type ExpressionRef = binaryen.ExpressionRef;
2525
/** Reference to a Binaryen global. */
2626
export type GlobalRef = binaryen.GlobalRef;
27-
/** Reference to a Binaryen event. */
28-
export type EventRef = binaryen.EventRef;
27+
/** Reference to a Binaryen tag. */
28+
export type TagRef = binaryen.TagRef;
2929
/** Reference to a Binaryen import. */
3030
export type ImportRef = binaryen.ImportRef;
3131
/** Reference to a Binaryen export. */
@@ -155,7 +155,7 @@ export enum ExternalKind {
155155
Table = 1 /* _BinaryenExternalTable */,
156156
Memory = 2 /* _BinaryenExternalMemory */,
157157
Global = 3 /* _BinaryenExternalGlobal */,
158-
Event = 4 /* _BinaryenExternalEvent */
158+
Tag = 4 /* _BinaryenExternalTag */
159159
}
160160

161161
/** Binaryen unary operation constants. */
@@ -1584,27 +1584,27 @@ export class Module {
15841584

15851585
// try(
15861586
// body: ExpressionRef,
1587-
// catchEvents: string[],
1587+
// catchTags: string[],
15881588
// catchBodies: ExpressionRef[]
15891589
// ): ExpressionRef {
1590-
// var numCatchEvents = catchEvents.length;
1591-
// var strs = new Array<EventRef>(numCatchEvents);
1592-
// for (let i = 0; i < numCatchEvents; ++i) {
1593-
// strs[i] = this.allocStringCached(catchEvents[i]);
1590+
// var numCatchTags = catchTags.length;
1591+
// var strs = new Array<TagRef>(numCatchTags);
1592+
// for (let i = 0; i < numCatchTags; ++i) {
1593+
// strs[i] = this.allocStringCached(catchTags[i]);
15941594
// }
15951595
// var cArr1 = allocPtrArray(strs);
15961596
// var cArr2 = allocPtrArray(catchBodies);
1597-
// var ret = binaryen._BinaryenTry(this.ref, body, cArr1, numCatchEvents, cArr2, catchBodies.length);
1597+
// var ret = binaryen._BinaryenTry(this.ref, body, cArr1, numCatchTags, cArr2, catchBodies.length);
15981598
// binaryen._free(cArr2);
15991599
// binaryen._free(cArr1);
16001600
// return ret;
16011601
// }
16021602

16031603
throw(
1604-
eventName: string,
1604+
tagName: string,
16051605
operands: ExpressionRef[]
16061606
): ExpressionRef {
1607-
var cStr = this.allocStringCached(eventName);
1607+
var cStr = this.allocStringCached(tagName);
16081608
var cArr = allocPtrArray(operands);
16091609
var ret = binaryen._BinaryenThrow(this.ref, cStr, cArr, operands.length);
16101610
binaryen._free(cArr);
@@ -1768,30 +1768,29 @@ export class Module {
17681768
binaryen._BinaryenRemoveGlobal(this.ref, cStr);
17691769
}
17701770

1771-
// events
1771+
// tags
17721772

1773-
addEvent(
1773+
addTag(
17741774
name: string,
1775-
attribute: u32,
17761775
params: TypeRef,
17771776
results: TypeRef
1778-
): EventRef {
1777+
): TagRef {
17791778
var cStr = this.allocStringCached(name);
1780-
return binaryen._BinaryenAddEvent(this.ref, cStr, attribute, params, results);
1779+
return binaryen._BinaryenAddTag(this.ref, cStr, params, results);
17811780
}
17821781

1783-
getEvent(
1782+
getTag(
17841783
name: string
1785-
): EventRef {
1784+
): TagRef {
17861785
var cStr = this.allocStringCached(name);
1787-
return binaryen._BinaryenGetEvent(this.ref, cStr);
1786+
return binaryen._BinaryenGetTag(this.ref, cStr);
17881787
}
17891788

1790-
removeEvent(
1789+
removeTag(
17911790
name: string
17921791
): void {
17931792
var cStr = this.allocStringCached(name);
1794-
binaryen._BinaryenRemoveEvent(this.ref, cStr);
1793+
binaryen._BinaryenRemoveTag(this.ref, cStr);
17951794
}
17961795

17971796
// functions
@@ -1904,13 +1903,13 @@ export class Module {
19041903
return binaryen._BinaryenAddGlobalExport(this.ref, cStr1, cStr2);
19051904
}
19061905

1907-
addEventExport(
1906+
addTagExport(
19081907
internalName: string,
19091908
externalName: string
19101909
): ExportRef {
19111910
var cStr1 = this.allocStringCached(internalName);
19121911
var cStr2 = this.allocStringCached(externalName);
1913-
return binaryen._BinaryenAddEventExport(this.ref, cStr1, cStr2);
1912+
return binaryen._BinaryenAddTagExport(this.ref, cStr1, cStr2);
19141913
}
19151914

19161915
removeExport(externalName: string): void {
@@ -1974,19 +1973,18 @@ export class Module {
19741973
binaryen._BinaryenAddGlobalImport(this.ref, cStr1, cStr2, cStr3, globalType, mutable);
19751974
}
19761975

1977-
addEventImport(
1976+
addTagImport(
19781977
internalName: string,
19791978
externalModuleName: string,
19801979
externalBaseName: string,
1981-
attribute: u32,
19821980
params: TypeRef,
19831981
results: TypeRef
19841982
): void {
19851983
var cStr1 = this.allocStringCached(internalName);
19861984
var cStr2 = this.allocStringCached(externalModuleName);
19871985
var cStr3 = this.allocStringCached(externalBaseName);
1988-
binaryen._BinaryenAddEventImport(
1989-
this.ref, cStr1, cStr2, cStr3, attribute, params, results
1986+
binaryen._BinaryenAddTagImport(
1987+
this.ref, cStr1, cStr2, cStr3, params, results
19901988
);
19911989
}
19921990

@@ -2897,22 +2895,18 @@ export function getGlobalInit(global: GlobalRef): ExpressionRef {
28972895
return binaryen._BinaryenGlobalGetInitExpr(global);
28982896
}
28992897

2900-
// events
2898+
// tags
29012899

2902-
export function getEventName(event: EventRef): string | null {
2903-
return readString(binaryen._BinaryenEventGetName(event));
2900+
export function getTagName(tag: TagRef): string | null {
2901+
return readString(binaryen._BinaryenTagGetName(tag));
29042902
}
29052903

2906-
export function getEventAttribute(event: EventRef): u32 {
2907-
return binaryen._BinaryenEventGetAttribute(event);
2904+
export function getTagParams(tag: TagRef): TypeRef {
2905+
return binaryen._BinaryenTagGetParams(tag);
29082906
}
29092907

2910-
export function getEventParams(event: EventRef): TypeRef {
2911-
return binaryen._BinaryenEventGetParams(event);
2912-
}
2913-
2914-
export function getEventResults(event: EventRef): TypeRef {
2915-
return binaryen._BinaryenEventGetResults(event);
2908+
export function getTagResults(tag: TagRef): TypeRef {
2909+
return binaryen._BinaryenTagGetResults(tag);
29162910
}
29172911

29182912
export class Relooper {

src/passes/pass.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -166,7 +166,7 @@ import {
166166
_BinaryenAtomicNotifyGetNotifyCount,
167167
_BinaryenAtomicNotifySetNotifyCount,
168168
_BinaryenRefFuncGetFunc,
169-
_BinaryenThrowGetEvent,
169+
_BinaryenThrowGetTag,
170170
_BinaryenTupleExtractGetTuple,
171171
_BinaryenTupleExtractSetTuple,
172172
_BinaryenRefEqGetLeft,
@@ -484,7 +484,7 @@ export abstract class Visitor {
484484
// unimp
485485
}
486486

487-
visitEvent(name: StringRef): void {
487+
visitTag(name: StringRef): void {
488488
// unimp
489489
}
490490

@@ -850,7 +850,7 @@ export abstract class Visitor {
850850
}
851851
case ExpressionId.Throw: {
852852
this.stack.push(expr);
853-
this.visitEvent(_BinaryenThrowGetEvent(expr));
853+
this.visitTag(_BinaryenThrowGetTag(expr));
854854
let numOperands = _BinaryenThrowGetNumOperands(expr);
855855
for (let i: Index = 0; i < numOperands; ++i) {
856856
this.visit(_BinaryenThrowGetOperandAt(expr, i));

0 commit comments

Comments
 (0)