| commit | 2aca0c622a22366d7e26e6002b910558fe641805 | [log] [tgz] |
|---|---|---|
| author | Artyom Skrobov <Artyom.Skrobov@arm.com> | Mon Dec 28 21:40:45 2015 +0000 |
| committer | Artyom Skrobov <Artyom.Skrobov@arm.com> | Mon Dec 28 21:40:45 2015 +0000 |
| tree | b8e293bc6099ce4d1a86517f39473a3cd580c586 | |
| parent | b3c53e512fb5e8f6ed5f9d60a994b9a6da57d1dd [diff] |
[Thumb] Fix assembler error 'cannot honor width suffix pop {lr}'
Summary:
* avoid generating POP {LR} in Thumb1 epilogues
* combine MOV LR, Rx + BX LR -> BX Rx in a peephole optimization pass
* combine POP {LR} + B + BX LR -> POP {PC} on v5T+
Test cases by Ana Pazos
Differential Revision: http://reviews.llvm.org/D15707
llvm-svn: 256523