view lphobos/llvm/va_list.d @ 1506:76936858d1c6

Return `void*` from _d_allocclass so LLVM doesn't do weird things with it... This allows `-instcombine` followed by `-gvn` to do devirtualization, so add `-gvn` in strategic places in the default pass order.
author Frits van Bommel <fvbommel wxs.nl>
date Sat, 20 Jun 2009 11:39:13 +0200
parents 0ccfae271c45
children
line wrap: on
line source

module llvm.va_list;

alias void* va_list;

/*

version(X86)
{
    alias void* va_list;
}
else version(X86_64)
{
    struct X86_64_va_list
    {
        uint gp_offset;
        uint fp_offset;
        void* overflow_arg_area;
        void* reg_save_area;
    }
    alias X86_64_va_list va_list;
}
else
static assert("only x86 and x86-64 support va_list");

*/