diff options
author | Nathan Binkert <nate@binkert.org> | 2009-05-11 10:38:43 -0700 |
---|---|---|
committer | Nathan Binkert <nate@binkert.org> | 2009-05-11 10:38:43 -0700 |
commit | 2f30950143cc70bc42a3c8a4111d7cf8198ec881 (patch) | |
tree | 708f6c22edb3c6feb31dd82866c26623a5329580 /src/mem/ruby/tester/Instruction.hh | |
parent | c70241810d4e4f523f173c1646b008dc40faad8e (diff) | |
download | gem5-2f30950143cc70bc42a3c8a4111d7cf8198ec881.tar.xz |
ruby: Import ruby and slicc from GEMS
We eventually plan to replace the m5 cache hierarchy with the GEMS
hierarchy, but for now we will make both live alongside eachother.
Diffstat (limited to 'src/mem/ruby/tester/Instruction.hh')
-rw-r--r-- | src/mem/ruby/tester/Instruction.hh | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/src/mem/ruby/tester/Instruction.hh b/src/mem/ruby/tester/Instruction.hh new file mode 100644 index 000000000..674447056 --- /dev/null +++ b/src/mem/ruby/tester/Instruction.hh @@ -0,0 +1,57 @@ +/* + * Copyright (c) 1999 by Mark Hill and David Wood for the Wisconsin + * Multifacet Project. ALL RIGHTS RESERVED. + * + * ##HEADER## + * + * This software is furnished under a license and may be used and + * copied only in accordance with the terms of such license and the + * inclusion of the above copyright notice. This software or any + * other copies thereof or any derivative works may not be provided or + * otherwise made available to any other persons. Title to and + * ownership of the software is retained by Mark Hill and David Wood. + * Any use of this software must include the above copyright notice. + * + * THIS SOFTWARE IS PROVIDED "AS IS". THE LICENSOR MAKES NO + * WARRANTIES ABOUT ITS CORRECTNESS OR PERFORMANCE. + * */ + +/* + * $Id: Instruction.h 1.2 05/05/24 12:15:47-05:00 kmoore@balder.cs.wisc.edu $ + * + * Description: + * + */ + +#ifndef INSTRUCTION_H +#define INSTRUCTION_H + +#include "Address.hh" + + +enum Opcode { + Opcode_BEGIN, + Opcode_LD, + Opcode_ST, + Opcode_INC, + Opcode_COMMIT, + Opcode_DONE, + Opcode_NUM_OPCODES +}; + +class Instruction { + public: + Instruction(); + Instruction(Opcode op, Address addr); + + void init(Opcode op, Address addr); + Opcode getOpcode(); + Address getAddress(); + + private: + Opcode m_opcode; + Address m_address; + +}; + +#endif |