ldstop.isa (4679:0b39fa8f5eb8) ldstop.isa (4706:4ede9a05bb42)
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

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

399 header_output += MicroLdStOpDeclare.subst(iop)
400 decoder_output += MicroLdStOpConstructor.subst(iop)
401 exec_output += MicroStoreExecute.subst(iop)
402 exec_output += MicroStoreInitiateAcc.subst(iop)
403 exec_output += MicroStoreCompleteAcc.subst(iop)
404
405 class StoreOp(LdStOp):
406 def __init__(self, data, segment, addr, disp = 0):
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

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

399 header_output += MicroLdStOpDeclare.subst(iop)
400 decoder_output += MicroLdStOpConstructor.subst(iop)
401 exec_output += MicroStoreExecute.subst(iop)
402 exec_output += MicroStoreInitiateAcc.subst(iop)
403 exec_output += MicroStoreCompleteAcc.subst(iop)
404
405 class StoreOp(LdStOp):
406 def __init__(self, data, segment, addr, disp = 0):
407 super(LoadOp, self).__init__(data, segment, addr, disp)
407 super(StoreOp, self).__init__(data, segment, addr, disp)
408 self.className = Name
409 self.mnemonic = name
410
411 microopClasses[name] = StoreOp
412
408 self.className = Name
409 self.mnemonic = name
410
411 microopClasses[name] = StoreOp
412
413 defineMicroLoadOp('St', 'Mem = Data;')
413 defineMicroStoreOp('St', 'Mem = Data;')
414
415 iop = InstObjParams("lea", "Lea", 'X86ISA::LdStOp',
416 {"code": "Data = merge(Data, EA, dataSize);", "ea_code": calculateEA})
417 header_output += MicroLeaDeclare.subst(iop)
418 decoder_output += MicroLdStOpConstructor.subst(iop)
419 exec_output += MicroLeaExecute.subst(iop)
420
421 class LeaOp(LdStOp):
422 def __init__(self, data, segment, addr, disp = 0):
423 super(LeaOp, self).__init__(data, segment, addr, disp)
424 self.className = "Lea"
425 self.mnemonic = "lea"
426
427 microopClasses["lea"] = LeaOp
428}};
429
414
415 iop = InstObjParams("lea", "Lea", 'X86ISA::LdStOp',
416 {"code": "Data = merge(Data, EA, dataSize);", "ea_code": calculateEA})
417 header_output += MicroLeaDeclare.subst(iop)
418 decoder_output += MicroLdStOpConstructor.subst(iop)
419 exec_output += MicroLeaExecute.subst(iop)
420
421 class LeaOp(LdStOp):
422 def __init__(self, data, segment, addr, disp = 0):
423 super(LeaOp, self).__init__(data, segment, addr, disp)
424 self.className = "Lea"
425 self.mnemonic = "lea"
426
427 microopClasses["lea"] = LeaOp
428}};
429