This is an archive of the discontinued LLVM Phabricator instance.

[flang] Add a subset of PowerPC vector store intrinsics
ClosedPublic

Authored by kkwli0 on Jul 26 2023, 7:16 AM.

Details

Summary

This patch adds vec_st, vec_ste, vec_stxv, vec_xst, vec_xst_be, vec_xstd2 and vec_xstw4.

Co-authored-by: @DanielCChen

Diff Detail

Event Timeline

kkwli0 created this revision.Jul 26 2023, 7:16 AM
kkwli0 requested review of this revision.Jul 26 2023, 7:16 AM
kkwli0 edited the summary of this revision. (Show Details)Jul 26 2023, 7:18 AM
kkwli0 added inline comments.Jul 26 2023, 7:22 AM
flang/lib/Optimizer/Builder/IntrinsicCall.cpp
5749 ↗(On Diff #544352)

This change is taken from D155725 in order to make this patch working. I will take this out once D155725 is landed.

kkwli0 updated this revision to Diff 548309.Aug 8 2023, 12:08 PM

Changes:

  • add vector element order handling
  • rebase
DanielCChen added inline comments.Aug 10 2023, 7:48 AM
flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
1889

vec_stxvp seems missing from this patch. Will you add it as an update?

flang/lib/Optimizer/Dialect/FIROps.cpp
1073 ↗(On Diff #548309)

I don't think this change is needed anymore.

1123 ↗(On Diff #548309)

This is also no longer needed.

kkwli0 marked 2 inline comments as done.Aug 10 2023, 10:35 AM
kkwli0 added inline comments.
flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
1889

I will add vec_stxvp in a separate patch if you're okay with it.

flang/lib/Optimizer/Dialect/FIROps.cpp
1073 ↗(On Diff #548309)

Yes, it is not needed.

1123 ↗(On Diff #548309)

Yes, it is not needed.

kkwli0 updated this revision to Diff 549095.Aug 10 2023, 10:39 AM
kkwli0 marked 2 inline comments as done.

Address review comment - remove the unnecessary changes in FIROps.cpp

DanielCChen accepted this revision.Aug 10 2023, 12:38 PM

LGTM.

flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
1889

Sure.

This revision is now accepted and ready to land.Aug 10 2023, 12:38 PM
This revision was automatically updated to reflect the committed changes.