OpenCores
URL https://opencores.org/ocsvn/or1k/or1k/trunk

Subversion Repositories or1k

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /
    from Rev 1427 to Rev 1428
    Reverse comparison

Rev 1427 → Rev 1428

/trunk/or1ksim/cpu/or32/execute.c
204,7 → 204,7
dst: flag src: flag always 1
*/
 
int depend_operands(prev, next)
static int check_depend(prev, next)
struct iqueue_entry *prev;
struct iqueue_entry *next;
{
323,11 → 323,13
{
if (config.cpu.dependstats) {
/* Dynamic, dependency stats. */
adddstats(icomplet[0].insn_index, current->insn_index, 1, check_depend());
adddstats(icomplet[0].insn_index, current->insn_index, 1,
check_depend(icomplet, current));
 
/* Dynamic, functional units stats. */
addfstats(or32_opcodes[icomplet[0].insn_index].func_unit,
or32_opcodes[current->insn_index].func_unit, 1, check_depend());
or32_opcodes[current->insn_index].func_unit, 1,
check_depend(icomplet, current));
 
/* Dynamic, single stats. */
addsstats(current->insn_index, 1);
350,13 → 352,13
/* Pseudo multiple issue benchmark */
if ((multissue[or32_opcodes[current->insn_index].func_unit] < 1) ||
(check_depend()) || (issued_per_cycle < 1)) {
(check_depend(icomplet, current)) || (issued_per_cycle < 1)) {
int i;
for (i = 0; i < 20; i++)
multissue[i] = 2;
issued_per_cycle = 2;
runtime.cpu.supercycles++;
if (check_depend())
if (check_depend(icomplet, current))
runtime.cpu.hazardwait++;
multissue[it_unknown] = 2;
multissue[it_shift] = 2;
/trunk/or1ksim/cpu/common/stats.c
59,14 → 59,6
struct dmmustats_entry dmmu_stats = {0}; /* data mmu stats */
struct raw_stats raw_stats = {0}; /* RAW hazard stats */
 
/* Dependency */
 
int check_depend()
{
debug(5,"check_depend\n");
return depend_operands(&icomplet[0], &iqueue[0]);
}
 
void addsstats(int item, int cnt_dynamic)
{
int i = 0;
/trunk/or1ksim/cpu/common/stats.h
102,7 → 102,6
extern struct dmmustats_entry dmmu_stats;
extern struct raw_stats raw_stats;
 
extern int check_depend();
extern void addsstats(int item, int cnt_dynamic);
extern void adddstats(int item1, int item2, int cnt_dynamic, int depend);
extern void addfstats(enum insn_type item1, enum insn_type item2, int cnt_dynamic, int depend);

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.