[ARMv8] Prevent generation of deprecated IT blocks on ARMv8 in Thumb mode.
authorJoey Gouly <joey.gouly@arm.com>
Mon, 9 Sep 2013 14:21:49 +0000 (14:21 +0000)
committerJoey Gouly <joey.gouly@arm.com>
Mon, 9 Sep 2013 14:21:49 +0000 (14:21 +0000)
commitb57d99694b87326a2eea26d76becf67bf5784b49
tree9cec38b5b6631727d01203aa4743d43d8024603b
parent7b80d9233a0a69c47d1e5ebe647951349ed166e8
[ARMv8] Prevent generation of deprecated IT blocks on ARMv8 in Thumb mode.
IT blocks can only be one instruction lonf, and can only contain a subset of
the 16 instructions.

Patch by Artyom Skrobov!

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@190309 91177308-0d34-0410-b5e6-96231b3b80d8
15 files changed:
lib/CodeGen/IfConversion.cpp
lib/Target/ARM/ARMBaseInstrInfo.cpp
lib/Target/ARM/ARMFastISel.cpp
lib/Target/ARM/ARMTargetMachine.cpp
lib/Target/ARM/Thumb2ITBlockPass.cpp
test/CodeGen/ARM/2013-05-05-IfConvertBug.ll
test/CodeGen/ARM/arm-and-tst-peephole.ll
test/CodeGen/ARM/fast-isel-select.ll
test/CodeGen/ARM/indirectbr.ll
test/CodeGen/ARM/thumb2-it-block.ll
test/CodeGen/Thumb2/v8_IT_1.ll [new file with mode: 0644]
test/CodeGen/Thumb2/v8_IT_2.ll [new file with mode: 0644]
test/CodeGen/Thumb2/v8_IT_3.ll [new file with mode: 0644]
test/CodeGen/Thumb2/v8_IT_4.ll [new file with mode: 0644]
test/CodeGen/Thumb2/v8_IT_5.ll [new file with mode: 0644]