diff options
author | Pranav Bhandarkar <pranavb@codeaurora.org> | 2012-09-05 16:01:40 +0000 |
---|---|---|
committer | Pranav Bhandarkar <pranavb@codeaurora.org> | 2012-09-05 16:01:40 +0000 |
commit | 823f9ebaa3c078480e59e418e2385600803b1502 (patch) | |
tree | 359ae00dd2085cdbc0d1cd0a33c940b13e63d416 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | f6d2125829760276ac8c686c113d700a3d0a0121 (diff) | |
download | llvm-823f9ebaa3c078480e59e418e2385600803b1502.zip llvm-823f9ebaa3c078480e59e418e2385600803b1502.tar.gz llvm-823f9ebaa3c078480e59e418e2385600803b1502.tar.bz2 |
LLVM Bug Fix 13709: Remove needless lsr(Rp, #32) instruction access the
subreg_hireg of register pair Rp.
* lib/Target/Hexagon/HexagonPeephole.cpp(PeepholeDoubleRegsMap): New
DenseMap similar to PeepholeMap that additionally records subreg info
too.
(runOnMachineFunction): Record information in PeepholeDoubleRegsMap
and copy propagate the high sub-reg of Rp0 in Rp1 = lsr(Rp0, #32) to
the instruction Rx = COPY Rp1:logreg_subreg.
* test/CodeGen/Hexagon/remove_lsr.ll: New test.
llvm-svn: 163214
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions