Revision: 187
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=187&view=rev
Author: faluco
Date: 2012-06-22 23:15:28 +0000 (Fri, 22 Jun 2012)
Log Message:
-----------
- Optimize alloca address calculation by folding the two adds in a row.
before:
movw r31:r30, r29:r28
adiw r31:r30, 29
adiw r31:r30, 16
after:
movw r31:r30, r29:r28
adiw r31:r30, 45
- When reading or writing allocated variables allow big offsets to directly use Y instead of copying it around and wasting other registers.
- Add frame and alloca tests.
Revision Links:
--------------
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=31&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=30&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=29&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=28&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=31&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=30&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=31&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=30&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=31&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=30&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=29&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=28&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=31&view=rev
http://avr-llvm.svn.sourceforge.net/avr-llvm/?rev=30&view=rev
Modified Paths:
--------------
llvm/trunk/AVR/AVRISelDAGToDAG.cpp
llvm/trunk/AVR/AVRRegisterInfo.cpp
Added Paths:
-----------
llvm/trunk/test/CodeGen/AVR/alloca.ll
llvm/trunk/test/CodeGen/AVR/frame.ll
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|