Displaying 2 results from an estimated 2 matches for "ccextractelements".
2008 Dec 27
3
[LLVMdev] Using CallingConvLower in ARM target
...come later.
This patch does not handle f64 and i64 types. For these types, it
would be ideal to request the conversions below:
def RetCC_ARM_APCS : CallingConv<[
CCIfType<[f32], CCBitConvertToType<i32>>,
CCIfType<[f64], CCBitConvertToType<i64>>,
CCIfType<[i64], CCExtractElements<2, i32>>,
CCIfType<[i32], CCAssignToReg<[R0, R1]>>
]>;
The problem is that i64 handling requires splitting into 2 x i32
registers. I am not sure how to build CCExtractElements as shown. The
current organization of CCState::AnalyzeReturn does not allow for
reissuing of th...
2009 Jan 03
0
[LLVMdev] Using CallingConvLower in ARM target
...deal to request the conversions below:
i64 isn't Legal on ARM, so it should already be handled.
>
>
> def RetCC_ARM_APCS : CallingConv<[
> CCIfType<[f32], CCBitConvertToType<i32>>,
> CCIfType<[f64], CCBitConvertToType<i64>>,
> CCIfType<[i64], CCExtractElements<2, i32>>,
>
> CCIfType<[i32], CCAssignToReg<[R0, R1]>>
> ]>;
>
> The problem is that i64 handling requires splitting into 2 x i32
> registers. I am not sure how to build CCExtractElements as shown. The
> current organization of CCState::AnalyzeReturn do...