Add minimal support to lower return, and introduce an OutgoingValueHandler and an OutgoingValueAssigner for returns.
Supports return values with integer, pointer and aggregate types.
(Update of D69808 - avoiding commandeering that revision)
Paths
| Differential D117318
[RISCV][GlobalISel] Add lowerReturn for calling conv ClosedPublic Authored by nitinjohnraj on Jan 14 2022, 7:26 AM.
Details Summary Add minimal support to lower return, and introduce an OutgoingValueHandler and an OutgoingValueAssigner for returns. Supports return values with integer, pointer and aggregate types. (Update of D69808 - avoiding commandeering that revision)
Diff Detail
Event TimelineHerald added subscribers: VincentWu, luke957, achieveartificialintelligence and 25 others. · View Herald TranscriptJan 14 2022, 7:26 AM
Comment Actions Don't reinvent existing generic functions; instead introduce an OutgoingValueAssigner to allow us to call determineAndHandleAssignments. lewis-revill added a parent revision: D118233: [MachineVerifier] Report allocatable classes for physical register copies. This revision is now accepted and ready to land.Jan 26 2022, 4:28 PM lewis-revill retitled this revision from [WIP][RISCV][GlobalISel] Add lowerReturn for calling conv to [RISCV][GlobalISel] Add lowerReturn for calling conv.Feb 9 2022, 3:14 AM Comment Actions LGTM
nitinjohnraj removed a parent revision: D118766: [CodeGen] Use the non-pointer LLT equivalent to check regclass type.May 22 2023, 7:36 AM Comment Actions This has been stagnant for a while, and there were a few open comments, so could I reaffirm the approval of this patch?
nitinjohnraj marked 2 inline comments as not done. This revision is now accepted and ready to land.May 22 2023, 1:17 PM This revision was landed with ongoing or failed builds.May 23 2023, 11:29 AM Closed by commit rG991ecfb83daf: [RISCV][GlobalISel] Add lowerReturn for calling conv (authored by nitinjohnraj). · Explain Why This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 524330 llvm/lib/Target/RISCV/GISel/RISCVCallLowering.h
llvm/lib/Target/RISCV/GISel/RISCVCallLowering.cpp
llvm/lib/Target/RISCV/RISCVISelLowering.h
llvm/lib/Target/RISCV/RISCVISelLowering.cpp
llvm/test/CodeGen/RISCV/GlobalISel/irtranslator/ret.ll
|
alphabetize the forward declarations