176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#ifndef _EFISTDARG_H_
276d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define _EFISTDARG_H_
376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
476d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman/*++
576d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
676d05dc695b06c4e987bb8078f78032441e1430cGreg HartmanCopyright (c) 1998  Intel Corporation
776d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
876d05dc695b06c4e987bb8078f78032441e1430cGreg HartmanModule Name:
976d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1076d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman    devpath.h
1176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1276d05dc695b06c4e987bb8078f78032441e1430cGreg HartmanAbstract:
1376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1476d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman    Defines for parsing the EFI Device Path structures
1576d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1676d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1776d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
1876d05dc695b06c4e987bb8078f78032441e1430cGreg HartmanRevision History
1976d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
2076d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman--*/
2176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#ifdef __GNUC__
2276d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#include "stdarg.h"
2376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#else
2476d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define _INTSIZEOF(n)   ( (sizeof(n) + sizeof(UINTN) - 1) & ~(sizeof(UINTN) - 1) )
2576d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
2676d05dc695b06c4e987bb8078f78032441e1430cGreg Hartmantypedef CHAR8 * va_list;
2776d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
2876d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define va_start(ap,v)  ( ap = (va_list)&v + _INTSIZEOF(v) )
2976d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define va_arg(ap,t)    ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )
3076d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#define va_end(ap)  ( ap = (va_list)0 )
3176d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#endif
3276d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman
3376d05dc695b06c4e987bb8078f78032441e1430cGreg Hartman#endif  /* _INC_STDARG */
34