[llvm-commits] [llvm] r67502 - /llvm/trunk/lib/Target/X86/X86CallingConv.td

Eli Friedman eli.friedman at gmail.com
Mon Mar 23 15:36:56 PDT 2009


On Mon, Mar 23, 2009 at 3:07 AM, Frits van Bommel <fvbommel at wxs.nl> wrote:
> Is this "convention" documented anywhere?

No... AFAIK, the C front-ends don't use the i8 and i16 cases, and only
use the i32 case implicitly by returning an i64.  Using DL seems
reasonable to me.

> In my case, packing two i8 values into an i16 isn't a solution since the
> first value might be an i16/i32/i64 (on x86-64).

So pack the values into an i32/i64/i128... that's what the the C
front-ends do on x86 on Darwin.  (Note that Darwin differs from the
standard x86 ABI in a number of places...)

-Eli



More information about the llvm-commits mailing list