This adds the majority of the AVR backend.
Details
Diff Detail
Event Timeline
LGTM with some style nits, plus the pass setup seems to be adding a couple of passes I don't see being added
| lib/Target/AVR/AVRFrameLowering.h | ||
|---|---|---|
| 19–21 | C++ style comments | |
| lib/Target/AVR/AVRISelLowering.h | ||
| 39 | Why not all caps like the others? | |
| 82–83 | I think it's best to not duplicate the comments on overrides. The base class header comment is more likely to be kept up to date | |
| lib/Target/AVR/AVRInstrInfo.cpp | ||
| 69 | brace on case lines | |
| 390 | Question mark? | |
| 462 | static_cast | |
| lib/Target/AVR/AVRInstrInfo.h | ||
| 29–33 | C++ comments | |
| lib/Target/AVR/AVRRegisterInfo.cpp | ||
| 57–69 | Some comments about why these registers are reserved might be helpful | |
| 171 | Fallthrough | |
| lib/Target/AVR/AVRRegisterInfo.h | ||
| 23–25 | C++ comments. Repeat for everywhere else | |
| lib/Target/AVR/AVRSubtarget.cpp | ||
| 37 | Do these actually initialize to 0? I don't think I've seen empty parens like this before | |
| lib/Target/AVR/AVRSubtarget.h | ||
| 38 | Extra lne | |
| 48 | return on new line like the others here | |
| lib/Target/AVR/AVRTargetMachine.cpp | ||
| 29 | This is only one place, so you can just move the literal there | |
| 32 | static, Get->get | |
| 35 | No return after else | |
| 97 | Don't see this | |
| 104 | I don't see this file? | |
| lib/Target/AVR/MCTargetDesc/AVRMCTargetDesc.h | ||
| 23–25 | Alphabetize | |
| lib/Target/AVR/AVRRegisterInfo.cpp | ||
|---|---|---|
| 57–69 | Agree | |
Remove empty comment block