[PATCH] D67602: GlobalISel: Handle llvm.read_register

Matt Arsenault via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Sep 15 19:30:31 PDT 2019


arsenm created this revision.
arsenm added reviewers: aemerson, paquette, rengolin, craig.topper, aditya_nandakumar.
Herald added subscribers: Petar.Avramovic, volkan, rovka, nhaehnle, wdng, jvesely.
arsenm added a parent revision: D67601: TLI: Remove DAG argument from getRegisterByName.

SelectionDAG has a bunch of machinery to defer this to selection time
for some reason. Just directly emit a copy during IRTranslator. The
x86 usage does somewhat questionably check hasFP, which could depend
on the whole function being at minimum translated.

      

This does lose the convergent bit if the callsite had it, which may be
a problem. We also lose that in general for intrinsics, which may also
be a problem.


https://reviews.llvm.org/D67602

Files:
  lib/CodeGen/GlobalISel/IRTranslator.cpp
  test/CodeGen/AMDGPU/GlobalISel/read_register.ll
  test/CodeGen/AMDGPU/read_register.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D67602.220268.patch
Type: text/x-patch
Size: 4885 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20190916/a70085e4/attachment.bin>


More information about the llvm-commits mailing list