[PATCH] D109407: [InlineAsm] Support call function label in x86 inline asm with PIC

Xiang Zhang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Thu Oct 7 18:02:29 PDT 2021


xiangzhangllvm added a comment.

In D109407#3038069 <https://reviews.llvm.org/D109407#3038069>, @LuoYuanke wrote:

> I have a general question. Can we handle it in X86DAGToDAGISel::PreprocessISelDAG()? We can create a new "X86ISD::Wrapper" and replace the corresponding memory operand of the

PreprocessISelDAG is my first idea. The reason I not did it there because in IR/SDNode the GV is corresponding to  only 1 value/node, we may have different uses of this GV (e.g. call,lea ...) which was differently lowering according to their users (IRs/SDNodes). For InlineASM, it is different, muti-uses may happened in one User (InlineAsm IR/SDNode ), it is hard distinguish them in lowering.
Another reason I do it here is I want to limited the affection of the change. Here is a good place, It has finish IR/SDNode optimizations, and is just emitting the Inline ASM, all the related info is easy to get.


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

https://reviews.llvm.org/D109407



More information about the llvm-commits mailing list