================ @@ -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>>]>; ---------------- Himadhith wrote:
I did try to use `llvm_any_ty` before custom lowering in the backend. There was no build failure, but when testing it with clang with the following command: `clang -O2 -mcpu=pwr9 -c -S -emit-llvm test.c -o test.ll` I faced the following error: ``` Assertion failed: Index < Length && "Invalid index!", file /home/himadhit/llvm/BCD/llvm-project/llvm/include/llvm/ADT/ArrayRef.h, line 268, const T &llvm::ArrayRef<llvm::Type *>::operator[] (size_t) const [T = llvm::Type *]() ``` So no, `llvm_any_ty` would not work here. https://github.com/llvm/llvm-project/pull/142723 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits