llvm-project/llvm/test/CodeGen/AVR
Dylan McKay 1420f4efbe [AVR] Fix I/O instructions on XMEGA
Summary:
On XMEGA, I/O address space is same as data address space - there is no 0x20 offset,
because CPU General Purpose Registers are not mapped in data address space.

From https://en.wikipedia.org/wiki/AVR_microcontrollers
> In the XMEGA variant, the working register file is not mapped into the data address space; as such, it is not possible to treat any of the XMEGA's working registers as though they were SRAM. Instead, the I/O registers are mapped into the data address space starting at the very beginning of the address space.

Reviewers: dylanmckay

Reviewed By: dylanmckay

Subscribers: hiraditya, Jim, llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D77207

Patch by Vlastimil Labsky.
2020-05-17 19:46:09 +12:00
..
atomics
calling-conv/c
features [AVR] Fix I/O instructions on XMEGA 2020-05-17 19:46:09 +12:00
inline-asm
integration [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
intrinsics
pseudo [AVR] Fix incorrect register state for LDRdPtr 2020-03-03 17:34:54 +08:00
relax-mem
PR31344.ll
PR31345.ll
PR37143.ll [AVR] Fix incorrect register state for LDRdPtr 2020-03-03 17:34:54 +08:00
add.ll
alloca.ll
and.ll
avr-rust-issue-123.ll
branch-relaxation-long.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
branch-relaxation.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
brind.ll [AVR] Fix incorrect register state for LDRdPtr 2020-03-03 17:34:54 +08:00
call.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
clear-bss.ll
cmp.ll
com.ll
copy-data-to-ram.ll
ctlz.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
ctpop.ll
cttz.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
directmem.ll
div.ll [AVR] Do not use divmod calls for bigger integers 2020-04-20 13:56:38 +02:00
dynalloca.ll
eor.ll
expand-integer-failure.ll
frame.ll
frmidx-iterator-bug.ll
hardware-mul.ll
high-pressure-on-ptrregs.ll
icall-func-pointer-correct-addr-space.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
impossible-reg-to-reg-copy.ll
interrupts.ll [AVR] Generalize the previous interrupt bugfix to signal handlers too 2020-03-31 19:33:34 +13:00
io.ll
issue-cannot-select-bswap.ll
issue-regalloc-stackframe-folding-earlyclobber.ll
large-return-size.ll
lit.local.cfg
load.ll [AVR] Fix incorrect register state for LDRdPtr 2020-03-03 17:34:54 +08:00
lower-formal-args-struct-return.ll
lower-formal-arguments-assertion.ll
neg.ll
no-print-operand-twice.ll
or.ll
pre-schedule.ll
progmem-extended.ll
progmem.ll
rem.ll
return.ll
rot.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
runtime-trig.ll
rust-avr-bug-37.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
rust-avr-bug-95.ll Infer alignment of unmarked loads in IR/bitcode parsing. 2020-05-14 13:03:50 -07:00
rust-avr-bug-99.ll
rust-avr-bug-112.ll
sections.ll [AVR] Do not place functions in .progmem.data 2020-04-20 13:56:38 +02:00
select-must-add-unconditional-jump.ll
sext.ll
shift.ll
sign-extension.ll
smul-with-overflow.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
software-mul.ll
std-ldd-immediate-overflow.ll
store-undef.ll
store.ll
sub.ll
trunc.ll
umul-with-overflow.ll [AVR] Fix private label prefix 2020-02-26 20:32:25 +01:00
umul.with.overflow.i16-bug.ll
unaligned-atomic-loads.ll
varargs.ll
xor.ll
zext.ll