Deleted Added
sdiff udiff text old ( 9855:a317086a3e19 ) new ( 10037:5cac77888310 )
full compact
1/*
2 * Copyright (c) 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

--- 223 unchanged lines hidden (view full) ---

232 /** Mask that should be anded for binary/symbol loading.
233 * This allows one two different OS requirements for the same ISA to be
234 * handled. Some OSes are compiled for a virtual address and need to be
235 * loaded into physical memory that starts at address 0, while other
236 * bare metal tools generate images that start at address 0.
237 */
238 Addr loadAddrMask;
239
240 protected:
241 uint64_t nextPID;
242
243 public:
244 uint64_t allocatePID()
245 {
246 return nextPID++;
247 }

--- 68 unchanged lines hidden (view full) ---

316 {
317 return ++workItemsBegin;
318 }
319
320 /**
321 * Called by pseudo_inst to track the number of work items completed by
322 * this system.
323 */
324 uint64_t
325 incWorkItemsEnd()
326 {
327 return ++workItemsEnd;
328 }
329
330 /**
331 * Called by pseudo_inst to mark the cpus actively executing work items.
332 * Returns the total number of cpus that have executed work item begin or
333 * ends.
334 */
335 int
336 markWorkItem(int index)
337 {
338 int count = 0;
339 assert(index < activeCpus.size());
340 activeCpus[index] = true;
341 for (std::vector<bool>::iterator i = activeCpus.begin();
342 i < activeCpus.end(); i++) {
343 if (*i) count++;
344 }
345 return count;
346 }
347
348 inline void workItemBegin(uint32_t tid, uint32_t workid)
349 {

--- 194 unchanged lines hidden ---