Displaying 5 results from an estimated 5 matches for "cc_x86_64_c".
Did you mean:
cc_x86_32_c
2010 Dec 29
2
[LLVMdev] stack alignment restriction
Hi
Is there a way to enforce a different alignment on vales on stack
as compared to other basic types. Particularly, i would like
characters to be stored at 2 byte boundary.
thanks
dz
2010 Dec 29
0
[LLVMdev] stack alignment restriction
...re a way to enforce a different alignment on vales on stack
> as compared to other basic types. Particularly, i would like
> characters to be stored at 2 byte boundary.
>
Check out examples in the lib/Target/* directories. For instance in X86CallingConv.td, we have things like this:
def CC_X86_64_C : CallingConv<[
...
// __m64 vectors get 8-byte stack slots that are 8-byte aligned.
CCIfType<[x86mmx,v1i64], CCAssignToStack<8, 8>>
}
The second parameter to CCAssigneToStack is the alignment for that type.
-bw
2010 Dec 29
1
[LLVMdev] stack alignment restriction
...ferent alignment on vales on stack
>> as compared to other basic types. Particularly, i would like
>> characters to be stored at 2 byte boundary.
>>
> Check out examples in the lib/Target/* directories. For instance in X86CallingConv.td, we have things like this:
>
> def CC_X86_64_C : CallingConv<[
> ...
> // __m64 vectors get 8-byte stack slots that are 8-byte aligned.
> CCIfType<[x86mmx,v1i64], CCAssignToStack<8, 8>>
> }
>
> The second parameter to CCAssigneToStack is the alignment for that type.
>
> -bw
>
>
2007 Jul 18
2
[LLVMdev] How to access llvm Types from the codegen?
...nly thing that is present is the type of the pointer itself (i64
for example).
I can see three options to solve the problem:
1) Make FORMAL_ARGUMENTS have one SrcValueSDNode per argument in
addition to the flags and make CALL use SrcValueSDNode for the
arguments. The calling convention functions (CC_X86_64_C) can then be
modified to take a Type as an additional argument.
2) Implement part of the ABI on the DAG construction. In this approach
a struct that should be passed on registers would result on a series
of arguments at the DAG level, similar to what is done by llvm-gcc
today, but one lever lower...
2007 Jul 26
0
[LLVMdev] How to access llvm Types from the codegen?
...type of the pointer itself (i64
> for example).
>
> I can see three options to solve the problem:
>
> 1) Make FORMAL_ARGUMENTS have one SrcValueSDNode per argument in
> addition to the flags and make CALL use SrcValueSDNode for the
> arguments. The calling convention functions (CC_X86_64_C) can then be
> modified to take a Type as an additional argument.
>
> 2) Implement part of the ABI on the DAG construction. In this approach
> a struct that should be passed on registers would result on a series
> of arguments at the DAG level, similar to what is done by llvm-gcc
>...