diff options
author | Peter Zijlstra <a.p.zijlstra@chello.nl> | 2010-01-22 09:38:26 -0500 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2010-01-29 03:01:38 -0500 |
commit | 8433be1184e4f22c37d4b8ed36cde529a47882f4 (patch) | |
tree | 01cb5a64cb21760db64a86af63e991a1ad97019a /arch | |
parent | c91e0f5da81c6f3a611a1bd6d0cca6717c90fdab (diff) |
perf_event: x86: Reduce some overly long lines with some MACROs
Introduce INTEL_EVENT_CONSTRAINT and FIXED_EVENT_CONSTRAINT to reduce
some line length and typing work.
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Stephane Eranian <eranian@google.com>
LKML-Reference: <20100122155535.688730371@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/x86/kernel/cpu/perf_event.c | 68 |
1 files changed, 37 insertions, 31 deletions
diff --git a/arch/x86/kernel/cpu/perf_event.c b/arch/x86/kernel/cpu/perf_event.c index 921bbf732e77..4d1ed101c10d 100644 --- a/arch/x86/kernel/cpu/perf_event.c +++ b/arch/x86/kernel/cpu/perf_event.c | |||
@@ -97,6 +97,12 @@ struct cpu_hw_events { | |||
97 | .cmask = (m), \ | 97 | .cmask = (m), \ |
98 | } | 98 | } |
99 | 99 | ||
100 | #define INTEL_EVENT_CONSTRAINT(c, n) \ | ||
101 | EVENT_CONSTRAINT(c, n, INTEL_ARCH_EVENT_MASK) | ||
102 | |||
103 | #define FIXED_EVENT_CONSTRAINT(c, n) \ | ||
104 | EVENT_CONSTRAINT(c, n, INTEL_ARCH_FIXED_MASK) | ||
105 | |||
100 | #define EVENT_CONSTRAINT_END \ | 106 | #define EVENT_CONSTRAINT_END \ |
101 | EVENT_CONSTRAINT(0, 0, 0) | 107 | EVENT_CONSTRAINT(0, 0, 0) |
102 | 108 | ||
@@ -192,12 +198,12 @@ static u64 p6_pmu_raw_event(u64 hw_event) | |||
192 | 198 | ||
193 | static struct event_constraint intel_p6_event_constraints[] = | 199 | static struct event_constraint intel_p6_event_constraints[] = |
194 | { | 200 | { |
195 | EVENT_CONSTRAINT(0xc1, 0x1, INTEL_ARCH_EVENT_MASK), /* FLOPS */ | 201 | INTEL_EVENT_CONSTRAINT(0xc1, 0x1), /* FLOPS */ |
196 | EVENT_CONSTRAINT(0x10, 0x1, INTEL_ARCH_EVENT_MASK), /* FP_COMP_OPS_EXE */ | 202 | INTEL_EVENT_CONSTRAINT(0x10, 0x1), /* FP_COMP_OPS_EXE */ |
197 | EVENT_CONSTRAINT(0x11, 0x1, INTEL_ARCH_EVENT_MASK), /* FP_ASSIST */ | 203 | INTEL_EVENT_CONSTRAINT(0x11, 0x1), /* FP_ASSIST */ |
198 | EVENT_CONSTRAINT(0x12, 0x2, INTEL_ARCH_EVENT_MASK), /* MUL */ | 204 | INTEL_EVENT_CONSTRAINT(0x12, 0x2), /* MUL */ |
199 | EVENT_CONSTRAINT(0x13, 0x2, INTEL_ARCH_EVENT_MASK), /* DIV */ | 205 | INTEL_EVENT_CONSTRAINT(0x13, 0x2), /* DIV */ |
200 | EVENT_CONSTRAINT(0x14, 0x1, INTEL_ARCH_EVENT_MASK), /* CYCLES_DIV_BUSY */ | 206 | INTEL_EVENT_CONSTRAINT(0x14, 0x1), /* CYCLES_DIV_BUSY */ |
201 | EVENT_CONSTRAINT_END | 207 | EVENT_CONSTRAINT_END |
202 | }; | 208 | }; |
203 | 209 | ||
@@ -217,41 +223,41 @@ static const u64 intel_perfmon_event_map[] = | |||
217 | 223 | ||
218 | static struct event_constraint intel_core_event_constraints[] = | 224 | static struct event_constraint intel_core_event_constraints[] = |
219 | { | 225 | { |
220 | EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32)), INTEL_ARCH_FIXED_MASK), /* INSTRUCTIONS_RETIRED */ | 226 | FIXED_EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32))), /* INSTRUCTIONS_RETIRED */ |
221 | EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33)), INTEL_ARCH_FIXED_MASK), /* UNHALTED_CORE_CYCLES */ | 227 | FIXED_EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33))), /* UNHALTED_CORE_CYCLES */ |
222 | EVENT_CONSTRAINT(0x10, 0x1, INTEL_ARCH_EVENT_MASK), /* FP_COMP_OPS_EXE */ | 228 | INTEL_EVENT_CONSTRAINT(0x10, 0x1), /* FP_COMP_OPS_EXE */ |
223 | EVENT_CONSTRAINT(0x11, 0x2, INTEL_ARCH_EVENT_MASK), /* FP_ASSIST */ | 229 | INTEL_EVENT_CONSTRAINT(0x11, 0x2), /* FP_ASSIST */ |
224 | EVENT_CONSTRAINT(0x12, 0x2, INTEL_ARCH_EVENT_MASK), /* MUL */ | 230 | INTEL_EVENT_CONSTRAINT(0x12, 0x2), /* MUL */ |
225 | EVENT_CONSTRAINT(0x13, 0x2, INTEL_ARCH_EVENT_MASK), /* DIV */ | 231 | INTEL_EVENT_CONSTRAINT(0x13, 0x2), /* DIV */ |
226 | EVENT_CONSTRAINT(0x14, 0x1, INTEL_ARCH_EVENT_MASK), /* CYCLES_DIV_BUSY */ | 232 | INTEL_EVENT_CONSTRAINT(0x14, 0x1), /* CYCLES_DIV_BUSY */ |
227 | EVENT_CONSTRAINT(0x18, 0x1, INTEL_ARCH_EVENT_MASK), /* IDLE_DURING_DIV */ | 233 | INTEL_EVENT_CONSTRAINT(0x18, 0x1), /* IDLE_DURING_DIV */ |
228 | EVENT_CONSTRAINT(0x19, 0x2, INTEL_ARCH_EVENT_MASK), /* DELAYED_BYPASS */ | 234 | INTEL_EVENT_CONSTRAINT(0x19, 0x2), /* DELAYED_BYPASS */ |
229 | EVENT_CONSTRAINT(0xa1, 0x1, INTEL_ARCH_EVENT_MASK), /* RS_UOPS_DISPATCH_CYCLES */ | 235 | INTEL_EVENT_CONSTRAINT(0xa1, 0x1), /* RS_UOPS_DISPATCH_CYCLES */ |
230 | EVENT_CONSTRAINT(0xcb, 0x1, INTEL_ARCH_EVENT_MASK), /* MEM_LOAD_RETIRED */ | 236 | INTEL_EVENT_CONSTRAINT(0xcb, 0x1), /* MEM_LOAD_RETIRED */ |
231 | EVENT_CONSTRAINT_END | 237 | EVENT_CONSTRAINT_END |
232 | }; | 238 | }; |
233 | 239 | ||
234 | static struct event_constraint intel_nehalem_event_constraints[] = | 240 | static struct event_constraint intel_nehalem_event_constraints[] = |
235 | { | 241 | { |
236 | EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32)), INTEL_ARCH_FIXED_MASK), /* INSTRUCTIONS_RETIRED */ | 242 | FIXED_EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32))), /* INSTRUCTIONS_RETIRED */ |
237 | EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33)), INTEL_ARCH_FIXED_MASK), /* UNHALTED_CORE_CYCLES */ | 243 | FIXED_EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33))), /* UNHALTED_CORE_CYCLES */ |
238 | EVENT_CONSTRAINT(0x40, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_CACHE_LD */ | 244 | INTEL_EVENT_CONSTRAINT(0x40, 0x3), /* L1D_CACHE_LD */ |
239 | EVENT_CONSTRAINT(0x41, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_CACHE_ST */ | 245 | INTEL_EVENT_CONSTRAINT(0x41, 0x3), /* L1D_CACHE_ST */ |
240 | EVENT_CONSTRAINT(0x42, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_CACHE_LOCK */ | 246 | INTEL_EVENT_CONSTRAINT(0x42, 0x3), /* L1D_CACHE_LOCK */ |
241 | EVENT_CONSTRAINT(0x43, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_ALL_REF */ | 247 | INTEL_EVENT_CONSTRAINT(0x43, 0x3), /* L1D_ALL_REF */ |
242 | EVENT_CONSTRAINT(0x4e, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_PREFETCH */ | 248 | INTEL_EVENT_CONSTRAINT(0x4e, 0x3), /* L1D_PREFETCH */ |
243 | EVENT_CONSTRAINT(0x4c, 0x3, INTEL_ARCH_EVENT_MASK), /* LOAD_HIT_PRE */ | 249 | INTEL_EVENT_CONSTRAINT(0x4c, 0x3), /* LOAD_HIT_PRE */ |
244 | EVENT_CONSTRAINT(0x51, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D */ | 250 | INTEL_EVENT_CONSTRAINT(0x51, 0x3), /* L1D */ |
245 | EVENT_CONSTRAINT(0x52, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_CACHE_PREFETCH_LOCK_FB_HIT */ | 251 | INTEL_EVENT_CONSTRAINT(0x52, 0x3), /* L1D_CACHE_PREFETCH_LOCK_FB_HIT */ |
246 | EVENT_CONSTRAINT(0x53, 0x3, INTEL_ARCH_EVENT_MASK), /* L1D_CACHE_LOCK_FB_HIT */ | 252 | INTEL_EVENT_CONSTRAINT(0x53, 0x3), /* L1D_CACHE_LOCK_FB_HIT */ |
247 | EVENT_CONSTRAINT(0xc5, 0x3, INTEL_ARCH_EVENT_MASK), /* CACHE_LOCK_CYCLES */ | 253 | INTEL_EVENT_CONSTRAINT(0xc5, 0x3), /* CACHE_LOCK_CYCLES */ |
248 | EVENT_CONSTRAINT_END | 254 | EVENT_CONSTRAINT_END |
249 | }; | 255 | }; |
250 | 256 | ||
251 | static struct event_constraint intel_gen_event_constraints[] = | 257 | static struct event_constraint intel_gen_event_constraints[] = |
252 | { | 258 | { |
253 | EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32)), INTEL_ARCH_FIXED_MASK), /* INSTRUCTIONS_RETIRED */ | 259 | FIXED_EVENT_CONSTRAINT(0xc0, (0x3|(1ULL<<32))), /* INSTRUCTIONS_RETIRED */ |
254 | EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33)), INTEL_ARCH_FIXED_MASK), /* UNHALTED_CORE_CYCLES */ | 260 | FIXED_EVENT_CONSTRAINT(0x3c, (0x3|(1ULL<<33))), /* UNHALTED_CORE_CYCLES */ |
255 | EVENT_CONSTRAINT_END | 261 | EVENT_CONSTRAINT_END |
256 | }; | 262 | }; |
257 | 263 | ||