This is an archive of the discontinued LLVM Phabricator instance.

Unified ARM logic for computing target ABI.
ClosedPublic

Authored by apazos on Jun 20 2017, 3:21 PM.

Details

Summary

Unified logic for computing target ABI in backend and front end by moving this common code to Support/TargetParser.

Modeled Triple::GNU after front end code (aapcs abi) and updated tests that expect apcs abi.

Removed assertion in backend to avoid different compiler behavior due to build mode.

Depends on LLVM change in https://reviews.llvm.org/D34424.

Diff Detail

Event Timeline

apazos created this revision.Jun 20 2017, 3:21 PM
apazos edited the summary of this revision. (Show Details)Jun 20 2017, 3:21 PM
echristo accepted this revision.Jun 21 2017, 2:33 PM

This is OK once the dependent revision is approved.

This revision is now accepted and ready to land.Jun 21 2017, 2:33 PM

I've committed this for you as:

M lib/Driver/ToolChains/Clang.cpp
M test/CodeGen/arm-v8.1a-neon-intrinsics.c
M test/CodeGen/named_reg_global.c
M test/CodeGen/neon-immediate-ubsan.c
M test/CodeGen/xray-attributes-supported.cpp
Committed r306769

since I couldn't commit the backend patch without also committing this one due to assert changes in debug mode (front end and backend data layout not matching).

efriedma closed this revision.Dec 15 2017, 5:11 PM