[PATCH] D36331: Add ARC backend

Pete Couperus via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Fri Aug 4 11:07:27 PDT 2017


petecoup created this revision.
Herald added subscribers: hiraditya, mgorny.

Add the ARC backend to lib/Target.

- Targets ARC v2.
- Includes a small functional subset of the 32-bit ISA, little endian.
- Targets a fixed subset of the ARC v2 ISA.
- Focuses on C99 support.
- Implements Target registration, and a SelectionDAG based instruction selector.
- Implements Register and the ISA specification for current subset.
- Implements the Assembly printer and disassembler.


https://reviews.llvm.org/D36331

Files:
  llvm/include/llvm/ADT/Triple.h
  llvm/lib/Support/Triple.cpp
  llvm/lib/Target/ARC/ARC.h
  llvm/lib/Target/ARC/ARC.td
  llvm/lib/Target/ARC/ARCAsmPrinter.cpp
  llvm/lib/Target/ARC/ARCBranchFinalize.cpp
  llvm/lib/Target/ARC/ARCCallingConv.td
  llvm/lib/Target/ARC/ARCExpandPseudos.cpp
  llvm/lib/Target/ARC/ARCFrameLowering.cpp
  llvm/lib/Target/ARC/ARCFrameLowering.h
  llvm/lib/Target/ARC/ARCISelDAGToDAG.cpp
  llvm/lib/Target/ARC/ARCISelLowering.cpp
  llvm/lib/Target/ARC/ARCISelLowering.h
  llvm/lib/Target/ARC/ARCInstrFormats.td
  llvm/lib/Target/ARC/ARCInstrInfo.cpp
  llvm/lib/Target/ARC/ARCInstrInfo.h
  llvm/lib/Target/ARC/ARCInstrInfo.td
  llvm/lib/Target/ARC/ARCMCInstLower.cpp
  llvm/lib/Target/ARC/ARCMCInstLower.h
  llvm/lib/Target/ARC/ARCMachineFunctionInfo.cpp
  llvm/lib/Target/ARC/ARCMachineFunctionInfo.h
  llvm/lib/Target/ARC/ARCRegisterInfo.cpp
  llvm/lib/Target/ARC/ARCRegisterInfo.h
  llvm/lib/Target/ARC/ARCRegisterInfo.td
  llvm/lib/Target/ARC/ARCSubtarget.cpp
  llvm/lib/Target/ARC/ARCSubtarget.h
  llvm/lib/Target/ARC/ARCTargetMachine.cpp
  llvm/lib/Target/ARC/ARCTargetMachine.h
  llvm/lib/Target/ARC/ARCTargetStreamer.h
  llvm/lib/Target/ARC/ARCTargetTransformInfo.h
  llvm/lib/Target/ARC/CMakeLists.txt
  llvm/lib/Target/ARC/Disassembler/ARCDisassembler.cpp
  llvm/lib/Target/ARC/Disassembler/CMakeLists.txt
  llvm/lib/Target/ARC/Disassembler/LLVMBuild.txt
  llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.cpp
  llvm/lib/Target/ARC/InstPrinter/ARCInstPrinter.h
  llvm/lib/Target/ARC/InstPrinter/CMakeLists.txt
  llvm/lib/Target/ARC/InstPrinter/LLVMBuild.txt
  llvm/lib/Target/ARC/LLVMBuild.txt
  llvm/lib/Target/ARC/MCTargetDesc/ARCInfo.h
  llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.cpp
  llvm/lib/Target/ARC/MCTargetDesc/ARCMCAsmInfo.h
  llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.cpp
  llvm/lib/Target/ARC/MCTargetDesc/ARCMCTargetDesc.h
  llvm/lib/Target/ARC/MCTargetDesc/CMakeLists.txt
  llvm/lib/Target/ARC/MCTargetDesc/LLVMBuild.txt
  llvm/lib/Target/ARC/TargetInfo/ARCTargetInfo.cpp
  llvm/lib/Target/ARC/TargetInfo/CMakeLists.txt
  llvm/lib/Target/ARC/TargetInfo/LLVMBuild.txt
  llvm/lib/Target/LLVMBuild.txt
  llvm/test/CodeGen/ARC/alu.ll
  llvm/test/CodeGen/ARC/brcc.ll
  llvm/test/CodeGen/ARC/call.ll
  llvm/test/CodeGen/ARC/ldst.ll
  llvm/test/CodeGen/ARC/lit.local.cfg
  llvm/test/MC/Disassembler/ARC/alu.txt
  llvm/test/MC/Disassembler/ARC/br.txt
  llvm/test/MC/Disassembler/ARC/ldst.txt
  llvm/test/MC/Disassembler/ARC/lit.local.cfg
  llvm/test/MC/Disassembler/ARC/misc.txt

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D36331.109781.patch
Type: text/x-patch
Size: 234633 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170804/b216167e/attachment-0001.bin>


More information about the llvm-commits mailing list