1/* 2 * Copyright (c) 2012-2014 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 --- 92 unchanged lines hidden (view full) --- 101 uint8_t *dataBlks; 102 103 /** The amount to shift the address to get the set. */ 104 int setShift; 105 /** The amount to shift the address to get the tag. */ 106 int tagShift; 107 /** Mask out all bits that aren't part of the set index. */ 108 unsigned setMask; |
109 110public: 111 112 /** Convenience typedef. */ 113 typedef BaseSetAssocParams Params; 114 115 /** 116 * Construct and initialize this tag store. --- 198 unchanged lines hidden (view full) --- 315 * @return The set index of the address. 316 */ 317 int extractSet(Addr addr) const override 318 { 319 return ((addr >> setShift) & setMask); 320 } 321 322 /** |
323 * Regenerate the block address from the tag. 324 * @param tag The tag of the block. 325 * @param set The set of the block. 326 * @return The block address. 327 */ 328 Addr regenerateBlkAddr(Addr tag, unsigned set) const override 329 { 330 return ((tag << tagShift) | ((Addr)set << setShift)); --- 38 unchanged lines hidden --- |