This is an archive of the discontinued LLVM Phabricator instance.

Fix feature RAS assigned to ARMv8.1 when it should be ARMv8.2
AbandonedPublic

Authored by rogfer01 on Jun 16 2016, 3:22 AM.

Details

Summary

Revision 271670 (which was comitted on behalf of me by @SjoerdMeijer) had a mistake where RAS extensions where assigned to 8.1 rather than 8.2.

Diff Detail

Event Timeline

rogfer01 updated this revision to Diff 60955.Jun 16 2016, 3:22 AM
rogfer01 retitled this revision from to Fix feature RAS assigned to ARMv8.1 when it should be ARMv8.2.
rogfer01 updated this object.
rogfer01 added subscribers: llvm-commits, SjoerdMeijer.

Ping?

Thank you very much.

t.p.northover edited edge metadata.Jun 20 2016, 7:07 AM

What does this affect? It seems like it ought to be possible to write a test for it. (try to assemble something with v8.1a and check that RAS isn't accepted?)

Tim.

Indeed this does not have any effect. I could even remove the enumerator from the macro and nothing changes.

AArch64 has a similar AArch64::AEK_RAS in armv8.2-a and it is handled in AArch64::getExtensionFeatures (in lib/Support/TargetParser.cpp) but (unless I'm missing something very obvious) it is not called from anywhere.

Conversely, ARM::getExtensionFeatures is called from tools/clang/lib/Basic/Targets.cpp but does not handle ARM::AEK_RAS. Handling it like AArch64 does not have any effect either.

rogfer01 abandoned this revision.Aug 15 2016, 4:59 AM
rogfer01 added a subscriber: richard.barton.arm.

Closing since @richard.barton.arm opened D23500 for the same issue but on top of the new AArch64 TargetParser

These macros are available for setting compiler-provided preprocessing macros like ACLE. We are not using any of the ARMv8.2-A ones because the ACLE has not caught up sufficiently with the architecture to have defined any.