This patch adds 2 more PowerPC vector intrinsics
vec_cvspbf16
vec_cvbf16spn
These two are for Power10 only. The checking code along with other similar vector or mma intrinsics will be in a separate patch.
Paths
| Differential D156243
[flang] Add two more PowerPC vector intrinsics ClosedPublic Authored by DanielCChen on Jul 25 2023, 8:14 AM.
Details Summary This patch adds 2 more PowerPC vector intrinsics vec_cvspbf16 These two are for Power10 only. The checking code along with other similar vector or mma intrinsics will be in a separate patch.
Diff Detail Event TimelineHerald added subscribers: sunshaoce, mehdi_amini, steven.zhang and 3 others. · View Herald Transcript Comment Actions Can you prioritise the checking code? The in-tree flang intrinsics may crash on my fictitious PowerPC Apple and your Power 9. Comment Actions
I see. Since this patch seems small enough, I will include the checking code with this patch.
DanielCChen marked 2 inline comments as done. Comment ActionsTo address review comments.
Comment Actions Remove check for mma intrinsics from this patch. It will be added back in with the MMA intrinsic patch. DanielCChen marked an inline comment as done. Comment ActionsFix the build failure due to chang-format checking.
Comment Actions
Thanks! I will remove the code for now then as it is a cleaner approach. Comment Actions To remove the pwr10 check as we plan to do it as target feature checking as in clang. This revision is now accepted and ready to land.Aug 3 2023, 5:23 AM Comment Actions
Thanks. I will wait for one more day to see if there are any further comments. Closed by commit rGfacfbc9c4a70: [flang] Add PowerPC vec_cvbf16spn and vec_cvspbf16 intrinsic (authored by kkwli0). · Explain WhyAug 9 2023, 1:11 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 544769 flang/include/flang/Evaluate/target.h
flang/include/flang/Semantics/expression.h
flang/lib/Frontend/CompilerInvocation.cpp
flang/lib/Optimizer/Builder/PPCIntrinsicCall.cpp
flang/lib/Semantics/check-call.h
flang/lib/Semantics/check-call.cpp
flang/lib/Semantics/expression.cpp
flang/module/__ppc_intrinsics.f90
flang/test/Lower/PowerPC/ppc-pwr10-vec-intrinsics.f90
flang/test/Semantics/PowerPC/ppc-intrinsic-cpu-check.f90
|
Why are they moved from the original location?