[AVR] Add the pseudo instruction expansion pass

Description

[AVR] Add the pseudo instruction expansion pass

Summary:
A lot of the pseudo instructions are required because LLVM assumes that
all integers of the same size as the pointer size are legal. This means
that it will not currently expand 16-bit instructions to their 8-bit
variants because it thinks 16-bit types are legal for the operations.

This also adds all of the CodeGen tests that required the pass to run.

Reviewers: arsenm, kparzysz

Subscribers: wdng, mgorny, modocache, llvm-commits

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

Details

Committed
dylanmckayNov 16 2016, 1:58 PM
Differential Revision
D26577: [AVR] Add the pseudo instruction expansion pass
Parents
rL287161: Fix "isn't a prototype" warning
Branches
Unknown
Tags
Unknown