aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/stdarg.h
blob: 95c068cdd02b9707f3c5035d310e9b621e2d9902 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#ifndef __DUCC_BUILTIN___STDARG_H__
#define __DUCC_BUILTIN___STDARG_H__

// System V Application Binary Interface
// AMD64 Architecture Processor Supplement
// (With LP64 and ILP32 Programming Models)
// Version 1.0
// Figure 3.34: va_list Type Declaration
struct __ducc_va_list {
    unsigned int gp_offset;
    unsigned int fp_offset;
    void* overflow_arg_area;
    void* reg_save_area;
};
// ducc currently does not support array type.
// typedef struct __ducc_va_list va_list[1];
typedef struct __ducc_va_list* va_list;

#define va_start(args, start) __ducc_va_start(args, start)
#define va_end(args)

// For glibc:
typedef va_list __gnuc_va_list;

#endif