• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /**
2  * @file libpp/populate_for_spu.h
3  * Fill up a profile_container from inverted profiles for
4  * a Cell BE SPU profile
5  *
6  * @remark Copyright 2007 OProfile authors
7  * @remark Read the file COPYING
8  *
9  * @author Maynard Johnson
10  * (C) Copyright IBM Corporation 2007
11  */
12 
13 #ifndef POPULATE_FOR_SPU_H
14 #define POPULATE_FOR_SPU_H
15 
16 class profile_container;
17 class inverted_profile;
18 class string_filter;
19 
20 /*
21  * When profiling SPUs on Cell Broadband Engine, all sample file
22  * headers get a flag set indicating "spu_profile".  This function
23  * checks the first sample file for this indicator.
24  */
25 bool is_spu_profile(inverted_profile const & ip);
26 
27 /*
28  * This is a special-purpose function for CELL BE SPU profiling.
29  * See populate_spu_profile_from_files prologue for more details.
30  */
31 void populate_for_spu_image(profile_container & samples,
32 			    inverted_profile const & ip,
33 			    string_filter const & symbol_filter,
34 			    bool * has_debug_info);
35 
36 enum profile_type {
37 	unknown_profile = -1,
38 	normal_profile,
39 	cell_spu_profile
40 };
41 
42 #endif /* POPULATE_FOR_SPU_H */
43