]> granicus.if.org Git - llvm/commit
[ARM] GlobalISel: Make struct arguments fail elegantly
authorDiana Picus <diana.picus@linaro.org>
Fri, 21 Apr 2017 11:53:01 +0000 (11:53 +0000)
committerDiana Picus <diana.picus@linaro.org>
Fri, 21 Apr 2017 11:53:01 +0000 (11:53 +0000)
commit17c66f84bbf08ec6a1afd604ee5a1c3c55fe5ef4
tree9e04e8bf580e2fe1d7bf123b6f43df8fd8974a28
parent548d25c9dd815af617bb8fb934922d19f2023d76
[ARM] GlobalISel: Make struct arguments fail elegantly

The condition in isSupportedType didn't handle struct/array arguments
properly. Fix the check and add a test to make sure we use the fallback
path in this kind of situation. The test deals with some common cases
where the call lowering should error out. There are still some issues
here that need to be addressed (tail calls come to mind), but they can
be addressed in other patches.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@300967 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMCallLowering.cpp
test/CodeGen/ARM/GlobalISel/arm-unsupported.ll [new file with mode: 0644]