This is an archive of the discontinued LLVM Phabricator instance.

GlobalISel: Add default implementation of assignValueToReg
ClosedPublic

Authored by arsenm on Mar 2 2021, 6:39 PM.

Details

Summary

Refactor insertion of the asserting ops. This enables using them for
AMDGPU.

This code should essentially be the same for every target. Mips, X86
and ARM all have different code there now, but this seems to be an
accident. The assignment functions are called with different types
than they would be in the DAG, so this is all likely an assortment of
hacks to get around that.

Diff Detail

Event Timeline

arsenm created this revision.Mar 2 2021, 6:39 PM
arsenm requested review of this revision.Mar 2 2021, 6:39 PM
Herald added a project: Restricted Project. · View Herald TranscriptMar 2 2021, 6:39 PM
Herald added a subscriber: wdng. · View Herald Transcript
aemerson accepted this revision.Mar 2 2021, 9:56 PM
aemerson added inline comments.
llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
214

Should say "based on \p VA" since that has the information needed.

This revision is now accepted and ready to land.Mar 2 2021, 9:56 PM
foad added a subscriber: foad.Mar 2 2021, 10:26 PM
foad added inline comments.
llvm/include/llvm/CodeGen/GlobalISel/CallLowering.h
213

One of those ZEXT should be SEXT?