ldstop.isa (7967:b243dc8cec8b) ldstop.isa (8102:77ee9ad2e113)
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license

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

277 [self.scale, self.index, self.base] = addr
278 self.disp = disp
279 self.segment = segment
280 self.dataSize = dataSize
281 self.addressSize = addressSize
282 self.memFlags = baseFlags
283 if atCPL0:
284 self.memFlags += " | (CPL0FlagBit << FlagShift)"
1// Copyright (c) 2007-2008 The Hewlett-Packard Development Company
2// All rights reserved.
3//
4// The license below extends only to copyright in the software and shall
5// not be construed as granting a license to any other intellectual
6// property including but not limited to intellectual property relating
7// to a hardware implementation of the functionality of the software
8// licensed hereunder. You may use the software subject to the license

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

277 [self.scale, self.index, self.base] = addr
278 self.disp = disp
279 self.segment = segment
280 self.dataSize = dataSize
281 self.addressSize = addressSize
282 self.memFlags = baseFlags
283 if atCPL0:
284 self.memFlags += " | (CPL0FlagBit << FlagShift)"
285 self.instFlags = ""
285 if prefetch:
286 self.memFlags += " | Request::PREFETCH"
286 if prefetch:
287 self.memFlags += " | Request::PREFETCH"
288 self.instFlags += " | StaticInst::IsDataPrefetch"
287 self.memFlags += " | (machInst.legacy.addr ? " + \
288 "(AddrSizeFlagBit << FlagShift) : 0)"
289
290 def getAllocator(self, microFlags):
291 allocator = '''new %(class_name)s(machInst, macrocodeBlock,
292 %(flags)s, %(scale)s, %(index)s, %(base)s,
293 %(disp)s, %(segment)s, %(data)s,
294 %(dataSize)s, %(addressSize)s, %(memFlags)s)''' % {
295 "class_name" : self.className,
289 self.memFlags += " | (machInst.legacy.addr ? " + \
290 "(AddrSizeFlagBit << FlagShift) : 0)"
291
292 def getAllocator(self, microFlags):
293 allocator = '''new %(class_name)s(machInst, macrocodeBlock,
294 %(flags)s, %(scale)s, %(index)s, %(base)s,
295 %(disp)s, %(segment)s, %(data)s,
296 %(dataSize)s, %(addressSize)s, %(memFlags)s)''' % {
297 "class_name" : self.className,
296 "flags" : self.microFlagsText(microFlags),
298 "flags" : self.microFlagsText(microFlags) + self.instFlags,
297 "scale" : self.scale, "index" : self.index,
298 "base" : self.base,
299 "disp" : self.disp,
300 "segment" : self.segment, "data" : self.data,
301 "dataSize" : self.dataSize, "addressSize" : self.addressSize,
302 "memFlags" : self.memFlags}
303 return allocator
304

--- 191 unchanged lines hidden ---
299 "scale" : self.scale, "index" : self.index,
300 "base" : self.base,
301 "disp" : self.disp,
302 "segment" : self.segment, "data" : self.data,
303 "dataSize" : self.dataSize, "addressSize" : self.addressSize,
304 "memFlags" : self.memFlags}
305 return allocator
306

--- 191 unchanged lines hidden ---