mem.isa (4050:cf1daaef9109) | mem.isa (5736:426510e758ad) |
---|---|
1// -*- mode:c++ -*- 2 3// Copyright (c) 2003-2005 The Regents of The University of Michigan 4// All rights reserved. 5// 6// Redistribution and use in source and binary forms, with or without 7// modification, are permitted provided that the following conditions are 8// met: redistributions of source code must retain the above copyright --- 29 unchanged lines hidden (view full) --- 38 /** 39 * Base class for general Alpha memory-format instructions. 40 */ 41 class Memory : public AlphaStaticInst 42 { 43 protected: 44 45 /// Memory request flags. See mem_req_base.hh. | 1// -*- mode:c++ -*- 2 3// Copyright (c) 2003-2005 The Regents of The University of Michigan 4// All rights reserved. 5// 6// Redistribution and use in source and binary forms, with or without 7// modification, are permitted provided that the following conditions are 8// met: redistributions of source code must retain the above copyright --- 29 unchanged lines hidden (view full) --- 38 /** 39 * Base class for general Alpha memory-format instructions. 40 */ 41 class Memory : public AlphaStaticInst 42 { 43 protected: 44 45 /// Memory request flags. See mem_req_base.hh. |
46 unsigned memAccessFlags; | 46 Request::Flags memAccessFlags; |
47 /// Pointer to EAComp object. 48 const StaticInstPtr eaCompPtr; 49 /// Pointer to MemAcc object. 50 const StaticInstPtr memAccPtr; 51 52 /// Constructor 53 Memory(const char *mnem, ExtMachInst _machInst, OpClass __opClass, 54 StaticInstPtr _eaCompPtr = nullStaticInstPtr, 55 StaticInstPtr _memAccPtr = nullStaticInstPtr) 56 : AlphaStaticInst(mnem, _machInst, __opClass), | 47 /// Pointer to EAComp object. 48 const StaticInstPtr eaCompPtr; 49 /// Pointer to MemAcc object. 50 const StaticInstPtr memAccPtr; 51 52 /// Constructor 53 Memory(const char *mnem, ExtMachInst _machInst, OpClass __opClass, 54 StaticInstPtr _eaCompPtr = nullStaticInstPtr, 55 StaticInstPtr _memAccPtr = nullStaticInstPtr) 56 : AlphaStaticInst(mnem, _machInst, __opClass), |
57 memAccessFlags(0), eaCompPtr(_eaCompPtr), memAccPtr(_memAccPtr) | 57 eaCompPtr(_eaCompPtr), memAccPtr(_memAccPtr) |
58 { 59 } 60 61 std::string 62 generateDisassembly(Addr pc, const SymbolTable *symtab) const; 63 64 public: 65 --- 606 unchanged lines hidden (view full) --- 672 ea_iop = InstObjParams(name, Name, base_class, 673 { 'ea_code':ea_code }, 674 inst_flags) 675 memacc_iop = InstObjParams(name, Name, base_class, 676 { 'memacc_code':memacc_code, 'postacc_code':postacc_code }, 677 inst_flags) 678 679 if mem_flags: | 58 { 59 } 60 61 std::string 62 generateDisassembly(Addr pc, const SymbolTable *symtab) const; 63 64 public: 65 --- 606 unchanged lines hidden (view full) --- 672 ea_iop = InstObjParams(name, Name, base_class, 673 { 'ea_code':ea_code }, 674 inst_flags) 675 memacc_iop = InstObjParams(name, Name, base_class, 676 { 'memacc_code':memacc_code, 'postacc_code':postacc_code }, 677 inst_flags) 678 679 if mem_flags: |
680 s = '\n\tmemAccessFlags = ' + string.join(mem_flags, '|') + ';' | 680 mem_flags = [ 'Request::%s' % flag for flag in mem_flags ] 681 s = '\n\tmemAccessFlags.reset(' + string.join(mem_flags, '|') + ');' |
681 iop.constructor += s 682 memacc_iop.constructor += s 683 684 # select templates 685 686 # The InitiateAcc template is the same for StoreCond templates as the 687 # corresponding Store template.. 688 StoreCondInitiateAcc = StoreInitiateAcc --- 85 unchanged lines hidden --- | 682 iop.constructor += s 683 memacc_iop.constructor += s 684 685 # select templates 686 687 # The InitiateAcc template is the same for StoreCond templates as the 688 # corresponding Store template.. 689 StoreCondInitiateAcc = StoreInitiateAcc --- 85 unchanged lines hidden --- |