OSDN Git Service

[ARM] GlobalISel: Support i8/i16 ABI extensions
authorDiana Picus <diana.picus@linaro.org>
Wed, 25 Jan 2017 08:10:40 +0000 (08:10 +0000)
committerDiana Picus <diana.picus@linaro.org>
Wed, 25 Jan 2017 08:10:40 +0000 (08:10 +0000)
commitc3d81fb16cde30acda43be27514a041360cfbc4c
tree7941e32c372aecc6dd6f2e66f0000fea44920373
parent841259051ac711eda2c002ea5414ffcb3eaf8cec
[ARM] GlobalISel: Support i8/i16 ABI extensions

At the moment, this means supporting the signext/zeroext attribute on the return
type of the function. For function arguments, signext/zeroext should be handled
by the caller, so there's nothing for us to do until we start lowering calls.

Note that this does not include support for other extensions (i8 to i16), those
will be added later.

Differential Revision: https://reviews.llvm.org/D27705

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@293034 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/ARM/ARMCallLowering.cpp
lib/Target/ARM/ARMInstructionSelector.cpp
lib/Target/ARM/ARMLegalizerInfo.cpp
lib/Target/ARM/ARMRegisterBankInfo.cpp
test/CodeGen/ARM/GlobalISel/arm-instruction-select.mir
test/CodeGen/ARM/GlobalISel/arm-irtranslator.ll
test/CodeGen/ARM/GlobalISel/arm-isel.ll
test/CodeGen/ARM/GlobalISel/arm-legalizer.mir