[all-commits] [llvm/llvm-project] 15fefc: [opt] Directly translate -O# to -passes='default<O#>'

aeubanks via All-commits all-commits at lists.llvm.org
Mon Oct 18 16:51:28 PDT 2021


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 15fefcb9eb3a2b9080b44e3784608597666000ec
      https://github.com/llvm/llvm-project/commit/15fefcb9eb3a2b9080b44e3784608597666000ec
  Author: Arthur Eubanks <aeubanks at google.com>
  Date:   2021-10-18 (Mon, 18 Oct 2021)

  Changed paths:
    M llvm/test/CodeGen/AMDGPU/extra-sroa-after-unroll.ll
    M llvm/test/CodeGen/AMDGPU/r600.amdgpu-alias-analysis.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect-arch.ll
    M llvm/test/CodeGen/NVPTX/nvvm-reflect.ll
    M llvm/test/Instrumentation/MemorySanitizer/msan_llvm_launder_invariant.ll
    M llvm/test/Instrumentation/MemorySanitizer/msan_llvm_strip_invariant.ll
    A llvm/test/Other/opt-On.ll
    M llvm/test/Transforms/GlobalOpt/long-compilation-global-sra.ll
    M llvm/test/Transforms/Inline/devirtualize-3.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/reg-usage.ll
    M llvm/test/Transforms/LoopVectorize/PowerPC/widened-massv-call.ll
    M llvm/test/Transforms/LoopVectorize/X86/float-induction-x86.ll
    M llvm/test/Transforms/LoopVectorize/X86/metadata-enable.ll
    M llvm/test/Transforms/LoopVectorize/X86/x86_fp80-vector-store.ll
    M llvm/test/Transforms/LoopVectorize/global_alias.ll
    M llvm/test/Transforms/LoopVersioningLICM/loopversioningLICM3.ll
    M llvm/test/Transforms/LoopVersioningLICM/metadata.ll
    M llvm/test/Transforms/MergeFunc/mergefunc-preserve-debug-info.ll
    M llvm/tools/opt/opt.cpp

  Log Message:
  -----------
  [opt] Directly translate -O# to -passes='default<O#>'

Right now when we see -O# we add the corresponding 'default<O#>' into
the list of passes to run when translating legacy -pass-name. This has
the side effect of not using the default AA pipeline.

Instead, treat -O# as -passes='default<O#>', but don't allow any other
-passes or -pass-name. I think we can keep `opt -O#` as shorthand for
`opt -passes='default<O#>` but disallow anything more than just -O#.

Tests need to be updated to not use `opt -O# -pass-name`.

Reviewed By: asbirlea

Differential Revision: https://reviews.llvm.org/D112036




More information about the All-commits mailing list