cpu_policy.hh (2674:6d4afef73a20) | cpu_policy.hh (5553:de0fa35df4cb) |
---|---|
1/* 2 * Copyright (c) 2004-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 51 unchanged lines hidden (view full) --- 60 * the alpha_impl.hh file for instructions. 61 */ 62template<class Impl> 63struct SimpleCPUPolicy 64{ 65 /** Typedef for the branch prediction unit (which includes the BP, 66 * RAS, and BTB). 67 */ | 1/* 2 * Copyright (c) 2004-2005 The Regents of The University of Michigan 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions are 7 * met: redistributions of source code must retain the above copyright 8 * notice, this list of conditions and the following disclaimer; --- 51 unchanged lines hidden (view full) --- 60 * the alpha_impl.hh file for instructions. 61 */ 62template<class Impl> 63struct SimpleCPUPolicy 64{ 65 /** Typedef for the branch prediction unit (which includes the BP, 66 * RAS, and BTB). 67 */ |
68 typedef BPredUnit | 68 typedef ::BPredUnit<Impl> BPredUnit; |
69 /** Typedef for the register file. Most classes assume a unified 70 * physical register file. 71 */ 72 typedef PhysRegFile<Impl> RegFile; 73 /** Typedef for the freelist of registers. */ 74 typedef SimpleFreeList FreeList; 75 /** Typedef for the rename map. */ 76 typedef SimpleRenameMap RenameMap; 77 /** Typedef for the ROB. */ | 69 /** Typedef for the register file. Most classes assume a unified 70 * physical register file. 71 */ 72 typedef PhysRegFile<Impl> RegFile; 73 /** Typedef for the freelist of registers. */ 74 typedef SimpleFreeList FreeList; 75 /** Typedef for the rename map. */ 76 typedef SimpleRenameMap RenameMap; 77 /** Typedef for the ROB. */ |
78 typedef ROB | 78 typedef ::ROB<Impl> ROB; |
79 /** Typedef for the instruction queue/scheduler. */ 80 typedef InstructionQueue<Impl> IQ; 81 /** Typedef for the memory dependence unit. */ | 79 /** Typedef for the instruction queue/scheduler. */ 80 typedef InstructionQueue<Impl> IQ; 81 /** Typedef for the memory dependence unit. */ |
82 typedef MemDepUnit | 82 typedef ::MemDepUnit<StoreSet, Impl> MemDepUnit; |
83 /** Typedef for the LSQ. */ | 83 /** Typedef for the LSQ. */ |
84 typedef LSQ | 84 typedef ::LSQ<Impl> LSQ; |
85 /** Typedef for the thread-specific LSQ units. */ | 85 /** Typedef for the thread-specific LSQ units. */ |
86 typedef LSQUnit | 86 typedef ::LSQUnit<Impl> LSQUnit; |
87 88 /** Typedef for fetch. */ 89 typedef DefaultFetch<Impl> Fetch; 90 /** Typedef for decode. */ 91 typedef DefaultDecode<Impl> Decode; 92 /** Typedef for rename. */ 93 typedef DefaultRename<Impl> Rename; 94 /** Typedef for Issue/Execute/Writeback. */ --- 9 unchanged lines hidden (view full) --- 104 105 /** The struct for communication between rename and IEW. */ 106 typedef DefaultRenameDefaultIEW<Impl> RenameStruct; 107 108 /** The struct for communication between IEW and commit. */ 109 typedef DefaultIEWDefaultCommit<Impl> IEWStruct; 110 111 /** The struct for communication within the IEW stage. */ | 87 88 /** Typedef for fetch. */ 89 typedef DefaultFetch<Impl> Fetch; 90 /** Typedef for decode. */ 91 typedef DefaultDecode<Impl> Decode; 92 /** Typedef for rename. */ 93 typedef DefaultRename<Impl> Rename; 94 /** Typedef for Issue/Execute/Writeback. */ --- 9 unchanged lines hidden (view full) --- 104 105 /** The struct for communication between rename and IEW. */ 106 typedef DefaultRenameDefaultIEW<Impl> RenameStruct; 107 108 /** The struct for communication between IEW and commit. */ 109 typedef DefaultIEWDefaultCommit<Impl> IEWStruct; 110 111 /** The struct for communication within the IEW stage. */ |
112 typedef IssueStruct | 112 typedef ::IssueStruct<Impl> IssueStruct; |
113 114 /** The struct for all backwards communication. */ 115 typedef TimeBufStruct<Impl> TimeStruct; 116 117}; 118 119#endif //__CPU_O3_CPU_POLICY_HH__ | 113 114 /** The struct for all backwards communication. */ 115 typedef TimeBufStruct<Impl> TimeStruct; 116 117}; 118 119#endif //__CPU_O3_CPU_POLICY_HH__ |