-
Notifications
You must be signed in to change notification settings - Fork 10.5k
[Distributed] Func metadata operations and implement executeDistributedTarget entry #40605
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
Conversation
1d7cc12
to
63ef20e
Compare
63ef20e
to
1dbbc06
Compare
@swift-ci please smoke test |
1dbbc06
to
79fcb4f
Compare
bf4f989
to
6267940
Compare
@swift-ci please smoke test |
dont expose new entrypoints able to get all the way to calling _execute
6267940
to
74ab478
Compare
This needs more work on hardening the demangling but we'll take it step by step. @swift-ci please smoke test |
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.
Looks good! I left a couple comments inline but those could be done in a follow-up as well.
@@ -170,74 +281,9 @@ func _executeDistributedTarget( | |||
on actor: AnyObject, // DistributedActor | |||
_ targetName: UnsafePointer<UInt8>, _ targetNameLength: UInt, | |||
argumentBuffer: Builtin.RawPointer, // HeterogeneousBuffer of arguments | |||
resultBuffer: Builtin.RawPointer | |||
resultBuffer: Builtin.RawPointer? |
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.
@ktoso I don't think we can do this, since Optional
type has different ABI (on 64-bit it's a struct { i64, i64 }
for example). I think you either should make it just a RawPointer
or I need to change signature of accessor to accept exploded struct for a result buffer (not sure exactly how it would look like in C++)...
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.
Actually maybe this is a false alarm... I see multiple places where UnsafeRawPointer is used as an optional in the stdlib
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.
Might be worth it to just switch over to UnsafeRawPointer?
for both argumentBuffer:
and resultBuffer:
to keep it consistent with other APIs e.g. ones from Misc.swift
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.
Not sure which way to go -- we use Builtin.RawPointer a lot in all of the concurrency APIs so it's consitent with those I guess... but this is the metadata ones I suppose... Let's revisit this once we confirm we got it right -- still trying to get it not crash the invocation... :)
Unrelated failure |
@swift-ci please smoke test macOS |
Note: I'm actually cleaning up the impls right now, extracting common "find node by kind" etc... |
afe5a1d
to
d29fc65
Compare
Much cleaned up lookup impls and removed some of the leftovers: d29fc65 |
d29fc65
to
376733a
Compare
@swift-ci please smoke test |
😢 |
@swift-ci please smoke test Linux |
1 similar comment
@swift-ci please smoke test Linux |
but that was precisely XFAILEd... I'll comment out the RUN of it for now |
@swift-ci please smoke test |
d7cb89b
to
31d3818
Compare
31d3818
to
7886257
Compare
@swift-ci please smoke test |
@swift-ci please smoke test Linux (build had timed out) |
@swift-ci please smoke test Linux |
@swift-ci please smoke test |
Unrelated failure... 04:52:11 Swift(linux-x86_64) :: Constraints/type_sequence.swift |
@swift-ci please smoke test Linux |
Needs much cleanup