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 @ 88

Last change on this file since 88 was 88, checked in by rosiere, 15 years ago

Almost complete design
with Test and test platform

  • Property svn:keywords set to Id
File size: 2.8 KB
Line 
1/*
2 * $Id: Load_Store_pointer_unit_deallocation.cpp 88 2008-12-10 18:31:39Z 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_is_set(_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_USE_STORE_QUEUE      ;
53        delete []  in_RETIRE_USE_LOAD_QUEUE       ;
54        delete []  in_RETIRE_STORE_QUEUE_PTR_WRITE;
55        if (_param->_have_port_load_queue_ptr)
56        delete []  in_RETIRE_LOAD_QUEUE_PTR_WRITE ;
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
73    // ~~~~~[ Component ]~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~   
74
75    delete _component;
76
77    log_printf(FUNC,Load_Store_pointer_unit,FUNCTION,"End");
78  };
79
80}; // end namespace load_store_pointer_unit
81}; // end namespace rename_unit
82}; // end namespace ooo_engine
83}; // end namespace multi_ooo_engine
84}; // end namespace core
85
86}; // end namespace behavioural
87}; // end namespace morpheo             
Note: See TracBrowser for help on using the repository browser.