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 //**********************************************/
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
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 ---
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 //**********************************************/
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
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 ---