• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

sst/elements/genericProc/ssBackEnd/ssb_cv_link.h

00001 // Copyright 2009-2010 Sandia Corporation. Under the terms
00002 // of Contract DE-AC04-94AL85000 with Sandia Corporation, the U.S.
00003 // Government retains certain rights in this software.
00004 // 
00005 // Copyright (c) 2009-2010, Sandia Corporation
00006 // All rights reserved.
00007 // 
00008 // This file is part of the SST software package. For license
00009 // information, see the LICENSE file in the top level directory of the
00010 // distribution.
00011 
00012 #ifndef SSB_CV_LINK_H
00013 #define SSB_CV_LINK_H
00014 
00015 #include <stdio.h>
00016 
00017 
00018 class convProc;
00019 
00020 //: an entry in the create vector 
00021 //
00022 // The create vector maps a logical register to a creator in the RUU
00023 // (and specific output operand) or the architected register file (if
00024 // RS_link is NULL)
00025 //
00026 //!SEC:ssBack
00027 struct CV_link {
00028   static void cv_init(convProc*);
00029   static void cv_dump(FILE *stream, convProc*);
00030   struct RUU_station *rs;               /* creator's reservation station */
00031   int odep_num;                         /* specific output operand */
00032 };
00033 
00034 /* a NULL create vector entry */
00035 extern CV_link CVLINK_NULL;
00036 
00037 /* get a new create vector link */
00038 #define CVLINK_INIT(CV, RS,ONUM)        ((CV).rs = (RS), (CV).odep_num = (ONUM))
00039 
00040 /* size of the create vector (one entry per architected register) */
00041 #define CV_BMAP_SZ              (BITMAP_SIZE(MD_TOTAL_REGS+2))
00042 
00043 
00044 #endif

Generated on Fri Oct 22 2010 11:02:24 for SST by  doxygen 1.7.1