specop.isa (5173:07204d59a328) specop.isa (5293:5ea2a6dc8f17)
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
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", "MicroFault", "MicroFaultBase",
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)
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", "MicroFaultFlags", "MicroFaultBase",
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}};
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}};