-
Notifications
You must be signed in to change notification settings - Fork 53
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WASM GC backend #355
base: master
Are you sure you want to change the base?
WASM GC backend #355
Conversation
to weird setting by people like me
Should be a plain merge ...
Should be an ordinary merge
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
First comments.
aeneas/src/wasm/WasmCommon.v3
Outdated
@@ -0,0 +1,230 @@ | |||
// Copyright 2016 Google Inc. All rights reserved. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Copyright notice.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changed to add: Eliot Moss 2024-2025. If I should be using something different, let me know ...
aeneas/src/ir/Ir.v3
Outdated
@@ -40,6 +41,7 @@ class IrClass extends IrItem { | |||
} | |||
return m; | |||
} | |||
def accept<E, R>(v: IrVisitor<E, R>, env: E) -> R { return v.visitIrClass(this, env); } |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think I'd prefer not introducing visitors for this; a match on the type is locally more compact and usually keeps the logic in one place.
_ => return this.tag; | ||
} | ||
} | ||
def equals(other: WasmValueType) -> bool { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
IIUC there shouldn't be a need for an equals method; variants get a ==
that is a deep structural comparison. As long as every case is OK with that (looking at the RefNull
case).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The RefNull
case requires equality on WasmHeapType
s, and they are classes, not ADTs. So I left this for now.
… wasm_gc_backend_PR Should be an ordinary merge of upstream changes.
Fix batch of changes being submitted for comment. Work ends essentially just after the point where mtables are processed to obtain function table information.