source: trunk/IPs/systemC/processor/Morpheo/Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/src/Load_Store_pointer_unit_deallocation.cpp @ 81

Last change on this file since 81 was 81, checked in by rosiere, 16 years ago
  • Finish Environment (and test)
  • Continue predictor_unit
  • Add external tools
  • svn keyword "Id" set
  • Property svn:keywords set to Id
File size: 2.7 KB
Line 
1/*
2 * $Id: Load_Store_pointer_unit_deallocation.cpp 81 2008-04-15 18:40:01Z rosiere $
3 *
4 * [ Description ]
5 *
6 */
7
8#include "Behavioural/Core/Multi_OOO_Engine/OOO_Engine/Rename_unit/Load_Store_pointer_unit/include/Load_Store_pointer_unit.h"
9
10namespace morpheo                    {
11namespace behavioural {
12namespace core {
13namespace multi_ooo_engine {
14namespace ooo_engine {
15namespace rename_unit {
16namespace load_store_pointer_unit {
17
18
19#undef  FUNCTION
20#define FUNCTION "Load_Store_pointer_unit::deallocation"
21  void Load_Store_pointer_unit::deallocation (void)
22  {
23    log_printf(FUNC,Load_Store_pointer_unit,FUNCTION,"Begin");
24
25    if (_usage & USE_SYSTEMC)
26      {
27        delete    in_CLOCK ;
28        delete    in_NRESET;
29
30        // ~~~~~[ Interface : "insert" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
31        delete []  in_INSERT_VAL                  ;
32        delete [] out_INSERT_ACK                  ;
33        if (_param->_have_port_front_end_id)
34        delete []  in_INSERT_FRONT_END_ID         ;
35        if (_param->_have_port_context_id)
36        delete []  in_INSERT_CONTEXT_ID           ;
37        delete []  in_INSERT_TYPE                 ;
38        delete []  in_INSERT_OPERATION            ;
39        delete [] out_INSERT_STORE_QUEUE_PTR_WRITE;
40        if (_param->_have_port_load_queue_ptr)
41        delete [] out_INSERT_LOAD_QUEUE_PTR_WRITE ;
42       
43        // ~~~~~[ Interface : "retire" ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
44        delete []  in_RETIRE_VAL                  ;
45        delete [] out_RETIRE_ACK                  ;
46        if (_param->_have_port_front_end_id)
47        delete []  in_RETIRE_FRONT_END_ID         ;
48        if (_param->_have_port_context_id)
49        delete []  in_RETIRE_CONTEXT_ID           ;
50        delete []  in_RETIRE_TYPE                 ;
51        delete []  in_RETIRE_OPERATION            ;
52        delete []  in_RETIRE_STORE_QUEUE_PTR_WRITE;
53        if (_param->_have_port_load_queue_ptr)
54        delete []  in_RETIRE_LOAD_QUEUE_PTR_WRITE ;
55
56      }
57
58    delete [] reg_STORE_QUEUE_PTR_WRITE    ;
59    delete [] reg_STORE_QUEUE_USE          ;
60    delete [] reg_STORE_QUEUE_NB_USE       ;
61    delete [] reg_LOAD_QUEUE_PTR_WRITE     ;
62    delete [] reg_LOAD_QUEUE_USE           ;
63    delete [] internal_INSERT_ACK          ;
64    delete [] internal_INSERT_OPERATION_USE;
65    delete [] internal_INSERT_LSQ          ;
66    delete [] internal_INSERT_PTR          ;
67    delete [] internal_RETIRE_ACK          ;
68    delete [] internal_RETIRE_OPERATION_USE;
69    delete [] internal_RETIRE_LSQ          ;
70    delete [] internal_RETIRE_PTR          ;
71
72    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
73
74    delete _component;
75
76    log_printf(FUNC,Load_Store_pointer_unit,FUNCTION,"End");
77  };
78
79}; // end namespace load_store_pointer_unit
80}; // end namespace rename_unit
81}; // end namespace ooo_engine
82}; // end namespace multi_ooo_engine
83}; // end namespace core
84
85}; // end namespace behavioural
86}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.