[cfe-dev] Passing StructType arguments directly

David Meyer pdox at google.com
Thu Sep 22 18:22:31 PDT 2011


Sandeep,
The good news is, going forward, we'll have greater control over
theABI. Now that we know about these problems, we can impose
ABIrequirements on future NaCl specifications to make sure they
arecompatible with the bitcode we generate. Which means the only
problemat this point is X86-32 and X86-64 which already have existing
ABIs weneed to satisfy.
- pdox
On Thu, Sep 22, 2011 at 5:47 PM, Sandeep Patel <deeppatel1987 at gmail.com> wrote:
> On Fri, Sep 23, 2011 at 12:34 AM, David Meyer <pdox at google.com> wrote:
>> So the question is, how do we represent (in a single bitcode file)
>> enough information about the original C types that we can comply with
>> both the X86-32 and X86-64 ABIs simultaneously? The answer is we
>> can't, with today's bitcode. But by using structs as first-class
>> arguments, we do get closer.
>
> Assuming PNaCl will move to other platforms in the future, how will
> you handle ABIs that specify behavior in terms on C/C++ types? For
> example, the ARM AAPCS-VFP ABI (a.k.a. hard float) covers unions that
> would be lowered away by this point in LLVM IR.
>
> You're going to need all of the original C/C++ type information to do
> this correct with any hope for migration to other platforms down the
> line.
>
> deep
>



More information about the cfe-dev mailing list