Extend Hexagon hardware loop generation to handle various additional cases:
authorKrzysztof Parzyszek <kparzysz@codeaurora.org>
Mon, 11 Feb 2013 21:37:55 +0000 (21:37 +0000)
committerKrzysztof Parzyszek <kparzysz@codeaurora.org>
Mon, 11 Feb 2013 21:37:55 +0000 (21:37 +0000)
commit71490fa946f750fb3afe7228a32d31d401d4c1d8
tree0dc802371b290171237831f9ff44d56a199619cf
parent651fb490aeec67c391570cba2a9b184bf390e173
Extend Hexagon hardware loop generation to handle various additional cases:
- variety of compare instructions,
- loops with no preheader,
- arbitrary lower and upper bounds.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@174904 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Hexagon/CMakeLists.txt
lib/Target/Hexagon/HexagonFixupHwLoops.cpp [new file with mode: 0644]
lib/Target/Hexagon/HexagonHardwareLoops.cpp
lib/Target/Hexagon/HexagonInstrInfo.cpp
test/CodeGen/Hexagon/hwloop-cleanup.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-const.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-dbg.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-le.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-lt.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-lt1.ll [new file with mode: 0644]
test/CodeGen/Hexagon/hwloop-ne.ll [new file with mode: 0644]