Hexagon - Add peephole optimizations for zero extends.
authorPranav Bhandarkar <pranavb@codeaurora.org>
Thu, 2 May 2013 20:22:51 +0000 (20:22 +0000)
committerPranav Bhandarkar <pranavb@codeaurora.org>
Thu, 2 May 2013 20:22:51 +0000 (20:22 +0000)
commit02d937d86420409210291accd9aa023d97b4a8b5
tree069451ca41af330fe87f83a16326c51e73be6afe
parente2e80cbdcfc5e69fd59715f9dcde3154cffa8169
Hexagon - Add peephole optimizations for zero extends.

* lib/Target/Hexagon/HexagonInstrInfo.td: Add patterns to combine a
sequence of a pair of i32->i64 extensions followed by a "bitwise or"
into COMBINE_rr.
* lib/Target/Hexagon/HexagonPeephole.cpp: Copy propagate Rx in the
instruction Rp = COMBINE_Ir_V4(0, Rx) to the uses of Rp:subreg_loreg.
* test/CodeGen/Hexagon/union-1.ll: New test.
* test/CodeGen/Hexagon/combine_ir.ll: Fix test.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@180946 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Hexagon/HexagonInstrInfo.td
lib/Target/Hexagon/HexagonPeephole.cpp
test/CodeGen/Hexagon/combine_ir.ll
test/CodeGen/Hexagon/union-1.ll [new file with mode: 0644]