OSDN Git Service

[Nios2] final infrastructure to provide compilation of a return from a function
authorNikolai Bozhenov <nikolai.bozhenov@intel.com>
Thu, 7 Dec 2017 12:35:02 +0000 (12:35 +0000)
committerNikolai Bozhenov <nikolai.bozhenov@intel.com>
Thu, 7 Dec 2017 12:35:02 +0000 (12:35 +0000)
commit846e43e49046c172d883ab05e1fe4b5fa098ad91
treec06b715e95559935cbcba5fcb3be3bd50d4b0588
parentb21bd46f2dc8d02ae1213a0a1b043e7d4f956756
[Nios2] final infrastructure to provide compilation of a return from a function

This patch includes all missing functionality needed to provide first
compilation of a simple program that just returns from a function.
I've added a test case that checks for "ret" instruction printed in assembly
output.

Patch by Andrei Grischenko (andrei.l.grischenko@intel.com)
Differential revision: https://reviews.llvm.org/D39688

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@320035 91177308-0d34-0410-b5e6-96231b3b80d8
47 files changed:
lib/Target/Nios2/CMakeLists.txt
lib/Target/Nios2/InstPrinter/CMakeLists.txt [new file with mode: 0644]
lib/Target/Nios2/InstPrinter/LLVMBuild.txt [new file with mode: 0644]
lib/Target/Nios2/InstPrinter/Nios2InstPrinter.cpp [new file with mode: 0644]
lib/Target/Nios2/InstPrinter/Nios2InstPrinter.h [new file with mode: 0644]
lib/Target/Nios2/LLVMBuild.txt
lib/Target/Nios2/MCTargetDesc/CMakeLists.txt
lib/Target/Nios2/MCTargetDesc/LLVMBuild.txt
lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.cpp [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2AsmBackend.h [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2BaseInfo.h [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2ELFObjectWriter.cpp [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2FixupKinds.h [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.cpp [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2MCAsmInfo.h [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.cpp [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2MCExpr.h [new file with mode: 0644]
lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.cpp
lib/Target/Nios2/MCTargetDesc/Nios2MCTargetDesc.h
lib/Target/Nios2/MCTargetDesc/Nios2TargetStreamer.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2.h
lib/Target/Nios2/Nios2.td
lib/Target/Nios2/Nios2AsmPrinter.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2CallingConv.td [new file with mode: 0644]
lib/Target/Nios2/Nios2FrameLowering.cpp
lib/Target/Nios2/Nios2FrameLowering.h
lib/Target/Nios2/Nios2ISelDAGToDAG.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2ISelLowering.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2ISelLowering.h [new file with mode: 0644]
lib/Target/Nios2/Nios2InstrFormats.td
lib/Target/Nios2/Nios2InstrInfo.cpp
lib/Target/Nios2/Nios2InstrInfo.h
lib/Target/Nios2/Nios2InstrInfo.td
lib/Target/Nios2/Nios2MCInstLower.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2MachineFunction.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2MachineFunction.h [new file with mode: 0644]
lib/Target/Nios2/Nios2RegisterInfo.cpp
lib/Target/Nios2/Nios2Subtarget.cpp
lib/Target/Nios2/Nios2Subtarget.h
lib/Target/Nios2/Nios2TargetMachine.cpp
lib/Target/Nios2/Nios2TargetMachine.h
lib/Target/Nios2/Nios2TargetObjectFile.cpp [new file with mode: 0644]
lib/Target/Nios2/Nios2TargetObjectFile.h [new file with mode: 0644]
lib/Target/Nios2/Nios2TargetStreamer.h [new file with mode: 0644]
lib/Target/Nios2/TargetInfo/Nios2TargetInfo.cpp
test/CodeGen/Nios2/proc_support.ll [new file with mode: 0644]
test/CodeGen/Nios2/ret_generated.ll [new file with mode: 0644]