[clang] [llvm] [PowerPC] Support for Packed BCD conversion builtins (PR #142723)
Lei Huang via llvm-commits
llvm-commits at lists.llvm.org
Fri Jun 6 08:25:43 PDT 2025
================
@@ -655,6 +655,14 @@ let TargetPrefix = "ppc" in { // All intrinsics start with "llvm.ppc.".
DefaultAttrsIntrinsic<[llvm_v1i128_ty],[llvm_v1i128_ty],[IntrNoMem]>;
// BCD intrinsics.
+ def int_ppc_national2packed: ClangBuiltin<"__builtin_ppc_national2packed">,
+ DefaultAttrsIntrinsic<[llvm_v16i8_ty],[llvm_v16i8_ty, llvm_i32_ty], [IntrNoMem, ImmArg<ArgIndex<1>>]>;
+ def int_ppc_packed2national: ClangBuiltin<"__builtin_ppc_packed2national">,
+ DefaultAttrsIntrinsic<[llvm_v16i8_ty],[llvm_v16i8_ty], [IntrNoMem]>;
+ def int_ppc_packed2zoned: ClangBuiltin<"__builtin_ppc_packed2zoned">,
+ DefaultAttrsIntrinsic<[llvm_v16i8_ty],[llvm_v16i8_ty, llvm_i32_ty], [IntrNoMem, ImmArg<ArgIndex<1>>]>;
+ def int_ppc_zoned2packed: ClangBuiltin<"__builtin_ppc_zoned2packed">,
+ DefaultAttrsIntrinsic<[llvm_v16i8_ty],[llvm_v16i8_ty, llvm_i32_ty], [IntrNoMem, ImmArg<ArgIndex<1>>]>;
----------------
lei137 wrote:
Can we use `llvm_any_ty` here instead of `llvm_i32_ty` so we don't need to custom lower the arg in the FE?
https://github.com/llvm/llvm-project/pull/142723
More information about the llvm-commits
mailing list