41 #define VERIFY_SIZE_OF(TYPE, Size) extern UINT8 _VerifySizeof##TYPE[(sizeof(TYPE) == (Size)) / (sizeof(TYPE) == (Size))] 64 #if defined(_MSC_EXTENSIONS) && !defined (MDE_CPU_EBC) 65 #define GLOBAL_REMOVE_IF_UNREFERENCED __declspec(selectany) 72 #define GLOBAL_REMOVE_IF_UNREFERENCED 84 #define _CONCATENATE(a, b) __CONCATENATE(a, b) 88 #define __CONCATENATE(a, b) a ## b 94 #define ASM_PFX(name) _CONCATENATE (__USER_LABEL_PREFIX__, name) 102 #define ASM_FUNCTION_REMOVE_IF_UNREFERENCED .subsections_via_symbols 104 #define ASM_FUNCTION_REMOVE_IF_UNREFERENCED 112 #define PACKED __packed 159 #define STATIC static 196 #define TRUE ((BOOLEAN)(1==1)) 202 #define FALSE ((BOOLEAN)(0==1)) 207 #define NULL ((VOID *) 0) 210 #define BIT0 0x00000001 211 #define BIT1 0x00000002 212 #define BIT2 0x00000004 213 #define BIT3 0x00000008 214 #define BIT4 0x00000010 215 #define BIT5 0x00000020 216 #define BIT6 0x00000040 217 #define BIT7 0x00000080 218 #define BIT8 0x00000100 219 #define BIT9 0x00000200 220 #define BIT10 0x00000400 221 #define BIT11 0x00000800 222 #define BIT12 0x00001000 223 #define BIT13 0x00002000 224 #define BIT14 0x00004000 225 #define BIT15 0x00008000 226 #define BIT16 0x00010000 227 #define BIT17 0x00020000 228 #define BIT18 0x00040000 229 #define BIT19 0x00080000 230 #define BIT20 0x00100000 231 #define BIT21 0x00200000 232 #define BIT22 0x00400000 233 #define BIT23 0x00800000 234 #define BIT24 0x01000000 235 #define BIT25 0x02000000 236 #define BIT26 0x04000000 237 #define BIT27 0x08000000 238 #define BIT28 0x10000000 239 #define BIT29 0x20000000 240 #define BIT30 0x40000000 241 #define BIT31 0x80000000 242 #define BIT32 0x0000000100000000ULL 243 #define BIT33 0x0000000200000000ULL 244 #define BIT34 0x0000000400000000ULL 245 #define BIT35 0x0000000800000000ULL 246 #define BIT36 0x0000001000000000ULL 247 #define BIT37 0x0000002000000000ULL 248 #define BIT38 0x0000004000000000ULL 249 #define BIT39 0x0000008000000000ULL 250 #define BIT40 0x0000010000000000ULL 251 #define BIT41 0x0000020000000000ULL 252 #define BIT42 0x0000040000000000ULL 253 #define BIT43 0x0000080000000000ULL 254 #define BIT44 0x0000100000000000ULL 255 #define BIT45 0x0000200000000000ULL 256 #define BIT46 0x0000400000000000ULL 257 #define BIT47 0x0000800000000000ULL 258 #define BIT48 0x0001000000000000ULL 259 #define BIT49 0x0002000000000000ULL 260 #define BIT50 0x0004000000000000ULL 261 #define BIT51 0x0008000000000000ULL 262 #define BIT52 0x0010000000000000ULL 263 #define BIT53 0x0020000000000000ULL 264 #define BIT54 0x0040000000000000ULL 265 #define BIT55 0x0080000000000000ULL 266 #define BIT56 0x0100000000000000ULL 267 #define BIT57 0x0200000000000000ULL 268 #define BIT58 0x0400000000000000ULL 269 #define BIT59 0x0800000000000000ULL 270 #define BIT60 0x1000000000000000ULL 271 #define BIT61 0x2000000000000000ULL 272 #define BIT62 0x4000000000000000ULL 273 #define BIT63 0x8000000000000000ULL 275 #define SIZE_1KB 0x00000400 276 #define SIZE_2KB 0x00000800 277 #define SIZE_4KB 0x00001000 278 #define SIZE_8KB 0x00002000 279 #define SIZE_16KB 0x00004000 280 #define SIZE_32KB 0x00008000 281 #define SIZE_64KB 0x00010000 282 #define SIZE_128KB 0x00020000 283 #define SIZE_256KB 0x00040000 284 #define SIZE_512KB 0x00080000 285 #define SIZE_1MB 0x00100000 286 #define SIZE_2MB 0x00200000 287 #define SIZE_4MB 0x00400000 288 #define SIZE_8MB 0x00800000 289 #define SIZE_16MB 0x01000000 290 #define SIZE_32MB 0x02000000 291 #define SIZE_64MB 0x04000000 292 #define SIZE_128MB 0x08000000 293 #define SIZE_256MB 0x10000000 294 #define SIZE_512MB 0x20000000 295 #define SIZE_1GB 0x40000000 296 #define SIZE_2GB 0x80000000 297 #define SIZE_4GB 0x0000000100000000ULL 298 #define SIZE_8GB 0x0000000200000000ULL 299 #define SIZE_16GB 0x0000000400000000ULL 300 #define SIZE_32GB 0x0000000800000000ULL 301 #define SIZE_64GB 0x0000001000000000ULL 302 #define SIZE_128GB 0x0000002000000000ULL 303 #define SIZE_256GB 0x0000004000000000ULL 304 #define SIZE_512GB 0x0000008000000000ULL 305 #define SIZE_1TB 0x0000010000000000ULL 306 #define SIZE_2TB 0x0000020000000000ULL 307 #define SIZE_4TB 0x0000040000000000ULL 308 #define SIZE_8TB 0x0000080000000000ULL 309 #define SIZE_16TB 0x0000100000000000ULL 310 #define SIZE_32TB 0x0000200000000000ULL 311 #define SIZE_64TB 0x0000400000000000ULL 312 #define SIZE_128TB 0x0000800000000000ULL 313 #define SIZE_256TB 0x0001000000000000ULL 314 #define SIZE_512TB 0x0002000000000000ULL 315 #define SIZE_1PB 0x0004000000000000ULL 316 #define SIZE_2PB 0x0008000000000000ULL 317 #define SIZE_4PB 0x0010000000000000ULL 318 #define SIZE_8PB 0x0020000000000000ULL 319 #define SIZE_16PB 0x0040000000000000ULL 320 #define SIZE_32PB 0x0080000000000000ULL 321 #define SIZE_64PB 0x0100000000000000ULL 322 #define SIZE_128PB 0x0200000000000000ULL 323 #define SIZE_256PB 0x0400000000000000ULL 324 #define SIZE_512PB 0x0800000000000000ULL 325 #define SIZE_1EB 0x1000000000000000ULL 326 #define SIZE_2EB 0x2000000000000000ULL 327 #define SIZE_4EB 0x4000000000000000ULL 328 #define SIZE_8EB 0x8000000000000000ULL 330 #define BASE_1KB 0x00000400 331 #define BASE_2KB 0x00000800 332 #define BASE_4KB 0x00001000 333 #define BASE_8KB 0x00002000 334 #define BASE_16KB 0x00004000 335 #define BASE_32KB 0x00008000 336 #define BASE_64KB 0x00010000 337 #define BASE_128KB 0x00020000 338 #define BASE_256KB 0x00040000 339 #define BASE_512KB 0x00080000 340 #define BASE_1MB 0x00100000 341 #define BASE_2MB 0x00200000 342 #define BASE_4MB 0x00400000 343 #define BASE_8MB 0x00800000 344 #define BASE_16MB 0x01000000 345 #define BASE_32MB 0x02000000 346 #define BASE_64MB 0x04000000 347 #define BASE_128MB 0x08000000 348 #define BASE_256MB 0x10000000 349 #define BASE_512MB 0x20000000 350 #define BASE_1GB 0x40000000 351 #define BASE_2GB 0x80000000 352 #define BASE_4GB 0x0000000100000000ULL 353 #define BASE_8GB 0x0000000200000000ULL 354 #define BASE_16GB 0x0000000400000000ULL 355 #define BASE_32GB 0x0000000800000000ULL 356 #define BASE_64GB 0x0000001000000000ULL 357 #define BASE_128GB 0x0000002000000000ULL 358 #define BASE_256GB 0x0000004000000000ULL 359 #define BASE_512GB 0x0000008000000000ULL 360 #define BASE_1TB 0x0000010000000000ULL 361 #define BASE_2TB 0x0000020000000000ULL 362 #define BASE_4TB 0x0000040000000000ULL 363 #define BASE_8TB 0x0000080000000000ULL 364 #define BASE_16TB 0x0000100000000000ULL 365 #define BASE_32TB 0x0000200000000000ULL 366 #define BASE_64TB 0x0000400000000000ULL 367 #define BASE_128TB 0x0000800000000000ULL 368 #define BASE_256TB 0x0001000000000000ULL 369 #define BASE_512TB 0x0002000000000000ULL 370 #define BASE_1PB 0x0004000000000000ULL 371 #define BASE_2PB 0x0008000000000000ULL 372 #define BASE_4PB 0x0010000000000000ULL 373 #define BASE_8PB 0x0020000000000000ULL 374 #define BASE_16PB 0x0040000000000000ULL 375 #define BASE_32PB 0x0080000000000000ULL 376 #define BASE_64PB 0x0100000000000000ULL 377 #define BASE_128PB 0x0200000000000000ULL 378 #define BASE_256PB 0x0400000000000000ULL 379 #define BASE_512PB 0x0800000000000000ULL 380 #define BASE_1EB 0x1000000000000000ULL 381 #define BASE_2EB 0x2000000000000000ULL 382 #define BASE_4EB 0x4000000000000000ULL 383 #define BASE_8EB 0x8000000000000000ULL 433 #define _INT_SIZE_OF(n) ((sizeof (n) + sizeof (UINTN) - 1) &~(sizeof (UINTN) - 1)) 435 #if defined(__CC_ARM) 446 #define VA_LIST va_list 448 typedef struct __va_list {
void *__ap; }
va_list;
449 #define VA_LIST va_list 452 #define VA_START(Marker, Parameter) __va_start(Marker, Parameter) 454 #define VA_ARG(Marker, TYPE) __va_arg(Marker, TYPE) 456 #define VA_END(Marker) ((void)0) 458 #define VA_COPY(Dest, Start) __va_copy (Dest, Start) 460 #elif defined(__GNUC__) && !defined(NO_BUILTIN_VA_FUNCS) 469 typedef __builtin_va_list
VA_LIST;
471 #define VA_START(Marker, Parameter) __builtin_va_start (Marker, Parameter) 473 #define VA_ARG(Marker, TYPE) ((sizeof (TYPE) < sizeof (UINTN)) ? (TYPE)(__builtin_va_arg (Marker, UINTN)) : (TYPE)(__builtin_va_arg (Marker, TYPE))) 475 #define VA_END(Marker) __builtin_va_end (Marker) 477 #define VA_COPY(Dest, Start) __builtin_va_copy (Dest, Start) 502 #define VA_START(Marker, Parameter) (Marker = (VA_LIST) ((UINTN) & (Parameter) + _INT_SIZE_OF (Parameter))) 520 #define VA_ARG(Marker, TYPE) (*(TYPE *) ((Marker += _INT_SIZE_OF (TYPE)) - _INT_SIZE_OF (TYPE))) 532 #define VA_END(Marker) (Marker = (VA_LIST) 0) 545 #define VA_COPY(Dest, Start) ((void)((Dest) = (Start))) 561 #define _BASE_INT_SIZE_OF(TYPE) ((sizeof (TYPE) + sizeof (UINTN) - 1) / sizeof (UINTN)) 579 #define BASE_ARG(Marker, TYPE) (*(TYPE *) ((Marker += _BASE_INT_SIZE_OF (TYPE)) - _BASE_INT_SIZE_OF (TYPE))) 596 #define OFFSET_OF(TYPE, Field) ((UINTN) __builtin_offsetof(TYPE, Field)) 601 #define OFFSET_OF(TYPE, Field) ((UINTN) &(((TYPE *)0)->Field)) 623 #define BASE_CR(Record, TYPE, Field) ((TYPE *) ((CHAR8 *) (Record) - (CHAR8 *) &(((TYPE *) 0)->Field))) 637 #define ALIGN_VALUE(Value, Alignment) ((Value) + (((Alignment) - (Value)) & ((Alignment) - 1))) 652 #define ALIGN_POINTER(Pointer, Alignment) ((VOID *) (ALIGN_VALUE ((UINTN)(Pointer), (Alignment)))) 666 #define ALIGN_VARIABLE(Value) ALIGN_VALUE ((Value), sizeof (UINTN)) 683 (((a) > (b)) ? (a) : (b)) 698 (((a) < (b)) ? (a) : (b)) 711 (((a) < 0) ? (-(a)) : (a)) 727 #define ENCODE_ERROR(StatusCode) ((RETURN_STATUS)(MAX_BIT | (StatusCode))) 738 #define ENCODE_WARNING(StatusCode) ((RETURN_STATUS)(StatusCode)) 751 #define RETURN_ERROR(StatusCode) (((INTN)(RETURN_STATUS)(StatusCode)) < 0) 756 #define RETURN_SUCCESS 0 761 #define RETURN_LOAD_ERROR ENCODE_ERROR (1) 766 #define RETURN_INVALID_PARAMETER ENCODE_ERROR (2) 771 #define RETURN_UNSUPPORTED ENCODE_ERROR (3) 776 #define RETURN_BAD_BUFFER_SIZE ENCODE_ERROR (4) 783 #define RETURN_BUFFER_TOO_SMALL ENCODE_ERROR (5) 788 #define RETURN_NOT_READY ENCODE_ERROR (6) 794 #define RETURN_DEVICE_ERROR ENCODE_ERROR (7) 799 #define RETURN_WRITE_PROTECTED ENCODE_ERROR (8) 804 #define RETURN_OUT_OF_RESOURCES ENCODE_ERROR (9) 810 #define RETURN_VOLUME_CORRUPTED ENCODE_ERROR (10) 815 #define RETURN_VOLUME_FULL ENCODE_ERROR (11) 821 #define RETURN_NO_MEDIA ENCODE_ERROR (12) 827 #define RETURN_MEDIA_CHANGED ENCODE_ERROR (13) 832 #define RETURN_NOT_FOUND ENCODE_ERROR (14) 837 #define RETURN_ACCESS_DENIED ENCODE_ERROR (15) 842 #define RETURN_NO_RESPONSE ENCODE_ERROR (16) 847 #define RETURN_NO_MAPPING ENCODE_ERROR (17) 852 #define RETURN_TIMEOUT ENCODE_ERROR (18) 857 #define RETURN_NOT_STARTED ENCODE_ERROR (19) 862 #define RETURN_ALREADY_STARTED ENCODE_ERROR (20) 867 #define RETURN_ABORTED ENCODE_ERROR (21) 872 #define RETURN_ICMP_ERROR ENCODE_ERROR (22) 877 #define RETURN_TFTP_ERROR ENCODE_ERROR (23) 882 #define RETURN_PROTOCOL_ERROR ENCODE_ERROR (24) 888 #define RETURN_INCOMPATIBLE_VERSION ENCODE_ERROR (25) 893 #define RETURN_SECURITY_VIOLATION ENCODE_ERROR (26) 898 #define RETURN_CRC_ERROR ENCODE_ERROR (27) 903 #define RETURN_END_OF_MEDIA ENCODE_ERROR (28) 908 #define RETURN_END_OF_FILE ENCODE_ERROR (31) 913 #define RETURN_INVALID_LANGUAGE ENCODE_ERROR (32) 920 #define RETURN_COMPROMISED_DATA ENCODE_ERROR (33) 926 #define RETURN_WARN_UNKNOWN_GLYPH ENCODE_WARNING (1) 931 #define RETURN_WARN_DELETE_FAILURE ENCODE_WARNING (2) 937 #define RETURN_WARN_WRITE_FAILURE ENCODE_WARNING (3) 943 #define RETURN_WARN_BUFFER_TOO_SMALL ENCODE_WARNING (4) 949 #define RETURN_WARN_STALE_DATA ENCODE_WARNING (5) 963 #define SIGNATURE_16(A, B) ((A) | (B << 8)) 980 #define SIGNATURE_32(A, B, C, D) (SIGNATURE_16 (A, B) | (SIGNATURE_16 (C, D) << 16)) 1001 #define SIGNATURE_64(A, B, C, D, E, F, G, H) \ 1002 (SIGNATURE_32(A, B, C, D) | ((UINT64) (SIGNATURE_32(E, F, G, H)) << 32))
#define VERIFY_SIZE_OF(TYPE, Size)
unsigned long long UINT64