ldstop.isa (5912:d113f6def227) ldstop.isa (5919:08f836f37f61)
1// Copyright (c) 2008 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

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

461 atCPL0=False):
462 super(StoreOp, self).__init__(data, segment, addr,
463 disp, dataSize, addressSize, mem_flags, atCPL0)
464 self.className = Name
465 self.mnemonic = name
466
467 microopClasses[name] = StoreOp
468
1// Copyright (c) 2008 The Regents of The University of Michigan
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are
6// met: redistributions of source code must retain the above copyright
7// notice, this list of conditions and the following disclaimer;
8// redistributions in binary form must reproduce the above copyright

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

461 atCPL0=False):
462 super(StoreOp, self).__init__(data, segment, addr,
463 disp, dataSize, addressSize, mem_flags, atCPL0)
464 self.className = Name
465 self.mnemonic = name
466
467 microopClasses[name] = StoreOp
468
469 defineMicroStoreOp('St', 'Mem = Data;')
469 defineMicroStoreOp('St', 'Mem = pick(Data, 2, dataSize);')
470 defineMicroStoreOp('Stfp', 'Mem = FpData.uqw;')
470 defineMicroStoreOp('Stfp', 'Mem = FpData.uqw;')
471 defineMicroStoreOp('Stupd', 'Mem = Data;',
471 defineMicroStoreOp('Stupd', 'Mem = pick(Data, 2, dataSize);',
472 'Base = merge(Base, EA - SegBase, addressSize);',
473 'Base = merge(Base, pkt->req->getVaddr() - SegBase, addressSize);');
474 defineMicroStoreOp('Cda', 'Mem = 0;', mem_flags="Request::NO_ACCESS")
475
476 iop = InstObjParams("lea", "Lea", 'X86ISA::LdStOp',
477 {"code": "Data = merge(Data, EA, dataSize);",
478 "ea_code": calculateEA})
479 header_output += MicroLeaDeclare.subst(iop)

--- 44 unchanged lines hidden ---
472 'Base = merge(Base, EA - SegBase, addressSize);',
473 'Base = merge(Base, pkt->req->getVaddr() - SegBase, addressSize);');
474 defineMicroStoreOp('Cda', 'Mem = 0;', mem_flags="Request::NO_ACCESS")
475
476 iop = InstObjParams("lea", "Lea", 'X86ISA::LdStOp',
477 {"code": "Data = merge(Data, EA, dataSize);",
478 "ea_code": calculateEA})
479 header_output += MicroLeaDeclare.subst(iop)

--- 44 unchanged lines hidden ---