Author: paperchalice Date: 2024-09-04T21:56:16+08:00 New Revision: 31eaa4e9440ef2af226f1a0ceed6d6d625b0e25a
URL: https://github.com/llvm/llvm-project/commit/31eaa4e9440ef2af226f1a0ceed6d6d625b0e25a DIFF: https://github.com/llvm/llvm-project/commit/31eaa4e9440ef2af226f1a0ceed6d6d625b0e25a.diff LOG: Revert "[llc] Provide `opt` like verifier options (#106665)" This reverts commit 69657eb7f67600ec1c5c449d13eef3670dfb64da. Added: Modified: llvm/include/llvm/Passes/CodeGenPassBuilder.h llvm/test/CodeGen/AArch64/PHIElimination-crash.mir llvm/test/CodeGen/AArch64/PHIElimination-debugloc.mir llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir llvm/test/CodeGen/AMDGPU/early-lis-two-address-partial-def.mir llvm/test/CodeGen/AMDGPU/gfx10-twoaddr-fma.mir llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir llvm/test/CodeGen/AMDGPU/phi-elimination-end-cf.mir llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir llvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir llvm/test/CodeGen/AMDGPU/twoaddr-mad.mir llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir llvm/test/CodeGen/Hexagon/two-addr-tied-subregs.mir llvm/test/CodeGen/PowerPC/2013-07-01-PHIElimBug.mir llvm/test/CodeGen/PowerPC/livevars-crash1.mir llvm/test/CodeGen/PowerPC/livevars-crash2.mir llvm/test/CodeGen/X86/distancemap.mir llvm/test/CodeGen/X86/phielim-undef.mir llvm/test/CodeGen/X86/twoaddr-mul2.mir llvm/test/tools/llc/new-pm/pipeline.mir llvm/test/tools/llc/new-pm/verify.mir llvm/tools/llc/NewPMDriver.cpp llvm/tools/llc/NewPMDriver.h llvm/tools/llc/llc.cpp Removed: ################################################################################ diff --git a/llvm/include/llvm/Passes/CodeGenPassBuilder.h b/llvm/include/llvm/Passes/CodeGenPassBuilder.h index a99fed86d168d1..353a5979865374 100644 --- a/llvm/include/llvm/Passes/CodeGenPassBuilder.h +++ b/llvm/include/llvm/Passes/CodeGenPassBuilder.h @@ -550,9 +550,6 @@ Error CodeGenPassBuilder<Derived, TargetMachineT>::buildPipeline( if (auto Err = derived().addMachinePasses(addPass)) return std::move(Err); - if (!Opt.DisableVerify) - addPass(MachineVerifierPass()); - if (PrintAsm) { derived().addAsmPrinter( addPass, [this, &Out, DwoOut, FileType](MCContext &Ctx) { diff --git a/llvm/test/CodeGen/AArch64/PHIElimination-crash.mir b/llvm/test/CodeGen/AArch64/PHIElimination-crash.mir index 4e09580aeb218a..8f43686429268b 100644 --- a/llvm/test/CodeGen/AArch64/PHIElimination-crash.mir +++ b/llvm/test/CodeGen/AArch64/PHIElimination-crash.mir @@ -1,7 +1,7 @@ # RUN: llc -mtriple=aarch64-linux-gnu -verify-machineinstrs -o /dev/null %s \ # RUN: -run-pass=livevars,phi-node-elimination,twoaddressinstruction \ # RUN: -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 -# RUN: llc -mtriple=aarch64-linux-gnu -verify-each -o /dev/null %s \ +# RUN: llc -mtriple=aarch64-linux-gnu -verify-machineinstrs -o /dev/null %s \ # RUN: --passes='require<live-vars>,phi-node-elimination,two-address-instruction' \ # RUN: -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 diff --git a/llvm/test/CodeGen/AArch64/PHIElimination-debugloc.mir b/llvm/test/CodeGen/AArch64/PHIElimination-debugloc.mir index 01c44e3f253bb0..9b8283352161ac 100644 --- a/llvm/test/CodeGen/AArch64/PHIElimination-debugloc.mir +++ b/llvm/test/CodeGen/AArch64/PHIElimination-debugloc.mir @@ -2,7 +2,7 @@ # RUN: -run-pass=livevars,phi-node-elimination,twoaddressinstruction \ # RUN: -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 \ # RUN: | FileCheck %s -# RUN: llc -mtriple=aarch64-linux-gnu -verify-each -o - %s \ +# RUN: llc -mtriple=aarch64-linux-gnu -verify-machineinstrs -o - %s \ # RUN: --passes='require<live-vars>,phi-node-elimination,two-address-instruction' \ # RUN: -no-phi-elim-live-out-early-exit=1 -phi-elim-split-all-critical-edges=1 \ # RUN: | FileCheck %s diff --git a/llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir b/llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir index c1ddc9c14d814b..c483d669a27584 100644 --- a/llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir +++ b/llvm/test/CodeGen/AArch64/statepoint-twoaddr.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc -mtriple=aarch64-unknown-linux -run-pass=twoaddressinstruction -verify-machineinstrs %s -o - | FileCheck %s -# RUN: llc -mtriple=aarch64-unknown-linux --passes=two-address-instruction -verify-each %s -o - | FileCheck %s +# RUN: llc -mtriple=aarch64-unknown-linux --passes=two-address-instruction %s -o - | FileCheck %s # REQUIRES: aarch64-registered-target # Verify that the register class is correctly constrained after the twoaddress replacement diff --git a/llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir b/llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir index 75148ecff5377a..e84c51b73ad1e9 100644 --- a/llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir +++ b/llvm/test/CodeGen/AMDGPU/GlobalISel/twoaddr-extract-dyn-v7f64.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 4 # RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx900 -early-live-intervals -run-pass=liveintervals -run-pass=twoaddressinstruction -verify-machineinstrs -o - %s | FileCheck %s -# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx900 -passes='require<live-intervals>,two-address-instruction' -verify-each -o - %s | FileCheck %s +# RUN: llc -mtriple=amdgcn-mesa-mesa3d -mcpu=gfx900 -passes='require<live-intervals>,two-address-instruction' -o - %s | FileCheck %s --- name: dyn_extract_v7f64_v_v diff --git a/llvm/test/CodeGen/AMDGPU/early-lis-two-address-partial-def.mir b/llvm/test/CodeGen/AMDGPU/early-lis-two-address-partial-def.mir index 186b171f4e8056..bf111d19f2147b 100644 --- a/llvm/test/CodeGen/AMDGPU/early-lis-two-address-partial-def.mir +++ b/llvm/test/CodeGen/AMDGPU/early-lis-two-address-partial-def.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 4 # RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a -run-pass=liveintervals -run-pass=twoaddressinstruction -verify-machineinstrs -o - %s | FileCheck --check-prefix=GFX90A %s -# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a --passes='require<live-intervals>,two-address-instruction' -verify-each -o - %s | FileCheck --check-prefix=GFX90A %s +# RUN: llc -mtriple=amdgcn-amd-amdhsa -mcpu=gfx90a --passes='require<live-intervals>,two-address-instruction' -o - %s | FileCheck --check-prefix=GFX90A %s --- name: aligned_partial_vgpr_64 diff --git a/llvm/test/CodeGen/AMDGPU/gfx10-twoaddr-fma.mir b/llvm/test/CodeGen/AMDGPU/gfx10-twoaddr-fma.mir index 1768e39d1a06c5..0f20b8a2f1e29f 100644 --- a/llvm/test/CodeGen/AMDGPU/gfx10-twoaddr-fma.mir +++ b/llvm/test/CodeGen/AMDGPU/gfx10-twoaddr-fma.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck --check-prefixes=GFX10 %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s --passes=two-address-instruction -verify-each -o - | FileCheck --check-prefixes=GFX10 %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s --passes=two-address-instruction -o - | FileCheck --check-prefixes=GFX10 %s # GFX10-LABEL: name: test_fmamk_reg_imm_f16 # GFX10: %2:vgpr_32 = IMPLICIT_DEF diff --git a/llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir b/llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir index 820b8579bd0a49..91ade8806e4d1a 100644 --- a/llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir +++ b/llvm/test/CodeGen/AMDGPU/gfx11-twoaddr-fma.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck --check-prefixes=GFX11 %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -verify-each -o - | FileCheck --check-prefixes=GFX11 %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -verify-machineinstrs -o - | FileCheck --check-prefixes=GFX11 %s --- name: test_fmamk_reg_imm_f16 diff --git a/llvm/test/CodeGen/AMDGPU/phi-elimination-end-cf.mir b/llvm/test/CodeGen/AMDGPU/phi-elimination-end-cf.mir index 829d01d8e1c365..8b009978055ac6 100644 --- a/llvm/test/CodeGen/AMDGPU/phi-elimination-end-cf.mir +++ b/llvm/test/CodeGen/AMDGPU/phi-elimination-end-cf.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple amdgcn -run-pass livevars -run-pass phi-node-elimination -verify-machineinstrs -o - %s | FileCheck %s -# RUN: llc -mtriple amdgcn --passes='require<live-vars>,phi-node-elimination' -verify-each -o - %s | FileCheck %s +# RUN: llc -mtriple amdgcn --passes='require<live-vars>,phi-node-elimination' -o - %s | FileCheck %s # CHECK-LABEL: phi-cf-test # CHECK: bb.0: diff --git a/llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir b/llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir index 0ee768466509ae..dfeca8db0b464e 100644 --- a/llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir +++ b/llvm/test/CodeGen/AMDGPU/split-mbb-lis-subrange.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2 # RUN: llc -mtriple=amdgcn -mcpu=gfx1100 -verify-machineinstrs -run-pass liveintervals,phi-node-elimination -o - %s | FileCheck -check-prefixes=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 --passes='require<live-intervals>,phi-node-elimination' -verify-each -o - %s | FileCheck -check-prefixes=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 --passes='require<live-intervals>,phi-node-elimination' -o - %s | FileCheck -check-prefixes=GCN %s # This checks liveintervals pass verification and phi-node-elimination correctly preserves them. diff --git a/llvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir b/llvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir index 77032ffcf18a91..4bb0046c0ee01a 100644 --- a/llvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir +++ b/llvm/test/CodeGen/AMDGPU/stale-livevar-in-twoaddr-pass.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx900 -run-pass=livevars,phi-node-elimination,twoaddressinstruction -verify-machineinstrs -o - %s | FileCheck %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx900 --passes='require<live-vars>,phi-node-elimination,two-address-instruction' -verify-each -o - %s | FileCheck %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx900 --passes='require<live-vars>,phi-node-elimination,two-address-instruction' -verify-machineinstrs -o - %s | FileCheck %s # This used to fail under ASAN enabled build because we didn't update LiveVariables in SIInstrInfo::convertToThreeAddress() # CHECK: _amdgpu_ps_main diff --git a/llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir b/llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir index b0a75a526cf2b7..ab6d207cd96686 100644 --- a/llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir +++ b/llvm/test/CodeGen/AMDGPU/twoaddr-fma-f64.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx90a %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck -check-prefix=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx90a %s --passes=two-address-instruction -verify-each -o - | FileCheck -check-prefix=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx90a %s --passes=two-address-instruction -o - | FileCheck -check-prefix=GCN %s # GCN-LABEL: name: test_fmamk_reg_imm_f64 # GCN: V_FMA_F64_e64 0, killed %0, 0, %2, 0, killed %1, 0, 0, implicit $mode, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir b/llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir index 1c444eca7675ca..daac34bab0fd0e 100644 --- a/llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir +++ b/llvm/test/CodeGen/AMDGPU/twoaddr-fma.mir @@ -1,7 +1,7 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck --check-prefixes=GCN %s # RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck --check-prefixes=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s --passes=two-address-instruction -verify-each -o - | FileCheck --check-prefixes=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -verify-each -o - | FileCheck --check-prefixes=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1010 %s --passes=two-address-instruction -o - | FileCheck --check-prefixes=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -o - | FileCheck --check-prefixes=GCN %s # GCN-LABEL: name: test_fmamk_reg_imm_f32 # GCN: %2:vgpr_32 = IMPLICIT_DEF diff --git a/llvm/test/CodeGen/AMDGPU/twoaddr-mad.mir b/llvm/test/CodeGen/AMDGPU/twoaddr-mad.mir index 9b1deb9aa9f730..7062878a846097 100644 --- a/llvm/test/CodeGen/AMDGPU/twoaddr-mad.mir +++ b/llvm/test/CodeGen/AMDGPU/twoaddr-mad.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx900 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck -check-prefix=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx900 %s --passes=two-address-instruction -verify-each -o - | FileCheck -check-prefix=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx900 %s --passes=two-address-instruction -o - | FileCheck -check-prefix=GCN %s # GCN-LABEL: name: test_madmk_reg_imm_f32 # GCN: V_MADMK_F32 killed %0.sub0, 1078523331, killed %1, implicit $mode, implicit $exec diff --git a/llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir b/llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir index 98d2eca213aae1..5fbb149548909d 100644 --- a/llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir +++ b/llvm/test/CodeGen/AMDGPU/twoaddr-wmma.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s -run-pass twoaddressinstruction -verify-machineinstrs -o - | FileCheck -check-prefix=GCN %s -# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -verify-each -o - | FileCheck -check-prefix=GCN %s +# RUN: llc -mtriple=amdgcn -mcpu=gfx1100 %s --passes=two-address-instruction -o - | FileCheck -check-prefix=GCN %s # GCN-LABEL: name: test_v_wmma_f32_16x16x16_f16_twoaddr_w32 # GCN: early-clobber %2:vreg_256 = V_WMMA_F32_16X16X16_F16_threeaddr_w32 8, killed %1, 8, killed %1, 8, %0, 0, 0, implicit $exec diff --git a/llvm/test/CodeGen/Hexagon/two-addr-tied-subregs.mir b/llvm/test/CodeGen/Hexagon/two-addr-tied-subregs.mir index d5753491dbad1b..c533a5a167ab2f 100644 --- a/llvm/test/CodeGen/Hexagon/two-addr-tied-subregs.mir +++ b/llvm/test/CodeGen/Hexagon/two-addr-tied-subregs.mir @@ -1,5 +1,5 @@ # RUN: llc -march hexagon -run-pass livevars -run-pass twoaddressinstruction -verify-machineinstrs -o - %s | FileCheck %s -# RUN: llc -march hexagon --passes='require<live-vars>,two-address-instruction' -verify-each -o - %s | FileCheck %s +# RUN: llc -march hexagon --passes='require<live-vars>,two-address-instruction' -o - %s | FileCheck %s ############################################################################### diff --git a/llvm/test/CodeGen/PowerPC/2013-07-01-PHIElimBug.mir b/llvm/test/CodeGen/PowerPC/2013-07-01-PHIElimBug.mir index 8bdf719f4bb5be..2a669ed6b03a15 100644 --- a/llvm/test/CodeGen/PowerPC/2013-07-01-PHIElimBug.mir +++ b/llvm/test/CodeGen/PowerPC/2013-07-01-PHIElimBug.mir @@ -1,5 +1,5 @@ # RUN: llc -mtriple powerpc64-unknown-linux-gnu -run-pass livevars -run-pass phi-node-elimination -verify-machineinstrs -o - %s | FileCheck %s -# RUN: llc -mtriple powerpc64-unknown-linux-gnu --passes='require<live-vars>,phi-node-elimination' -verify-each -o - %s | FileCheck %s +# RUN: llc -mtriple powerpc64-unknown-linux-gnu --passes='require<live-vars>,phi-node-elimination' -o - %s | FileCheck %s # This test case was originally known as # test/CodeGen/PowerPC/2013-07-01-PHIElimBug.ll diff --git a/llvm/test/CodeGen/PowerPC/livevars-crash1.mir b/llvm/test/CodeGen/PowerPC/livevars-crash1.mir index ec01a3c326cfa2..68d2e5a627e9d5 100644 --- a/llvm/test/CodeGen/PowerPC/livevars-crash1.mir +++ b/llvm/test/CodeGen/PowerPC/livevars-crash1.mir @@ -2,7 +2,7 @@ # RUN: -run-pass=livevars,phi-node-elimination -verify-machineinstrs | \ # RUN: FileCheck %s # RUN: llc -mtriple powerpc64le-unknown-linux-gnu %s -o - 2>&1 \ -# RUN: --passes='require<live-vars>,phi-node-elimination' -verify-each | \ +# RUN: --passes='require<live-vars>,phi-node-elimination' | \ # RUN: FileCheck %s --- | diff --git a/llvm/test/CodeGen/PowerPC/livevars-crash2.mir b/llvm/test/CodeGen/PowerPC/livevars-crash2.mir index deaae3936cefb1..e165c85d5b72a5 100644 --- a/llvm/test/CodeGen/PowerPC/livevars-crash2.mir +++ b/llvm/test/CodeGen/PowerPC/livevars-crash2.mir @@ -2,7 +2,7 @@ # RUN: -run-pass=livevars,phi-node-elimination -verify-machineinstrs | \ # RUN: FileCheck %s # RUN: llc -mtriple powerpc64le-unknown-linux-gnu %s -o - 2>&1 \ -# RUN: --passes='require<live-vars>,phi-node-elimination' -verify-each | \ +# RUN: --passes='require<live-vars>,phi-node-elimination' | \ # RUN: FileCheck %s --- | diff --git a/llvm/test/CodeGen/X86/distancemap.mir b/llvm/test/CodeGen/X86/distancemap.mir index 8b0c4bfe9d000a..0a2f422302bd3a 100644 --- a/llvm/test/CodeGen/X86/distancemap.mir +++ b/llvm/test/CodeGen/X86/distancemap.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc %s -o - -mtriple=x86_64-unknown-linux -run-pass=twoaddressinstruction -verify-machineinstrs | FileCheck %s -# RUN: llc %s -o - -mtriple=x86_64-unknown-linux --passes=two-address-instruction -verify-each | FileCheck %s +# RUN: llc %s -o - -mtriple=x86_64-unknown-linux --passes=two-address-instruction | FileCheck %s # In TwoAddressInstructionPass, new instructions should be added to DistanceMap. # In this case, function convertInstTo3Addr is called on the first ADD diff --git a/llvm/test/CodeGen/X86/phielim-undef.mir b/llvm/test/CodeGen/X86/phielim-undef.mir index 1200449b49c785..cebc725537d0ed 100644 --- a/llvm/test/CodeGen/X86/phielim-undef.mir +++ b/llvm/test/CodeGen/X86/phielim-undef.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc -mtriple=x86_64-- -verify-machineinstrs -o - %s -run-pass=livevars,phi-node-elimination,twoaddressinstruction | FileCheck %s -# RUN: llc -mtriple=x86_64-- -verify-machineinstrs -o - %s --passes='require<live-vars>,phi-node-elimination,two-address-instruction' -verify-each | FileCheck %s +# RUN: llc -mtriple=x86_64-- -verify-machineinstrs -o - %s --passes='require<live-vars>,phi-node-elimination,two-address-instruction' | FileCheck %s --- | @b114 = external global i16, align 1 diff --git a/llvm/test/CodeGen/X86/twoaddr-mul2.mir b/llvm/test/CodeGen/X86/twoaddr-mul2.mir index b24c893cc11fc4..e21005fa92397d 100644 --- a/llvm/test/CodeGen/X86/twoaddr-mul2.mir +++ b/llvm/test/CodeGen/X86/twoaddr-mul2.mir @@ -1,6 +1,6 @@ # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py # RUN: llc -mtriple=x86_64-unknown -mcpu=haswell -run-pass=twoaddressinstruction -verify-machineinstrs %s -o - | FileCheck %s -# RUN: llc -mtriple=x86_64-unknown -mcpu=haswell --passes=two-address-instruction -verify-each %s -o - | FileCheck %s +# RUN: llc -mtriple=x86_64-unknown -mcpu=haswell --passes=two-address-instruction -verify-machineinstrs %s -o - | FileCheck %s # Check that we don't have any uses of [[COPY]] after it is killed. --- diff --git a/llvm/test/tools/llc/new-pm/pipeline.mir b/llvm/test/tools/llc/new-pm/pipeline.mir index 761a3a424ee678..ee058f763b7793 100644 --- a/llvm/test/tools/llc/new-pm/pipeline.mir +++ b/llvm/test/tools/llc/new-pm/pipeline.mir @@ -1,7 +1,7 @@ # RUN: llc -mtriple=x86_64-pc-linux-gnu -x mir -passes=no-op-machine-function --print-pipeline-passes -filetype=null < %s | FileCheck %s --match-full-lines # RUN: llc -mtriple=x86_64-pc-linux-gnu -x mir -passes='require<machine-dom-tree>,print<machine-dom-tree>' -print-pipeline-passes < %s | FileCheck --check-prefix=ANALYSIS %s -# CHECK: function(machine-function(no-op-machine-function)),PrintMIRPreparePass,function(machine-function(verify,print)) +# CHECK: function(machine-function(no-op-machine-function)),PrintMIRPreparePass,function(machine-function(print)) # ANALYSIS: require<machine-dom-tree>,print<machine-dom-tree> diff --git a/llvm/test/tools/llc/new-pm/verify.mir b/llvm/test/tools/llc/new-pm/verify.mir index 6aa4362811e041..0cc7fc837e5bed 100644 --- a/llvm/test/tools/llc/new-pm/verify.mir +++ b/llvm/test/tools/llc/new-pm/verify.mir @@ -1,4 +1,4 @@ -# RUN: not --crash llc -mtriple=x86_64-pc-linux-gnu -debug-pass-manager -passes='module(function(machine-function(trigger-verifier-error)))' -verify-each -filetype=null %s 2>&1 | FileCheck %s +# RUN: not --crash llc -mtriple=x86_64-pc-linux-gnu -debug-pass-manager -passes='module(function(machine-function(trigger-verifier-error)))' -filetype=null %s 2>&1 | FileCheck %s # CHECK: Verifying machine function f # CHECK: Broken machine function found after pass "TriggerVerifierErrorPass" diff --git a/llvm/tools/llc/NewPMDriver.cpp b/llvm/tools/llc/NewPMDriver.cpp index 2a49eaff1d7cbc..c8088da49a2784 100644 --- a/llvm/tools/llc/NewPMDriver.cpp +++ b/llvm/tools/llc/NewPMDriver.cpp @@ -18,10 +18,8 @@ #include "llvm/CodeGen/CommandFlags.h" #include "llvm/CodeGen/MIRParser/MIRParser.h" #include "llvm/CodeGen/MIRPrinter.h" -#include "llvm/CodeGen/MachineFunctionAnalysis.h" #include "llvm/CodeGen/MachineModuleInfo.h" #include "llvm/CodeGen/MachinePassManager.h" -#include "llvm/CodeGen/MachineVerifier.h" #include "llvm/CodeGen/TargetPassConfig.h" #include "llvm/IR/DiagnosticInfo.h" #include "llvm/IR/DiagnosticPrinter.h" @@ -31,6 +29,7 @@ #include "llvm/IR/PassManager.h" #include "llvm/IR/Verifier.h" #include "llvm/IRReader/IRReader.h" +#include "llvm/Passes/CodeGenPassBuilder.h" // TODO: Include pass headers properly. #include "llvm/Passes/PassBuilder.h" #include "llvm/Passes/StandardInstrumentations.h" #include "llvm/Support/CommandLine.h" @@ -89,7 +88,7 @@ int llvm::compileModuleWithNewPM( StringRef Arg0, std::unique_ptr<Module> M, std::unique_ptr<MIRParser> MIR, std::unique_ptr<TargetMachine> Target, std::unique_ptr<ToolOutputFile> Out, std::unique_ptr<ToolOutputFile> DwoOut, LLVMContext &Context, - const TargetLibraryInfoImpl &TLII, VerifierKind VK, StringRef PassPipeline, + const TargetLibraryInfoImpl &TLII, bool NoVerify, StringRef PassPipeline, CodeGenFileType FileType) { if (!PassPipeline.empty() && TargetPassConfig::hasLimitedCodeGenPipeline()) { @@ -105,15 +104,14 @@ int llvm::compileModuleWithNewPM( // Fetch options from TargetPassConfig CGPassBuilderOption Opt = getCGPassBuilderOption(); - Opt.DisableVerify = VK != VerifierKind::InputOutput; + Opt.DisableVerify = NoVerify; Opt.DebugPM = DebugPM; Opt.RegAlloc = RegAlloc; MachineModuleInfo MMI(&LLVMTM); PassInstrumentationCallbacks PIC; - StandardInstrumentations SI(Context, Opt.DebugPM, - VK == VerifierKind::EachPass); + StandardInstrumentations SI(Context, Opt.DebugPM, !NoVerify); registerCodeGenCallback(PIC, LLVMTM); MachineFunctionAnalysisManager MFAM; @@ -149,8 +147,6 @@ int llvm::compileModuleWithNewPM( ExitOnErr(PB.parsePassPipeline(MPM, PassPipeline)); MPM.addPass(PrintMIRPreparePass(*OS)); MachineFunctionPassManager MFPM; - if (VK == VerifierKind::InputOutput) - MFPM.addPass(MachineVerifierPass()); MFPM.addPass(PrintMIRPass(*OS)); FPM.addPass(createFunctionToMachineFunctionPassAdaptor(std::move(MFPM))); MPM.addPass(createModuleToFunctionPassAdaptor(std::move(FPM))); diff --git a/llvm/tools/llc/NewPMDriver.h b/llvm/tools/llc/NewPMDriver.h index c8a60223cb2962..b0beeaf596c8fd 100644 --- a/llvm/tools/llc/NewPMDriver.h +++ b/llvm/tools/llc/NewPMDriver.h @@ -32,8 +32,6 @@ class ToolOutputFile; class LLVMContext; class MIRParser; -enum class VerifierKind { None, InputOutput, EachPass }; - struct LLCDiagnosticHandler : public DiagnosticHandler { bool handleDiagnostics(const DiagnosticInfo &DI) override; }; @@ -44,7 +42,7 @@ int compileModuleWithNewPM(StringRef Arg0, std::unique_ptr<Module> M, std::unique_ptr<ToolOutputFile> Out, std::unique_ptr<ToolOutputFile> DwoOut, LLVMContext &Context, - const TargetLibraryInfoImpl &TLII, VerifierKind VK, + const TargetLibraryInfoImpl &TLII, bool NoVerify, StringRef PassPipeline, CodeGenFileType FileType); } // namespace llvm diff --git a/llvm/tools/llc/llc.cpp b/llvm/tools/llc/llc.cpp index 3f27a5fd1a0eb9..80c84a977c26c6 100644 --- a/llvm/tools/llc/llc.cpp +++ b/llvm/tools/llc/llc.cpp @@ -130,9 +130,6 @@ static cl::opt<std::string> SplitDwarfFile( static cl::opt<bool> NoVerify("disable-verify", cl::Hidden, cl::desc("Do not verify input module")); -static cl::opt<bool> VerifyEach("verify-each", - cl::desc("Verify after each transform")); - static cl::opt<bool> DisableSimplifyLibCalls("disable-simplify-libcalls", cl::desc("Disable simplify-libcalls")); @@ -650,16 +647,10 @@ static int compileModule(char **argv, LLVMContext &Context) { WithColor::warning(errs(), argv[0]) << ": warning: ignoring -mc-relax-all because filetype != obj"; - VerifierKind VK = VerifierKind::InputOutput; - if (NoVerify) - VK = VerifierKind::None; - else if (VerifyEach) - VK = VerifierKind::EachPass; - if (EnableNewPassManager || !PassPipeline.empty()) { return compileModuleWithNewPM(argv[0], std::move(M), std::move(MIR), std::move(Target), std::move(Out), - std::move(DwoOut), Context, TLII, VK, + std::move(DwoOut), Context, TLII, NoVerify, PassPipeline, codegen::getFileType()); } _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits