[all-commits] [llvm/llvm-project] a5c23d: [NFC][SimplifyCFG] Autogenerate checklines in some...

Roman Lebedev via All-commits all-commits at lists.llvm.org
Thu Jan 12 13:42:35 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: a5c23d55842a31eb83b7968866e69d1731411580
      https://github.com/llvm/llvm-project/commit/a5c23d55842a31eb83b7968866e69d1731411580
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2023-01-13 (Fri, 13 Jan 2023)

  Changed paths:
    M llvm/test/Transforms/SimplifyCFG/2011-09-05-TrivialLPad.ll
    M llvm/test/Transforms/SimplifyCFG/UnreachableEliminate.ll
    M llvm/test/Transforms/SimplifyCFG/X86/2010-03-30-InvokeCrash.ll
    M llvm/test/Transforms/SimplifyCFG/X86/bug-25299.ll
    M llvm/test/Transforms/SimplifyCFG/X86/empty-cleanuppad.ll
    M llvm/test/Transforms/SimplifyCFG/empty-catchpad.ll
    M llvm/test/Transforms/SimplifyCFG/invoke_unwind.ll
    M llvm/test/Transforms/SimplifyCFG/invoke_unwind_lifetime.ll
    M llvm/test/Transforms/SimplifyCFG/lifetime-landingpad.ll
    M llvm/test/Transforms/SimplifyCFG/wineh-unreachable.ll

  Log Message:
  -----------
  [NFC][SimplifyCFG] Autogenerate checklines in some tests that eliminate unwind edges


  Commit: 3c5b1f2d94d021005ce3769a4402d4a4ae843989
      https://github.com/llvm/llvm-project/commit/3c5b1f2d94d021005ce3769a4402d4a4ae843989
  Author: Roman Lebedev <lebedev.ri at gmail.com>
  Date:   2023-01-13 (Fri, 13 Jan 2023)

  Changed paths:
    M llvm/include/llvm/Transforms/Utils/Local.h
    M llvm/lib/Transforms/Utils/Local.cpp
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/2011-09-05-TrivialLPad.ll
    M llvm/test/Transforms/SimplifyCFG/UnreachableEliminate.ll
    M llvm/test/Transforms/SimplifyCFG/X86/2010-03-30-InvokeCrash.ll
    M llvm/test/Transforms/SimplifyCFG/X86/bug-25299.ll
    M llvm/test/Transforms/SimplifyCFG/X86/empty-cleanuppad.ll
    M llvm/test/Transforms/SimplifyCFG/empty-catchpad.ll
    M llvm/test/Transforms/SimplifyCFG/invoke_unwind.ll
    M llvm/test/Transforms/SimplifyCFG/invoke_unwind_lifetime.ll
    M llvm/test/Transforms/SimplifyCFG/lifetime-landingpad.ll
    M llvm/test/Transforms/SimplifyCFG/wineh-unreachable.ll

  Log Message:
  -----------
  [SimplifyCFG] When eliminating `unreachable` landing pads, mark `call`s as `nounwind`

We really can't recover that knowledge, and `nounwind` knowledge,
(and not just a lack of the unwind edge, aka `call` instead of `invoke`),
is e.g. part of the reasoning in e.g. `mayHaveSideEffects()`.

Note that this is call-site-specific knowledge,
just because some callsite had an `unreachable`
unwind edge, does not mean that all will.


Compare: https://github.com/llvm/llvm-project/compare/3432f4bf86e7...3c5b1f2d94d0


More information about the All-commits mailing list