[PATCH] D104597: [SimplifyCFG] Tail-merging all blocks with `ret` terminator

Reid Kleckner via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jun 22 15:28:24 PDT 2021


rnk added a comment.

I think this is reasonable: later cfg simplifications will tail merge the preceding instructions and delete dbg.values appropriately. I didn't hit "accept" since the tests don't all pass yet.



================
Comment at: llvm/test/CodeGen/AArch64/GlobalISel/irtranslator-condbr-lower-tree.ll:37
 cond_true:
   %tmp5 = tail call i32 (...) @bar( )
   ret void
----------------
This transform has the potential to make it harder to recognize some tail calls during codegen, but it's clear from this test that codegen is already smart enough to handle this case. I don't think any change is needed.


================
Comment at: llvm/test/CodeGen/ARM/smml.ll:168
 ;
-; CHECK-V6-LABEL: test_used_flags:
-; CHECK-V6:       @ %bb.0:
----------------
I can't understand why these checks disappeared. Is this a bug in the check generation script?


================
Comment at: llvm/test/Transforms/PruneEH/ipo-nounwind.ll:33
 define i32 @caller(i32* %ptr) personality i32 3 {
-; CHECK-LABEL: @caller(
-; CHECK-NEXT:  entry:
----------------
Seems like another update bug.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D104597/new/

https://reviews.llvm.org/D104597



More information about the llvm-commits mailing list