of size reduction when compiler optimization is disabled. If MDEPKG_NDEBUG is\r
defined, then debug and assert related macros wrapped by it are the NULL implementations.\r
\r
-Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>\r
This program and the accompanying materials are licensed and made available under \r
the terms and conditions of the BSD License that accompanies this distribution. \r
The full text of the license may be found at\r
#define DEBUG_VARIABLE 0x00000100 // Variable\r
#define DEBUG_BM 0x00000400 // Boot Manager\r
#define DEBUG_BLKIO 0x00001000 // BlkIo Driver\r
-#define DEBUG_NET 0x00004000 // SNP Driver\r
+#define DEBUG_NET 0x00004000 // Network Io Driver\r
#define DEBUG_UNDI 0x00010000 // UNDI Driver\r
#define DEBUG_LOADFILE 0x00020000 // LoadFile\r
#define DEBUG_EVENT 0x00080000 // Event messages\r
if (DebugAssertEnabled ()) { \\r
if (!(Expression)) { \\r
_ASSERT (Expression); \\r
+ ANALYZER_UNREACHABLE (); \\r
} \\r
} \\r
} while (FALSE)\r
#define ASSERT_EFI_ERROR(StatusParameter)\r
#endif\r
\r
+/**\r
+ Macro that calls DebugAssert() if a RETURN_STATUS evaluates to an error code.\r
+\r
+ If MDEPKG_NDEBUG is not defined and the DEBUG_PROPERTY_DEBUG_ASSERT_ENABLED\r
+ bit of PcdDebugProperyMask is set, then this macro evaluates the\r
+ RETURN_STATUS value specified by StatusParameter. If StatusParameter is an\r
+ error code, then DebugAssert() is called passing in the source filename,\r
+ source line number, and StatusParameter.\r
+\r
+ @param StatusParameter RETURN_STATUS value to evaluate.\r
+\r
+**/\r
+#if !defined(MDEPKG_NDEBUG)\r
+ #define ASSERT_RETURN_ERROR(StatusParameter) \\r
+ do { \\r
+ if (DebugAssertEnabled ()) { \\r
+ if (RETURN_ERROR (StatusParameter)) { \\r
+ DEBUG ((DEBUG_ERROR, "\nASSERT_RETURN_ERROR (Status = %r)\n", \\r
+ StatusParameter)); \\r
+ _ASSERT (!RETURN_ERROR (StatusParameter)); \\r
+ } \\r
+ } \\r
+ } while (FALSE)\r
+#else\r
+ #define ASSERT_RETURN_ERROR(StatusParameter)\r
+#endif\r
+\r
/** \r
Macro that calls DebugAssert() if a protocol is already installed in the \r
handle database.\r