diff options
author | Bob Moore <robert.moore@intel.com> | 2013-01-08 23:46:04 +0100 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2013-01-10 12:36:23 +0100 |
commit | 6e1888fdcaad176fd9ce1180d97a16f2e6ea707c (patch) | |
tree | f24988c916e6c75e13f84847fa37443d27ef43d5 | |
parent | f55994f20523532c02056f8f0d80495c375ee271 (diff) |
ACPICA: Cleanup ACPI_DEBUG_PRINT macros to fix potential build breakages.
Fix two issues with the ACPI_DEBUG_PRINT macros.
1) Add the ACPI_DO_WHILE0 macro to the main DEBUG_PRINT helper macro.
2) Rename ACPI_DEBUG macro to ACPI_DO_DEBUG_PRINT since ACPI_DEBUG
is already commonly used by the various hosts.
Signed-off-by: Bob Moore <robert.moore@intel.com>
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r-- | include/acpi/acoutput.h | 36 |
1 files changed, 20 insertions, 16 deletions
diff --git a/include/acpi/acoutput.h b/include/acpi/acoutput.h index 23db272e0bff..b48cb3459778 100644 --- a/include/acpi/acoutput.h +++ b/include/acpi/acoutput.h @@ -281,7 +281,16 @@ * debug message outside of the print function itself. This improves overall * performance at a relatively small code cost. Implementation involves the * use of variadic macros supported by C99. + * + * Note: the ACPI_DO_WHILE0 macro is used to prevent some compilers from + * complaining about these constructs. On other compilers the do...while + * adds some extra code, so this feature is optional. */ +#ifdef ACPI_USE_DO_WHILE_0 +#define ACPI_DO_WHILE0(a) do a while(0) +#else +#define ACPI_DO_WHILE0(a) a +#endif /* DEBUG_PRINT functions */ @@ -290,17 +299,21 @@ /* Helper macros for DEBUG_PRINT */ -#define ACPI_DEBUG(function, level, line, filename, modulename, component, ...) \ - if (ACPI_IS_DEBUG_ENABLED (level, component)) \ - { \ - function (level, line, filename, modulename, component, __VA_ARGS__); \ - } +#define ACPI_DO_DEBUG_PRINT(function, level, line, filename, modulename, component, ...) \ + ACPI_DO_WHILE0 ({ \ + if (ACPI_IS_DEBUG_ENABLED (level, component)) \ + { \ + function (level, line, filename, modulename, component, __VA_ARGS__); \ + } \ + }) #define ACPI_ACTUAL_DEBUG(level, line, filename, modulename, component, ...) \ - ACPI_DEBUG (acpi_debug_print, level, line, filename, modulename, component, __VA_ARGS__) + ACPI_DO_DEBUG_PRINT (acpi_debug_print, level, line, \ + filename, modulename, component, __VA_ARGS__) #define ACPI_ACTUAL_DEBUG_RAW(level, line, filename, modulename, component, ...) \ - ACPI_DEBUG (acpi_debug_print_raw, level, line, filename, modulename, component, __VA_ARGS__) + ACPI_DO_DEBUG_PRINT (acpi_debug_print_raw, level, line, \ + filename, modulename, component, __VA_ARGS__) /* * Function entry tracing @@ -342,16 +355,7 @@ * * One of the FUNCTION_TRACE macros above must be used in conjunction * with these macros so that "_AcpiFunctionName" is defined. - * - * Note: the DO_WHILE0 macro is used to prevent some compilers from - * complaining about these constructs. On other compilers the do...while - * adds some extra code, so this feature is optional. */ -#ifdef ACPI_USE_DO_WHILE_0 -#define ACPI_DO_WHILE0(a) do a while(0) -#else -#define ACPI_DO_WHILE0(a) a -#endif /* Exit trace helper macro */ |