177943Sdfr/* $FreeBSD$ */
277943Sdfr#ifndef _EFISTDARG_H_
377943Sdfr#define _EFISTDARG_H_
477943Sdfr
577943Sdfr/*++
677943Sdfr
7163898SmarcelCopyright (c)  1999 - 2002 Intel Corporation. All rights reserved
8163898SmarcelThis software and associated documentation (if any) is furnished
9163898Smarcelunder a license and may only be used or copied in accordance
10163898Smarcelwith the terms of the license. Except as permitted by such
11163898Smarcellicense, no part of this software or documentation may be
12163898Smarcelreproduced, stored in a retrieval system, or transmitted in any
13163898Smarcelform or by any means without the express written consent of
14163898SmarcelIntel Corporation.
1577943Sdfr
1677943SdfrModule Name:
1777943Sdfr
1877943Sdfr    devpath.h
1977943Sdfr
2077943SdfrAbstract:
2177943Sdfr
2277943Sdfr    Defines for parsing the EFI Device Path structures
2377943Sdfr
2477943Sdfr
2577943Sdfr
2677943SdfrRevision History
2777943Sdfr
2877943Sdfr--*/
2977943Sdfr
3077943Sdfr#define _INTSIZEOF(n)   ( (sizeof(n) + sizeof(UINTN) - 1) & ~(sizeof(UINTN) - 1) )
3177943Sdfr
3277943Sdfrtypedef CHAR8 * va_list;
3377943Sdfr
3477943Sdfr#define va_start(ap,v)  ( ap = (va_list)&v + _INTSIZEOF(v) )
3577943Sdfr#define va_arg(ap,t)    ( *(t *)((ap += _INTSIZEOF(t)) - _INTSIZEOF(t)) )
3677943Sdfr#define va_end(ap)  ( ap = (va_list)0 )
3777943Sdfr
3877943Sdfr
3977943Sdfr#endif  /* _INC_STDARG */
40