-
Notifications
You must be signed in to change notification settings - Fork 13
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
[Do Not Merge] Begin standing up Inner Core #117
Conversation
5b4e29c
to
f18f395
Compare
@@ -73,4 +73,26 @@ final class Scope { | |||
} | |||
} | |||
} | |||
|
|||
public static func == (lhs: Scope, rhs: Scope) -> Bool { | |||
return ObjectIdentifier(lhs) == ObjectIdentifier(rhs) |
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.
You can delegate the equality test to the entry continuation instead of going through ObjectIdentifier. That should always be unique (an invariant for the verifier as well, I suppose).
d558ac8
to
bf6405d
Compare
Sources/OuterCore/GIRWriter.swift
Outdated
for cont in self.continuations { | ||
guard visited.insert(cont).inserted else { continue } | ||
let scope = Scope(cont) | ||
for scope in topLevelScopes { |
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 rely on the Set to form a whitelist now, sorry about that.
ce53a4e
to
a16d968
Compare
a16d968
to
f2f07b2
Compare
f2f07b2
to
8ada89f
Compare
8ada89f
to
50139c1
Compare
Build passed on Linux 🎉 (passes locally on macOS) ⛵ |
What's in this pull request?
Begins standing up the Inner Core and starts the process of prototyping a GraphIR mangler. This will be necessary as we emit LLVM IR.
Resolves: Issue #104
Why merge this pull request?
Don't, so far.
What's worth discussing about this pull request?
We need to flesh out the mangling scheme. What I have is woefully incomplete.
What downsides are there to merging this pull request?
Right now? A lot of them. It don't work.