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

Subversion Repositories or1k

[/] [or1k/] [tags/] [nog_patch_47/] [or1ksim/] [cuc/] [bb.c] - Diff between revs 940 and 941

Go to most recent revision | Show entire file | Details | Blame | View Log

Rev 940 Rev 941
Line 59... Line 59...
 
 
/* Copies src basic block into destination */
/* Copies src basic block into destination */
cuc_bb *cpy_bb (cuc_bb *dest, cuc_bb *src)
cuc_bb *cpy_bb (cuc_bb *dest, cuc_bb *src)
{
{
  int i, j;
  int i, j;
 
  dep_list *d;
  assert (dest != src);
  assert (dest != src);
  *dest = *src;
  *dest = *src;
  assert (dest->insn = malloc (sizeof (cuc_insn) * src->ninsn));
  assert (dest->insn = malloc (sizeof (cuc_insn) * src->ninsn));
  for (i = 0; i < src->ninsn; i++)
  for (i = 0; i < src->ninsn; i++) {
 
    d = src->insn[i].dep;
    dest->insn[i] = src->insn[i];
    dest->insn[i] = src->insn[i];
 
    dest->insn[i].dep = NULL;
 
    while (d) {
 
      add_dep (&dest->insn[i].dep, d->ref);
 
      d = d->next;
 
    }
 
  }
 
 
 
  d = src->mdep;
 
  dest->mdep = NULL;
 
  while (d) {
 
    add_dep (&dest->mdep, d->ref);
 
    d = d->next;
 
  }
  if (src->ntim) {
  if (src->ntim) {
    assert (dest->tim = malloc (sizeof (cuc_timings) * src->ntim));
    assert (dest->tim = malloc (sizeof (cuc_timings) * src->ntim));
    for (i = 0; i < src->ntim; i++) {
    for (i = 0; i < src->ntim; i++) {
      dest->tim[i] = src->tim[i];
      dest->tim[i] = src->tim[i];
      if (src->tim[i].nshared) {
      if (src->tim[i].nshared) {
Line 124... Line 139...
    if (f->bb[b].tim && f->bb[b].ntim) free (f->bb[b].tim);
    if (f->bb[b].tim && f->bb[b].ntim) free (f->bb[b].tim);
  }
  }
  free (f);
  free (f);
}
}
 
 
 
 
/* Recalculates last_used_reg */
/* Recalculates last_used_reg */
void recalc_last_used_reg (cuc_func *f, int b)
void recalc_last_used_reg (cuc_func *f, int b)
{
{
  int i;
  int i;
  cuc_bb *bb = &f->bb[b];
  cuc_bb *bb = &f->bb[b];

powered by: WebSVN 2.1.0

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