Hi,

I've made a stab at consolidating the event and group types for the Power chips 
(ppc970 through Power7).

I'm not real happy with the result.  It is a little more compact in the coding 
of the case statements, but in gaining some compaction, we've lost some clarity.

I made an attempt to be able to use one pair of types for all processors, but 
the C99 language doesn't appear to like things like this:

int *foo = { 1, 2, 3 };

but has no problem with:

char *foo = "some string";

This seems like an inconsistent compiler design to me, but without that 
support, 
I cannot easily use a pointer in replacement for fixed-length arrays.  So the 
choice then becomes:

1) Create separately-declared and named fixed-length arrays which are then 
pointed to by the event and group arrays.

2) Consolidate the structures containing fixed-length arrays that are really 
the 
same, but keep separate those that aren't.  This means we still need switch 
statements based on the PMU type, but the number of truly separate cases is 
reduced.

I chose 2 because it creates a much smaller patch, and I'm not sure I like the 
idea of creating a bunch of separate declarations, and would take extra room 
over all (adds pointers).  On the other hand, the structures have ugly names 
like pme_power_c6_v4_event_t (c6 = 6 counters, v4 = 4 group vectors).

Anyway, please have a look, and let me know if you see another way to do it, or 
  or if you'd have solution 1.

P.S.  As I was working on this, I ran across a few problems with the PCL codes 
on Power5+ and Power6, and I will need to patch that at some point.  I would 
like to get this "consolidate or not" decision made first, though.

-- 
Regards,

- Corey

Corey Ashford
Software Engineer
IBM Linux Technology Center, Linux Toolchain
cjash...@us.ibm.com


------------------------------------------------------------------------------
Enter the BlackBerry Developer Challenge  
This is your chance to win up to $100,000 in prizes! For a limited time, 
vendors submitting new applications to BlackBerry App World(TM) will have
the opportunity to enter the BlackBerry Developer Challenge. See full prize  
details at: http://p.sf.net/sfu/Challenge
_______________________________________________
perfmon2-devel mailing list
perfmon2-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/perfmon2-devel

Reply via email to