1/**
2 * @file daemon/opd_ibs_trans.h
3 * AMD Family10h Instruction Based Sampling (IBS) translation.
4 *
5 * @remark Copyright 2008 OProfile authors
6 * @remark Read the file COPYING
7 *
8 * @author Jason Yeh <jason.yeh@amd.com>
9 * @author Paul Drongowski <paul.drongowski@amd.com>
10 * @author Suravee Suthikulpanit <suravee.suthikulpanit@amd.com>
11 * Copyright (c) 2008 Advanced Micro Devices, Inc.
12 */
13
14#ifndef OPD_IBS_TRANS_H
15#define OPD_IBS_TRANS_H
16
17struct ibs_fetch_sample;
18struct ibs_op_sample;
19struct transient;
20
21struct ibs_translation_table {
22	unsigned int event;
23	void (*translator)(struct transient *);
24};
25
26
27extern void trans_ibs_fetch (struct transient * trans, unsigned int selected_flag);
28extern void trans_ibs_op (struct transient * trans, unsigned int selected_flag);
29extern void trans_ibs_op_ls (struct transient * trans, unsigned int selected_flag);
30extern void trans_ibs_op_nb (struct transient * trans, unsigned int selected_flag);
31extern int  trans_ibs_op_rip_invalid (struct transient * trans);
32extern void trans_ibs_op_mask_reserved (unsigned int family, struct transient * trans);
33extern void trans_ibs_op_ls_memaccess(struct transient * trans);
34extern void trans_ibs_op_bta (struct transient * trans);
35#endif // OPD_IBS_TRANS_H
36