[PATCH] D72598: [VE] Minimal codegen for empty functions
Simon Moll via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Mon Jan 13 05:01:43 PST 2020
simoll created this revision.
simoll added reviewers: asb, atanasyan, t.p.northover, craig.topper, rengolin, arsenm, echristo, RKSimon, fhahn.
simoll added a project: VE.
Herald added subscribers: llvm-commits, hiraditya, mgorny, wdng.
Herald added a project: LLVM.
This patch implements minimal VE code generation for empty function bodies (no args, no value return).
Contents
- empty function code generation test.
- Minimal function prologue & epilogue emission
- Instruction formats and instruction definitions as far as required for the empty function prologue & epilogue.
- I64 register class definitions.
This patch deviates from the common practice of having separate patches for the register file, instruction formats and instructions that offer self-contained logic but come without any tests. We are trying something new here: by implementing the (close to) minimum of everything in one patch, this patch is a minimal testable unit for VE code generation.
Repository:
rG LLVM Github Monorepo
https://reviews.llvm.org/D72598
Files:
llvm/lib/Target/VE/CMakeLists.txt
llvm/lib/Target/VE/InstPrinter/CMakeLists.txt
llvm/lib/Target/VE/InstPrinter/LLVMBuild.txt
llvm/lib/Target/VE/InstPrinter/VEInstPrinter.cpp
llvm/lib/Target/VE/InstPrinter/VEInstPrinter.h
llvm/lib/Target/VE/LLVMBuild.txt
llvm/lib/Target/VE/MCTargetDesc/CMakeLists.txt
llvm/lib/Target/VE/MCTargetDesc/LLVMBuild.txt
llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.cpp
llvm/lib/Target/VE/MCTargetDesc/VEMCAsmInfo.h
llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.cpp
llvm/lib/Target/VE/MCTargetDesc/VEMCTargetDesc.h
llvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.cpp
llvm/lib/Target/VE/MCTargetDesc/VETargetStreamer.h
llvm/lib/Target/VE/VE.h
llvm/lib/Target/VE/VE.td
llvm/lib/Target/VE/VEAsmPrinter.cpp
llvm/lib/Target/VE/VECallingConv.td
llvm/lib/Target/VE/VEFrameLowering.cpp
llvm/lib/Target/VE/VEFrameLowering.h
llvm/lib/Target/VE/VEISelDAGToDAG.cpp
llvm/lib/Target/VE/VEISelLowering.cpp
llvm/lib/Target/VE/VEISelLowering.h
llvm/lib/Target/VE/VEInstrFormats.td
llvm/lib/Target/VE/VEInstrInfo.cpp
llvm/lib/Target/VE/VEInstrInfo.h
llvm/lib/Target/VE/VEInstrInfo.td
llvm/lib/Target/VE/VEMCInstLower.cpp
llvm/lib/Target/VE/VEMachineFunctionInfo.cpp
llvm/lib/Target/VE/VEMachineFunctionInfo.h
llvm/lib/Target/VE/VERegisterInfo.cpp
llvm/lib/Target/VE/VERegisterInfo.h
llvm/lib/Target/VE/VERegisterInfo.td
llvm/lib/Target/VE/VESubtarget.cpp
llvm/lib/Target/VE/VESubtarget.h
llvm/lib/Target/VE/VETargetMachine.cpp
llvm/lib/Target/VE/VETargetMachine.h
llvm/lib/Target/VE/VETargetTransformInfo.h
llvm/test/CodeGen/VE/simple_prologue_epilogue.ll
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D72598.237626.patch
Type: text/x-patch
Size: 107069 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20200113/a4f65071/attachment.bin>
More information about the llvm-commits
mailing list