llvm-project/llvm/lib/Target/AVR
Ayke van Laethem 5527b21516
[AVR] Do not use R0/R1 on avrtiny
This patch makes sure the compiler uses R16/R17 on avrtiny (attiny10
etc) instead of R0/R1.

Some notes:

  * For the NEGW and ROLB instructions, it adds an explicit zero
    register. This is necessary because the zero register is different
    on avrtiny (and InstrInfo Uses lines need a fixed register).
  * Not entirely sure about putting all tests in features/avr-tiny.ll,
    but it doesn't seem like the "target-cpu"="attiny10" attribute
    works.

Updates: https://github.com/llvm/llvm-project/issues/53459

Differential Revision: https://reviews.llvm.org/D138582
2022-11-28 18:05:55 +01:00
..
AsmParser [llvm] LLVM_FALLTHROUGH => [[fallthrough]]. NFC 2022-08-08 11:24:15 -07:00
Disassembler
MCTargetDesc [AVR] Add $ separator string (like avr-gcc) 2022-11-27 15:28:17 +01:00
TargetInfo
AVR.h
AVR.td [AVR] Fix useDeprecatedPositionallyEncodedOperands errors. 2022-09-25 17:55:09 -04:00
AVRAsmPrinter.cpp [CodeGen] Move instruction predicate verification to emitInstruction 2022-07-14 09:33:28 +01:00
AVRCallingConv.td
AVRDevices.td [AVR] Add FeatureEIJMPCALL to FamilyAVR6 2022-11-15 15:29:37 +01:00
AVRExpandPseudoInsts.cpp [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRFrameLowering.cpp [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRFrameLowering.h
AVRISelDAGToDAG.cpp
AVRISelLowering.cpp [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRISelLowering.h [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRInstrFormats.td [AVR] Fix useDeprecatedPositionallyEncodedOperands errors. 2022-09-25 17:55:09 -04:00
AVRInstrInfo.cpp [AVR] Remove debug location of spill/reload instructions 2022-08-13 20:58:12 +08:00
AVRInstrInfo.h
AVRInstrInfo.td [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRMCInstLower.cpp
AVRMCInstLower.h
AVRMachineFunctionInfo.h
AVRRegisterInfo.cpp [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRRegisterInfo.h PEI should be able to use backward walk in replaceFrameIndicesBackward. 2022-11-18 15:57:34 +01:00
AVRRegisterInfo.td
AVRSelectionDAGInfo.h
AVRShiftExpand.cpp
AVRSubtarget.cpp
AVRSubtarget.h [AVR] Do not use R0/R1 on avrtiny 2022-11-28 18:05:55 +01:00
AVRTargetMachine.cpp [llvm] Use value_or instead of getValueOr (NFC) 2022-06-18 23:07:11 -07:00
AVRTargetMachine.h
AVRTargetObjectFile.cpp
AVRTargetObjectFile.h
CMakeLists.txt
README.md
TODO.md

README.md

AVR backend

This experimental backend is for the 8-bit Atmel AVR microcontroller.