This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] Pass subtarget feature "+reserve-x18"
ClosedPublic

Authored by ahatanak on Jul 23 2015, 8:07 AM.

Details

Summary

This patch changes clang driver to pass subtarget feature "+reserve-x18" instead of passing backend option "-aarch64-reserve-x18". This is needed since backend options do not make it to the backend when doing LTO.

Diff Detail

Event Timeline

ahatanak updated this revision to Diff 30487.Jul 23 2015, 8:07 AM
ahatanak retitled this revision from to [AArch64] Pass subtarget feature "+reserve-x18".
ahatanak updated this object.
ahatanak added reviewers: echristo, dexonsmith.
ahatanak added a subscriber: cfe-commits.
echristo edited edge metadata.Jul 23 2015, 10:07 AM
echristo added a subscriber: echristo.

Do we accept the inverse option here? (If not, why not?) If so, this will
add it in places it isn't supposed to go.

-eric

Do we accept the inverse option here? (If not, why not?) If so, this will
add it in places it isn't supposed to go.

-eric

This part was committed in r227062 for ffixed-x18. I don't think adding an inverse option fno-fixed-x18 was discussed when the original patch was reviewed:

http://lists.cs.uiuc.edu/pipermail/cfe-commits/Week-of-Mon-20150119/121916.html

ffixed-r9 doesn't have an inverse option either.

It doesn't look like there was any particular reason for not defining an inverse option that cancels ffixed-x18, but we can add one in Options.td if it's important to do so.

echristo accepted this revision.Jul 23 2015, 1:49 PM
echristo edited edge metadata.

Fine with me either way, just means that if you want to turn it off it'll require some more changes. I don't think it's a problem though.

This revision is now accepted and ready to land.Jul 23 2015, 1:49 PM
This revision was automatically updated to reflect the committed changes.