/**
* @file libpp/populate_for_spu.h
* Fill up a profile_container from inverted profiles for
* a Cell BE SPU profile
*
* @remark Copyright 2007 OProfile authors
* @remark Read the file COPYING
*
* @author Maynard Johnson
* (C) Copyright IBM Corporation 2007
*/
#ifndef POPULATE_FOR_SPU_H
#define POPULATE_FOR_SPU_H
class profile_container;
class inverted_profile;
class string_filter;
/*
* When profiling SPUs on Cell Broadband Engine, all sample file
* headers get a flag set indicating "spu_profile". This function
* checks the first sample file for this indicator.
*/
bool is_spu_profile(inverted_profile const & ip);
/*
* This is a special-purpose function for CELL BE SPU profiling.
* See populate_spu_profile_from_files prologue for more details.
*/
void populate_for_spu_image(profile_container & samples,
inverted_profile const & ip,
string_filter const & symbol_filter,
bool * has_debug_info);
enum profile_type {
unknown_profile = -1,
normal_profile,
cell_spu_profile
};
#endif /* POPULATE_FOR_SPU_H */