This is an archive of the discontinued LLVM Phabricator instance.

[Power9] Implement new altivec instructions: bcd* series
ClosedPublic

Authored by cycheng on Mar 2 2016, 6:32 PM.

Details

Summary

This patch implements the following altivec instructions:

  • Decimal Convert From/to National/Zoned/Signed-QWord bcdcfn. bcdcfz. bcdctn. bcdctz. bcdcfsq. bcdctsq.
  • Decimal Copy-Sign/Set-Sign: bcdcpsgn. bcdsetsgn.
  • Decimal Shift/Unsigned-Shift/Shift-and-Round: bcds. bcdus. bcdsr.
  • Decimal (Unsigned) Truncate: bcdtrunc. bcdutrunc.

Total 13 instructions

Diff Detail

Event Timeline

cycheng updated this revision to Diff 49697.Mar 2 2016, 6:32 PM
cycheng retitled this revision from to [Power9] Implement new altivec instructions: bcd* series.
cycheng updated this object.
cycheng added a subscriber: llvm-commits.
amehsan added inline comments.Mar 3 2016, 4:28 PM
lib/Target/PowerPC/PPCInstrAltivec.td
1283

You can change the comment to "CR6 is set" to make it more understandable. Wording of ISA for bcdcfn. is: "CR field 6 is set to reflect src compared to zero".

1318

same here.

kbarton accepted this revision.Mar 25 2016, 9:49 PM
kbarton edited edge metadata.

LGTM

This revision is now accepted and ready to land.Mar 25 2016, 9:49 PM
cycheng marked 2 inline comments as done.Mar 28 2016, 2:11 AM

Committed r264568

lib/Target/PowerPC/PPCInstrAltivec.td
1283

Done! Thanks : )

cycheng closed this revision.Mar 31 2016, 5:25 PM
cycheng marked an inline comment as done.