[llvm-dev] Understanding TargetLowering::LowerCall

Tim Northover via llvm-dev llvm-dev at lists.llvm.org
Tue Mar 23 12:25:33 PDT 2021


On Tue, 23 Mar 2021 at 03:58, Zhang <admin at mayuyu.io> wrote:
> Say the Initial DAG is :
> ```
> load<(dereferenceable load 4 from @gv)> t0, TargetGlobalAddress:i64<i32* @gv> 0, undef:i64
> ```

The initial DAG shouldn't have a *Target*GlobalAddress. That's an
already-selected machine node and so it won't be further processed by
instruction selection. So you probably need to find whatever code you
have that's turning the original GlobalAddress into a
TargetGlobalAddress and modify that to actually insert the correct
instructions too.

Cheers.

Tim


More information about the llvm-dev mailing list