1// Copyright (c) 2007 The Hewlett-Packard Development Company 2// All rights reserved. 3// 4// Redistribution and use of this software in source and binary forms, 5// with or without modification, are permitted provided that the 6// following conditions are met: 7// 8// The software must be used only for Non-Commercial Use which means any --- 211 unchanged lines hidden (view full) --- 220 allocator = '''new %(class_name)s(machInst, mnemonic 221 %(flags)s, %(fault)s, %(cc)s)''' % { 222 "class_name" : self.className, 223 "flags" : self.microFlagsText(microFlags), 224 "fault" : self.fault, 225 "cc" : self.cond} 226 return allocator 227 |
228 iop = InstObjParams("fault", "MicroFaultFlags", "MicroFaultBase", |
229 {"code": "", 230 "cond_test": "checkCondition(ccFlagBits, cc)"}) 231 exec_output = MicroFaultExecute.subst(iop) 232 header_output = MicroFaultDeclare.subst(iop) 233 decoder_output = MicroFaultConstructor.subst(iop) |
234 iop = InstObjParams("fault", "MicroFault", "MicroFaultBase", |
235 {"code": "", 236 "cond_test": "true"}) 237 exec_output += MicroFaultExecute.subst(iop) 238 header_output += MicroFaultDeclare.subst(iop) 239 decoder_output += MicroFaultConstructor.subst(iop) 240 microopClasses["fault"] = Fault 241 242 class Halt(X86Microop): 243 def __init__(self): 244 pass 245 246 def getAllocator(self, *microFlags): 247 return "new MicroHalt(machInst, mnemonic %s)" % \ 248 self.microFlagsText(microFlags) 249 250 microopClasses["halt"] = Halt 251}}; |