[ARM GlobalISel] Support floating point for Thumb2
authorDiana Picus <diana.picus@linaro.org>
Fri, 22 Feb 2019 09:54:54 +0000 (09:54 +0000)
committerDiana Picus <diana.picus@linaro.org>
Fri, 22 Feb 2019 09:54:54 +0000 (09:54 +0000)
commit35e1c6663c373f561f3bffdfe613e4619cdfe048
tree3e0f068c6776ec93dd6794d29f20b598e61d63f1
parentc8f7496257f6c385e3eff33cd14cdb060c49063f
[ARM GlobalISel] Support floating point for Thumb2

This is exactly the same as arm mode, so for the instruction selector
tests we just extract them to a new file and run with the same checks
for both arm and thumb mode.

For the legalizer we need to update the tests for soft float a bit, but
only because BL and tBL are slightly different. We could be pedantic and
check that we get a well-formed BL for arm mode and a tBL for thumb, but
for the purposes of the legalizer test it's sufficient to just skip over
the predicate operands in the checks. Also note that we have the
pedantic checks in the divmod test, so we're covered.

llvm-svn: 354665
llvm/lib/Target/ARM/ARMLegalizerInfo.cpp
llvm/test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir
llvm/test/CodeGen/ARM/GlobalISel/arm-legalize-fp.mir
llvm/test/CodeGen/ARM/GlobalISel/select-fp.mir [new file with mode: 0644]