The next phase of Mips16 hard float implementation.
authorReed Kotler <rkotler@mips.com>
Thu, 24 Jan 2013 04:24:02 +0000 (04:24 +0000)
committerReed Kotler <rkotler@mips.com>
Thu, 24 Jan 2013 04:24:02 +0000 (04:24 +0000)
commit8453b3f66a3c3200ea828491ef5cf162db9ccfb2
treeb620b83f277ff0f2af17766f478d1ec7f36e8b86
parentdb4170697f866dc8620946c77828ef0804996c3d
The next phase of Mips16 hard float implementation.

Allow Mips16 routines to call Mips32 routines that have abi requirements
that either arguments or return values are passed in floating point
registers. This handles only the pic case. We have not done non pic
for Mips16 yet in any form.

The libm functions are Mips32, so with this addition we have a complete
Mips16 hard float implementation.

We still are not able to complete mix Mip16 and Mips32 with hard float.
That will be the next phase which will have several steps. For Mips32
to freely call Mips16 some stub functions must be created.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@173320 91177308-0d34-0410-b5e6-96231b3b80d8
lib/Target/Mips/MipsISelLowering.cpp
lib/Target/Mips/MipsISelLowering.h
test/CodeGen/Mips/hf16_1.ll [new file with mode: 0644]