[llvm-dev] Update on the status of the AVR backend
Dylan McKay via llvm-dev
llvm-dev at lists.llvm.org
Fri Oct 7 19:02:45 PDT 2016
Hello all,
The AVR backend is now almost fully upstreamed. Krzysztof and Matt A have
done an awesome job at reviewing all of the patches promptly and
comprehensively.
What has been merged:
- Almost all of the machine code backend (including the ELF object file
writer)
- The assembly parser
- The assembly printer
- The definitions for a few hundred different microcontroller definitions
- Al of the register definitions
- Most of the instruction selection code
- The call frame lowering code
- The CodeGen -> MachineCode glue
- Definitions for all but two of the entire instruction set (we’re
missing the load/store instructions that are for the AVR Tiny core only)
- Calling convention definitions and lowering
- Support for the lo8(symbol), hi8(symbol) assembler macros and
relocations
What is still waiting:
- The two core instruction selection classes (AVRISelLowering
<https://reviews.llvm.org/D25034>, AVRISelDAGToDAG
<https://reviews.llvm.org/D25278>)
- The branch relaxation pass (which will be rewritten to use the generic
relaxation pass before it is merged)
- The pseudo instruction expansion pass (required for *most* programs)
- The disassembler (currently only half written)
- A fix to the greedy register allocator to fix an assertion error for
very small register classes (D25070 <https://reviews.llvm.org/D25070>)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20161008/87ad32f9/attachment.html>
More information about the llvm-dev
mailing list