[PATCH] D115409: [SelectionDAGBuilder] drop special handling for CallBr

Craig Topper via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Mon Dec 13 20:04:52 PST 2021


craig.topper added inline comments.


================
Comment at: llvm/test/CodeGen/X86/callbr-asm-bb-exports.ll:23
+; CHECK-NEXT: t30: ch,glue = inlineasm_br t22, {{.*}}, t22:1
+; CHECK-NEXT: t32: ch = br t30, BasicBlock:ch
 
----------------
nickdesaulniers wrote:
> @craig.topper can you triple check this change to this whole file carefully, please?
> 
> I'm not sure TBH why my change to SelectionDAGBuilder changed this.  I'm also not sure of the original intent of the test. It's running `-debug-only=isel` which prints A LOT of different phases; I'm not sure which it was originally testing.
> 
> I'm not sure why we get an `BlockAddress` now; I don't really understand the output from selectionDAG here. (`t16` looks unused to me, IIUC).
I think the important thing was that the t22 CopyFromReg chain output is used by the inlineasm_br.

I'm guessing the BlockAddress is being created by the `getValue` call in the else that is now reachable?

Maybe my regex to ignore most of the inlineasm_br line is hiding too much.


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D115409



More information about the cfe-commits mailing list