URL
https://opencores.org/ocsvn/or1k/or1k/trunk
Subversion Repositories or1k
[/] [or1k/] [trunk/] [or1ksim/] [cpu/] [common/] [stats.h] - Rev 3
Go to most recent revision | Compare with Previous | Blame | View Log
/* stats.h -- Header file for stats.c Copyright (C) 1999 Damjan Lampret, lampret@opencores.org This file is part of OpenRISC 1000 Architectural Simulator. This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */ #define DSTATS_LEN 3000 #define SSTATS_LEN 300 #define FSTATS_LEN 200 struct dstats_entry { char insn1[OPERANDNAME_LEN]; char insn2[OPERANDNAME_LEN]; int cnt_dynamic; int depend; }; struct sstats_entry { char insn[OPERANDNAME_LEN]; int cnt_static; int cnt_dynamic; }; /* single stats */ struct fstats_entry { enum insn_type insn1; enum insn_type insn2; int cnt_dynamic; int depend; }; /* functional units stats */ struct branchstat { int taken; int nottaken; }; struct bpbstat { int hit; int miss; int correct; int incorrect; }; struct bticstat { int hit; int miss; }; struct mstats_entry { int byteadd; struct branchstat beqz; struct branchstat bnez; struct bpbstat bpb; struct bticstat btic; }; /* misc units stats */ extern struct mstats_entry mstats; extern struct sstats_entry sstats[SSTATS_LEN]; extern struct dstats_entry dstats[DSTATS_LEN]; extern struct fstats_entry fstats[FSTATS_LEN]; extern int check_depend(); extern void addsstats(char *item, int cnt_dynamic, int cnt_static); extern void adddstats(char *item1, char *item2, int cnt_dynamic, int depend); extern void addfstats(enum insn_type item1, enum insn_type item2, int cnt_dynamic, int depend); extern void initstats(); extern void printstats();
Go to most recent revision | Compare with Previous | Blame | View Log