dash_prefetch.h 1.06 KB
/*
 * Copyright (C) 1996-1998 by the Board of Trustees
 *    of Leland Stanford Junior University.
 * 
 * This file is part of the SimOS distribution. 
 * See LICENSE file for terms of the license. 
 *
 */

/*****************************************************************
 * dash_prefetch.h
 * 
 * $Date: 2002/05/29 01:09:10 $
 * $Author: blythe $
 *****************************************************************/

#ifndef DASH_PREFETCH_H
#define DASH_PREFETCH_H

extern int dashPrefetchEnabled;
extern int DashPrefetch(int cpuNum, VA vAddr, void * val, int size,int *retVal);
extern int DashTclCmd(ClientData, Tcl_Interp *interp, int argc, char *argv[]);

#ifdef DASH_PREFETCH
# define DASH_DO_PREFETCH(_cpu,_va,_val,_sz) { \
   int ret;      \
   if (dashPrefetchEnabled  && DashPrefetch(_cpu,_va,_val,_sz,&ret)) \
          return ret;  \
}                                                                      
                                                                      
#else
# define DASH_DO_PREFETCH(_cpu,_va,_val,_sz)   /* no run-time overhead */
#endif

#endif