Skip to content

Conversation

slavapestov
Copy link
Contributor

@slavapestov slavapestov commented Sep 16, 2018

Pushing usages of AbstractionPattern::getFunctionInput() down. Getting close, but as you can see they're still there.

…Source::isShuffle()

Also, move the check to make it explicit that only a TupleShuffleExpr
at the top level goes through the argument emission code path; a
TupleShuffleExpr appearing inside a ParenExpr or TupleExpr is a
tuple conversion, which is totally unrelated and emitted as an RValue.

This is unfortunate and we should split off ArgumentShuffleExpr from
TupleShuffleExpr, and eventually, fold ArgumentShuffleExpr into
ApplyExpr.
@slavapestov
Copy link
Contributor Author

@swift-ci Please test

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@slavapestov
Copy link
Contributor Author

@swift-ci Please test

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@swift-ci
Copy link
Contributor

Build failed
Swift Test OS X Platform
Git Sha - 7965b1c78a6ba633bba1f387f23bd3ebf2bcf7a5

@swift-ci
Copy link
Contributor

Build failed
Swift Test Linux Platform
Git Sha - 7965b1c78a6ba633bba1f387f23bd3ebf2bcf7a5

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

Copy link
Contributor

@rjmccall rjmccall left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is isScalar() still necessary if you're exploding the parameter type?

@slavapestov
Copy link
Contributor Author

@rjmccall Most uses of isScalar are straightforward to eliminate. For example if the apply argument is a TupleExpr we can split it up when building the PreparedArguments. The one exception is when the ArgumentSource is a TupleShuffleExpr. My plan there though is to build a tuple type explicitly and refactor it later.

@slavapestov
Copy link
Contributor Author

@swift-ci Please test source compatibility

@slavapestov slavapestov merged commit 7c186dd into swiftlang:master Sep 17, 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