#include "opd_interface.h"#include "opd_printf.h"#include "opd_sfile.h"#include "opd_stats.h"#include "opd_trans.h"#include "op_libiberty.h"#include <stdlib.h>#include <stdio.h>
Go to the source code of this file.
Data Structures | |
| struct | spu_context_info |
Defines | |
| #define | SPU_NUM_MASK 0xFFFFFFFF00000000ULL |
| #define | SPU_CYCLES_COUNTER 0 |
Functions | |
| static void | process_spu_samples (struct transient *trans) |
| void | code_spu_profiling (struct transient *trans) |
| void | code_spu_ctx_switch (struct transient *trans) |
| static void | cache_spu_context_info (struct transient *trans) |
| static void | update_trans_for_spu (struct transient *trans) |
| static void | opd_put_spu_sample (struct transient *trans, unsigned long long pc) |
Variables | |
| static struct spu_context_info * | spu_context_cache |
| void(* | special_processor )(struct transient *) |
Processing the sample buffer for Cell BE SPU profile
Definition in file opd_spu.c.
| #define SPU_CYCLES_COUNTER 0 |
Definition at line 111 of file opd_spu.c.
Referenced by opd_put_spu_sample().
| #define SPU_NUM_MASK 0xFFFFFFFF00000000ULL |
Definition at line 110 of file opd_spu.c.
Referenced by opd_put_spu_sample().
| static void cache_spu_context_info | ( | struct transient * | trans | ) | [static] |
Definition at line 91 of file opd_spu.c.
References spu_context_info::app_cookie, operf_transient::cpu, spu_context_info::embedded_offset, spu_context_info::spu_cookie, operf_transient::tgid, spu_context_info::tgid, operf_transient::tid, spu_context_info::tid, and trans.
Referenced by process_spu_samples().

| void code_spu_ctx_switch | ( | struct transient * | trans | ) |
Definition at line 55 of file opd_spu.c.
References clear_trans_current(), operf_transient::cpu, enough_remaining(), find_cookie(), pop_buffer_value(), operf_transient::tgid, operf_transient::tid, trans, and vmisc.

| void code_spu_profiling | ( | struct transient * | trans | ) |
Definition at line 44 of file opd_spu.c.
References pop_buffer_value(), process_spu_samples(), special_processor, and trans.

| static void opd_put_spu_sample | ( | struct transient * | trans, | |
| unsigned long long | pc | |||
| ) | [static] |
Definition at line 114 of file opd_spu.c.
References clear_trans_current(), operf_transient::cpu, operf_transient::current, operf_transient::event, operf_transient::pc, sfile_find(), sfile_log_sample(), SPU_CYCLES_COUNTER, SPU_NUM_MASK, TRACING_ON, TRACING_START, trans, update_trans_for_spu(), and update_trans_last().
Referenced by process_spu_samples().


| static void process_spu_samples | ( | struct transient * | trans | ) | [static] |
Definition at line 147 of file opd_spu.c.
References cache_spu_context_info(), handlers, operf_transient::in_kernel, is_escape_code(), LAST_CODE, OPD_DANGLING_CODE, opd_put_spu_sample(), opd_stats, pop_buffer_value(), trans, verbprintf, and vmisc.
Referenced by code_spu_profiling().


| static void update_trans_for_spu | ( | struct transient * | trans | ) | [static] |
Definition at line 101 of file opd_spu.c.
References spu_context_info::app_cookie, operf_transient::cpu, spu_context_info::embedded_offset, spu_context_info::spu_cookie, spu_context_info::tgid, operf_transient::tgid, spu_context_info::tid, operf_transient::tid, and trans.
Referenced by opd_put_spu_sample().

| void(* special_processor)(struct transient *) |
Referenced by code_spu_profiling(), and opd_process_samples().
struct spu_context_info* spu_context_cache [static] |
1.6.1