Displaying 2 results from an estimated 2 matches for "expandstructregs".
2014 Mar 04
9
[LLVMdev] Upstreaming PNaCl's IR simplification passes
...mplification passes are:
* Calling conventions lowering: ExpandVarArgs and ExpandByVal lower
varargs and by-value argument passing respectively. They would be useful
for any backend that doesn't want to implement varargs or by-value calling
conventions.
* Instruction-level lowering:
* ExpandStructRegs splits up struct values into scalars, removing the
"insertvalue" and "extractvalue" instructions.
* PromoteIntegers legalizes integer types (e.g. i30 is converted to
i32).
* Module-level lowering: This implements, at the IR level, functionality
that is traditionally provi...
2014 Mar 05
4
[LLVMdev] Upstreaming PNaCl's IR simplification passes
...backend that doesn't want to implement varargs or by-value calling
>> conventions.
>>
>
> Why wouldn't these be applicable to existing backends? What is hard about
> the existing representations?
>
>
>>
>> * Instruction-level lowering:
>> * ExpandStructRegs splits up struct values into scalars, removing the
>> "insertvalue" and "extractvalue" instructions.
>>
>
> There are already passes that do this outside of function arguments and
> return values. Why is a new one needed? How do you handle the
> overflow-...