diff options
Diffstat (limited to 'src/gpgpu-sim/shader_trace.h')
| -rw-r--r-- | src/gpgpu-sim/shader_trace.h | 62 |
1 files changed, 34 insertions, 28 deletions
diff --git a/src/gpgpu-sim/shader_trace.h b/src/gpgpu-sim/shader_trace.h index ac4e894..0b6c457 100644 --- a/src/gpgpu-sim/shader_trace.h +++ b/src/gpgpu-sim/shader_trace.h @@ -1,5 +1,5 @@ // Copyright (c) 2009-2011, Tor M. Aamodt, Tim Rogers -// George L. Yuan, Andrew Turner, Inderpreet Singh +// George L. Yuan, Andrew Turner, Inderpreet Singh // The University of British Columbia // All rights reserved. // @@ -8,14 +8,16 @@ // // Redistributions of source code must retain the above copyright notice, this // list of conditions and the following disclaimer. -// Redistributions in binary form must reproduce the above copyright notice, this +// Redistributions in binary form must reproduce the above copyright notice, +// this // list of conditions and the following disclaimer in the documentation and/or // other materials provided with the distribution. // Neither the name of The University of British Columbia nor the names of its // contributors may be used to endorse or promote products derived from this // software without specific prior written permission. // -// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND +// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" +// AND // ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED // WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE // DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE @@ -31,44 +33,48 @@ #include "../trace.h" - #if TRACING_ON #define SHADER_PRINT_STR SIM_PRINT_STR "Core %d - " #define SCHED_PRINT_STR SHADER_PRINT_STR "Scheduler %d - " -#define SHADER_DTRACE(x) (DTRACE(x) && (Trace::sampling_core == get_sid()\ - || Trace::sampling_core == -1)) +#define SHADER_DTRACE(x) \ + (DTRACE(x) && \ + (Trace::sampling_core == get_sid() || Trace::sampling_core == -1)) // Intended to be called from inside components of a shader core. // Depends on a get_sid() function -#define SHADER_DPRINTF(x, ...) do {\ - if (SHADER_DTRACE(x)) {\ - printf( SHADER_PRINT_STR,\ - m_gpu->gpu_sim_cycle + m_gpu->gpu_tot_sim_cycle,\ - Trace::trace_streams_str[Trace::x],\ - get_sid() );\ - printf(__VA_ARGS__);\ - }\ -} while (0) +#define SHADER_DPRINTF(x, ...) \ + do { \ + if (SHADER_DTRACE(x)) { \ + printf(SHADER_PRINT_STR, \ + m_gpu->gpu_sim_cycle + m_gpu->gpu_tot_sim_cycle, \ + Trace::trace_streams_str[Trace::x], get_sid()); \ + printf(__VA_ARGS__); \ + } \ + } while (0) // Intended to be called from inside a scheduler_unit. // Depends on a m_id member -#define SCHED_DPRINTF(...) do {\ - if (SHADER_DTRACE(WARP_SCHEDULER)) {\ - printf( SCHED_PRINT_STR,\ - m_shader->get_gpu()->gpu_sim_cycle + m_shader->get_gpu()->gpu_tot_sim_cycle,\ - Trace::trace_streams_str[Trace::WARP_SCHEDULER],\ - get_sid(),\ - m_id );\ - printf(__VA_ARGS__);\ - }\ -} while (0) +#define SCHED_DPRINTF(...) \ + do { \ + if (SHADER_DTRACE(WARP_SCHEDULER)) { \ + printf(SCHED_PRINT_STR, m_shader->get_gpu()->gpu_sim_cycle + \ + m_shader->get_gpu()->gpu_tot_sim_cycle, \ + Trace::trace_streams_str[Trace::WARP_SCHEDULER], get_sid(), \ + m_id); \ + printf(__VA_ARGS__); \ + } \ + } while (0) #else -#define SHADER_DTRACE(x) (false) -#define SHADER_DPRINTF(x, ...) do {} while (0) -#define SCHED_DPRINTF(x, ...) do {} while (0) +#define SHADER_DTRACE(x) (false) +#define SHADER_DPRINTF(x, ...) \ + do { \ + } while (0) +#define SCHED_DPRINTF(x, ...) \ + do { \ + } while (0) #endif |
