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