Author: Robert Imschweiler Date: 2025-02-23T21:24:30+01:00 New Revision: 54f13182cb208abd397347a63953d4b75f112e63
URL: https://github.com/llvm/llvm-project/commit/54f13182cb208abd397347a63953d4b75f112e63 DIFF: https://github.com/llvm/llvm-project/commit/54f13182cb208abd397347a63953d4b75f112e63.diff LOG: Revert "[AMDGPU] Add verification for amdgcn.init.exec.from.input (#128172)" This reverts commit cafad2b75a6e1c4957db1967cadeb002339887e3. Added: Modified: llvm/lib/IR/Verifier.cpp Removed: llvm/test/Verifier/AMDGPU/intrinsic-amdgpu-init-exec-from-input.ll ################################################################################ diff --git a/llvm/lib/IR/Verifier.cpp b/llvm/lib/IR/Verifier.cpp index 310a6735d55d6..58fd575e6e7e8 100644 --- a/llvm/lib/IR/Verifier.cpp +++ b/llvm/lib/IR/Verifier.cpp @@ -6371,14 +6371,6 @@ void Verifier::visitIntrinsicCall(Intrinsic::ID ID, CallBase &Call) { "llvm.amdgcn.cs.chain must be followed by unreachable", &Call); break; } - case Intrinsic::amdgcn_init_exec_from_input: { - const Argument *Arg = dyn_cast<Argument>(Call.getOperand(0)); - Check(Arg && Arg->hasInRegAttr(), - "only inreg arguments to the parent function are valid as inputs to " - "this intrinsic", - &Call); - break; - } case Intrinsic::amdgcn_set_inactive_chain_arg: { auto CallerCC = Call.getCaller()->getCallingConv(); switch (CallerCC) { diff --git a/llvm/test/Verifier/AMDGPU/intrinsic-amdgpu-init-exec-from-input.ll b/llvm/test/Verifier/AMDGPU/intrinsic-amdgpu-init-exec-from-input.ll deleted file mode 100644 index 11426041924e4..0000000000000 --- a/llvm/test/Verifier/AMDGPU/intrinsic-amdgpu-init-exec-from-input.ll +++ /dev/null @@ -1,25 +0,0 @@ -; RUN: not llvm-as -disable-output 2>&1 %s | FileCheck %s - -declare void @llvm.amdgcn.init.exec.from.input(i32, i32 immarg) - -; CHECK: only inreg arguments to the parent function are valid as inputs to this intrinsic -; CHECK-NEXT: call void @llvm.amdgcn.init.exec.from.input(i32 0, i32 0) -define void @init_exec_from_input_fail_constant() { - call void @llvm.amdgcn.init.exec.from.input(i32 0, i32 0) - ret void -} - -; CHECK: only inreg arguments to the parent function are valid as inputs to this intrinsic -; CHECK-NEXT: call void @llvm.amdgcn.init.exec.from.input(i32 %b, i32 0) -define void @init_exec_from_input_fail_not_inreg(i32 inreg %a, i32 %b) { - call void @llvm.amdgcn.init.exec.from.input(i32 %b, i32 0) - ret void -} - -; CHECK: only inreg arguments to the parent function are valid as inputs to this intrinsic -; CHECK-NEXT: call void @llvm.amdgcn.init.exec.from.input(i32 %c, i32 0) -define void @init_exec_from_input_fail_instruction(i32 inreg %a, i32 %b) { - %c = add i32 %a, %b - call void @llvm.amdgcn.init.exec.from.input(i32 %c, i32 0) - ret void -} _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits