This is an archive of the discontinued LLVM Phabricator instance.

[AArch64][SVE] Asm: Add SVE System registers
ClosedPublic

Authored by sdesmalen on Aug 17 2018, 1:52 AM.

Details

Summary

This patch adds system registers for controlling aspects of SVE:

  • ZCR_EL1 (r/w) visible at EL1 and EL0.
  • ZCR_EL2 (r/w) visible at EL2 and Non-secure EL1 and EL0.
  • ZCR_EL3 (r/w) visible at all exception levels.

and a system register identifying SVE:

  • ID_AA64ZFR0_EL1 (r) SVE Feature identifier.

Diff Detail

Repository
rL LLVM

Event Timeline

sdesmalen created this revision.Aug 17 2018, 1:52 AM

These system registers were missing from my previous SVE MC patches.

SjoerdMeijer added inline comments.Aug 17 2018, 2:32 AM
test/MC/AArch64/basic-a64-diagnostics.s
3744 ↗(On Diff #161178)

Do we need negative tests for the other system registers too when SVE is not enabled?

sdesmalen updated this revision to Diff 161210.Aug 17 2018, 4:55 AM

Added negative tests and moved the tests to their own files test/MC/AArch64/SVE (system-regs.s and system-regs-diagnostics.s).

SjoerdMeijer accepted this revision.Aug 17 2018, 6:55 AM

Thanks, looks good to me.

This revision is now accepted and ready to land.Aug 17 2018, 6:55 AM
This revision was automatically updated to reflect the committed changes.