lsq_impl.hh (9444:ab47fe7f03f0) | lsq_impl.hh (9868:44a67004d6b4) |
---|---|
1/* 2 * Copyright (c) 2011-2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 47 unchanged lines hidden (view full) --- 56template <class Impl> 57LSQ<Impl>::LSQ(O3CPU *cpu_ptr, IEW *iew_ptr, DerivO3CPUParams *params) 58 : cpu(cpu_ptr), iewStage(iew_ptr), 59 LQEntries(params->LQEntries), 60 SQEntries(params->SQEntries), 61 numThreads(params->numThreads), 62 retryTid(-1) 63{ | 1/* 2 * Copyright (c) 2011-2012 ARM Limited 3 * All rights reserved 4 * 5 * The license below extends only to copyright in the software and shall 6 * not be construed as granting a license to any other intellectual 7 * property including but not limited to intellectual property relating 8 * to a hardware implementation of the functionality of the software --- 47 unchanged lines hidden (view full) --- 56template <class Impl> 57LSQ<Impl>::LSQ(O3CPU *cpu_ptr, IEW *iew_ptr, DerivO3CPUParams *params) 58 : cpu(cpu_ptr), iewStage(iew_ptr), 59 LQEntries(params->LQEntries), 60 SQEntries(params->SQEntries), 61 numThreads(params->numThreads), 62 retryTid(-1) 63{ |
64 assert(numThreads > 0 && numThreads <= Impl::MaxThreads); 65 |
|
64 //**********************************************/ 65 //************ Handle SMT Parameters ***********/ 66 //**********************************************/ 67 std::string policy = params->smtLSQPolicy; 68 69 //Convert string to lowercase 70 std::transform(policy.begin(), policy.end(), policy.begin(), 71 (int(*)(int)) tolower); --- 32 unchanged lines hidden (view full) --- 104 "%i entries per LQ | %i entries per SQ\n", 105 maxLQEntries,maxSQEntries); 106 } else { 107 assert(0 && "Invalid LSQ Sharing Policy.Options Are:{Dynamic," 108 "Partitioned, Threshold}"); 109 } 110 111 //Initialize LSQs | 66 //**********************************************/ 67 //************ Handle SMT Parameters ***********/ 68 //**********************************************/ 69 std::string policy = params->smtLSQPolicy; 70 71 //Convert string to lowercase 72 std::transform(policy.begin(), policy.end(), policy.begin(), 73 (int(*)(int)) tolower); --- 32 unchanged lines hidden (view full) --- 106 "%i entries per LQ | %i entries per SQ\n", 107 maxLQEntries,maxSQEntries); 108 } else { 109 assert(0 && "Invalid LSQ Sharing Policy.Options Are:{Dynamic," 110 "Partitioned, Threshold}"); 111 } 112 113 //Initialize LSQs |
114 thread = new LSQUnit[numThreads]; |
|
112 for (ThreadID tid = 0; tid < numThreads; tid++) { 113 thread[tid].init(cpu, iew_ptr, params, this, 114 maxLQEntries, maxSQEntries, tid); 115 thread[tid].setDcachePort(&cpu_ptr->getDataPort()); 116 } 117} 118 119 --- 538 unchanged lines hidden --- | 115 for (ThreadID tid = 0; tid < numThreads; tid++) { 116 thread[tid].init(cpu, iew_ptr, params, this, 117 maxLQEntries, maxSQEntries, tid); 118 thread[tid].setDcachePort(&cpu_ptr->getDataPort()); 119 } 120} 121 122 --- 538 unchanged lines hidden --- |