This is an archive of the discontinued LLVM Phabricator instance.

[PowerPC][Power10] Add Vector Splat Immediate, Permute, Blend, Shift Double Bit immediate Instruction Definitions and MC Tests
ClosedPublic

Authored by amyk on Jun 30 2020, 11:19 AM.

Details

Summary

This patch adds the td definitions and asm/disasm tests for the following instructions:

XXSPLTIW
XXSPLTIDP
XXSPLTI32DX

XXPERMX

XXBLENDVB
XXBLENDVH
XXBLENDVW
XXBLENDVD

VSLDBI
VSRDBI

Diff Detail

Event Timeline

amyk created this revision.Jun 30 2020, 11:19 AM
lei accepted this revision as: lei.Jun 30 2020, 11:39 AM

LGTM other then the minor nit that can be address on commit.

llvm/lib/Target/PowerPC/PPCInstrPrefix.td
331

nit... wondering if we can reorder this 2 class def so its:

class 8RR_XX4_XTABC6
....
class 8RR_XX4_IMM3_XTABC6
...

Seems like the class defined on line 180 class 8RR_XX4Form_IMM8_XTAB6 should of been named class 8RR_XX4Form_IMM8_XTABC6?

If so it would be good if these are defined in order.
What's the diff in XX4 vs XX4Form in the naming?

This revision is now accepted and ready to land.Jun 30 2020, 11:39 AM
amyk marked an inline comment as done.Jun 30 2020, 11:53 AM
amyk added inline comments.
llvm/lib/Target/PowerPC/PPCInstrPrefix.td
331

Sure, I can reorder it so the IMM version comes after.
I believe XX4 and XX4Form is referring to the same form. I think it's likely we forgot to put Form.

This revision was automatically updated to reflect the committed changes.