This is an archive of the discontinued LLVM Phabricator instance.

Make target feature 'arm' cover both 32 and 64 bit architecutres
ClosedPublic

Authored by benlangmuir on Aug 6 2015, 4:10 PM.

Details

Reviewers
rsmith
Summary
... and add aarch32 to specifically refer to the 32-bit ones.

Previously, 'arm' meant only 32-bit architectures and there was no way
for a module to build with both 32 and 64 bit ARM architectures.

Now a module that is intended to work on both architectures can specify
    requires arm
whereas a module only for 32-bit platforms can say
    requires aarch32
and just like before, 64-bit only can say
    requires aarch64

Diff Detail

Repository
rL LLVM

Event Timeline

benlangmuir updated this revision to Diff 31490.Aug 6 2015, 4:10 PM
benlangmuir retitled this revision from to Make target feature 'arm' cover both 32 and 64 bit architecutres.
benlangmuir updated this object.
benlangmuir added a reviewer: rsmith.
benlangmuir set the repository for this revision to rL LLVM.
benlangmuir added a subscriber: cfe-commits.
rsmith accepted this revision.Aug 6 2015, 4:18 PM
rsmith edited edge metadata.
rsmith added inline comments.
lib/Basic/Targets.cpp
4552

Should we also recognize "arm32" to better mirror the 64-bit case?

This revision is now accepted and ready to land.Aug 6 2015, 4:18 PM
benlangmuir added inline comments.Aug 6 2015, 4:49 PM
lib/Basic/Targets.cpp
4552

Kristof convinced me it was better to stick with aarch32 since it had a defined meaning unlike arm32 (and unlike arm64 there is no compatibility or historical reason for it).