[llvm-dev] [RFC] Nios II backend (original) (raw)

Hal Finkel via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 12 06:41:28 PDT 2017


On 04/12/2017 07:49 AM, Joerg Sonnenberger via llvm-dev wrote:

On Wed, Apr 12, 2017 at 10:20:30AM +0000, Grischenko, Andrei L via llvm-dev wrote:

I am proposing the integration of a backend targeting Nios II processor architecture. Nice to hear that.

+1

-Hal

Plan for initial implementation corresponding to patches (obviously the plan can be changed after comments) - Target registration a) Nios2.td, Nios2.h, Nios2TargetMachine.h, Nios2TargetMachine.cpp, Nios2Subtarget.h, Nios2Subtarget.cpp, TargetInfo/Nios2TargetInfo.cpp b) MCTargetDesc/Nios2MCTargetDesc.h, MCTargetDesc/Nios2MCTargetDesc.cpp... - Register information (Nios2RegisterInfo.cpp, Nios2RegisterInfo.h, Nios2RegisterInfo.td) - ISA specification (Nios2InstrFormats.td, Nios2InstrInfo.cpp, Nios2InstrInfo.h, Nios2InstrInfo.td) - GlobalISel (At the moment I use DAG selector, but work on porting to GlobalISel is already started) - Assembly printer (InstPrinter/Nios2InstPrinter.h, InstPrinter/Nios2InstPrinter.cpp, Nios2AsmPrinter.cpp, Nios2AsmPrinter.h, MCTargetDesc/Nios2MCAsmInfo.cpp, MCTargetDesc/Nios2MCAsmInfo.h, .) - Target triple registration in clang - Built-in functions (clang and codegen part) - New options support (clang driver and codegen part) - Direct ELF streaming (binary emission) As discussed in the recent target review threads, I would strongly recommend doing the assembly printer and even possibly the ELF emission as early as possible. Most of the other changes like the ISA specification and register information are more difficult to test without them and LLVM has a very strong preference for testing for all new code. Joerg


LLVM Developers mailing list llvm-dev at lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev

-- Hal Finkel Lead, Compiler Technology and Programming Languages Leadership Computing Facility Argonne National Laboratory



More information about the llvm-dev mailing list