This is an archive of the discontinued LLVM Phabricator instance.

[AArch64] IDSAR6 register assembler support
ClosedPublic

Authored by samparker on Aug 23 2017, 9:08 AM.

Details

Summary

The IDSAR6 system register has been introduced to identify the v8.3-a Javascript data type conversion and v8.2-a dot product support.

Diff Detail

Repository
rL LLVM

Event Timeline

samparker created this revision.Aug 23 2017, 9:08 AM
dmgreen edited edge metadata.Aug 25 2017, 7:23 AM

According to the latest 8.3 beta file I downloaded, it looks like this now tests dotproduct too and was backported to 8.2 as a result. It's not in the Arm ARM beta yet though.

lib/Target/AArch64/AArch64SystemOperands.td
430 ↗(On Diff #112383)

You could add Op0, Op1, etc here, to keep things the same as above. This file doesn't seem to have the most consistent formatting, but it might as well look roughly the same.

Or maybe move it up into the ID_ISARx's above, if it's not JS specific.

Hi Dave,

Yes the dot product thing threw me, so I'll move the register to live with the other ISARs.

cheers,
sam

samparker updated this revision to Diff 113210.Aug 30 2017, 1:57 AM
samparker retitled this revision from [AArch64] Armv8.3-a IDSAR6 register support to [AArch64] IDSAR6 register assembler support.
samparker edited the summary of this revision. (Show Details)

Moved the register inline with the other ISAR regs and now predicate on v8.2.

dmgreen accepted this revision.Aug 30 2017, 2:04 AM

LGTM Thanks

This revision is now accepted and ready to land.Aug 30 2017, 2:04 AM
This revision was automatically updated to reflect the committed changes.