[all-commits] [llvm/llvm-project] b7a95a: [SimplifyCFG] Don't sink loads/stores with swifter...

Florian Hahn via All-commits all-commits at lists.llvm.org
Thu Aug 17 02:01:04 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: b7a95ad46724db0f6840ce3a910daf0530e7a913
      https://github.com/llvm/llvm-project/commit/b7a95ad46724db0f6840ce3a910daf0530e7a913
  Author: Florian Hahn <flo at fhahn.com>
  Date:   2023-08-17 (Thu, 17 Aug 2023)

  Changed paths:
    M llvm/lib/Transforms/Utils/SimplifyCFG.cpp
    M llvm/test/Transforms/SimplifyCFG/hoist-sink-swifterror-store.ll

  Log Message:
  -----------
  [SimplifyCFG] Don't sink loads/stores with swifterror pointers.

swifterror pointers can only be used as pointer operands of load & store
instructions (and as swifterror argument of a call). Sinking loads or
stores with swifterror pointer operands would require introducing a
select of of the pointer operands, which isn't allowed.

Check for this condition in canSinkInstructions.

Reviewed By: aschwaighofer

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




More information about the All-commits mailing list