Skip to content

[runtime] Reinstate TwoWordPair hack for swiftcall returns. #14079

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

gparker42
Copy link
Contributor

clang is miscompiling some swiftcall functions on armv7s.
Stop using swiftcall in some places until it is fixed.

Reverts c5bf2ec (#13299).

rdar://35973477

clang is miscompiling some swiftcall functions on armv7s.
Stop using swiftcall in some places until it is fixed.

Reverts c5bf2ec (swiftlang#13299).

rdar://35973477
@gparker42
Copy link
Contributor Author

@swift-ci please test

@gparker42 gparker42 merged commit 7b92247 into swiftlang:master Jan 23, 2018
@gparker42 gparker42 deleted the GrP-PR-73E60375-57B1-4913-A68F-0BB069224C45 branch January 23, 2018 09:04
@troughton
Copy link
Contributor

Do we expect this to be a long-term issue - is it worth trying to find another workaround for Windows in the meantime?

@aschwaighofer
Copy link
Contributor

I don't think clang is doing anything wrong here. Rather I believe the original TwoWordPair removal patch was missing SWIFT_CC(swift) on the BoxPair SWIFT_RT_ENTRY_IMPL(swift_allocBox)(const Metadata *type) function i.e. here https://github.com/apple/swift/pull/13299/files#diff-92de71ff7d7956eebeabb8893f22beb8R237

@gparker42
Copy link
Contributor Author

Yep, it's not a miscompile after all. We should be able to get a fix soon.

gparker42 pushed a commit to gparker42/swift that referenced this pull request Jan 24, 2018
…g#14079)

clang is miscompiling some swiftcall functions on armv7s.
Stop using swiftcall in some places until it is fixed.

Reverts c5bf2ec (swiftlang#13299).

rdar://35973477
troughton added a commit to troughton/swift that referenced this pull request Jan 27, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants