Skip to content
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

[SR-3947] Function Signature Lowering: Investigate splitting passing values with partially opaque layout #46532

Open
ematejska mannequin opened this issue Feb 13, 2017 · 2 comments
Labels
affects ABI Flag: Affects ABI bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. compiler The Swift compiler in itself

Comments

@ematejska
Copy link
Mannequin

ematejska mannequin commented Feb 13, 2017

Previous ID SR-3947
Radar rdar://problem/31412993
Original Reporter @ematejska
Type Bug
Additional Detail from JIRA
Votes 0
Component/s Compiler
Labels Bug, AffectsABI
Assignee None
Priority Medium

md5: 59c6f88af346880c7485607a022015b7

Issue Description:

Ahead of ABI Stability and as part of function signature lowering, investigate whether it makes sense to split values with partially opaque layout by passing the non-opaque parts in registers.

@bob-wilson
Copy link

@swift-ci create

@bob-wilson
Copy link

This would be very complicated and is probably not a huge win. It would help slightly when passing arguments of fixed layout structs that contain resilient structs or enums, which is probably an edge case. We do not expect to do this for the stable ABI in Swift 5. We can consider doing it later for non-public functions.

@swift-ci swift-ci transferred this issue from apple/swift-issues Apr 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
affects ABI Flag: Affects ABI bug A deviation from expected or documented behavior. Also: expected but undesirable behavior. compiler The Swift compiler in itself
Projects
None yet
Development

No branches or pull requests

1 participant