unknown.isa (12236:126ac9da6050) | unknown.isa (12290:2078e5d7b848) |
---|---|
1// Copyright (c) 2006 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 --- 18 unchanged lines hidden (view full) --- 27// Authors: Gabe Black 28// Steve Reinhardt 29 30//////////////////////////////////////////////////////////////////// 31// 32// Unknown instructions 33// 34 | 1// Copyright (c) 2006 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 --- 18 unchanged lines hidden (view full) --- 27// Authors: Gabe Black 28// Steve Reinhardt 29 30//////////////////////////////////////////////////////////////////// 31// 32// Unknown instructions 33// 34 |
35output header {{ 36 /** 37 * Class for Unknown/Illegal instructions 38 */ 39 class Unknown : public SparcStaticInst 40 { 41 public: 42 43 // Constructor 44 Unknown(ExtMachInst _machInst) : 45 SparcStaticInst("unknown", _machInst, No_OpClass) 46 { 47 } 48 49 Fault execute(ExecContext *, Trace::InstRecord *) const; 50 51 std::string generateDisassembly(Addr pc, 52 const SymbolTable *symtab) const; 53 54 }; 55}}; 56 57output decoder {{ 58 std::string Unknown::generateDisassembly(Addr pc, 59 const SymbolTable *symtab) const 60 { 61 return "Unknown instruction"; 62 } 63}}; 64 65output exec {{ 66 Fault Unknown::execute(ExecContext *xc, 67 Trace::InstRecord *traceData) const 68 { 69 return std::make_shared<IllegalInstruction>(); 70 } 71}}; 72 | |
73def format Unknown() {{ 74 decode_block = 'return new Unknown(machInst);\n' 75}}; | 35def format Unknown() {{ 36 decode_block = 'return new Unknown(machInst);\n' 37}}; |