unimp.isa (12236:126ac9da6050) unimp.isa (12616:4b463b4dc098)
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007-2008 The Florida State University
4// Copyright (c) 2009 The University of Edinburgh
5// All rights reserved.
6//
7// Redistribution and use in source and binary forms, with or without
8// modification, are permitted provided that the following conditions are

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

50 FailUnimplemented(const char *_mnemonic, MachInst _machInst)
51 : PowerStaticInst(_mnemonic, _machInst, No_OpClass)
52 {
53 // don't call execute() (which panics) if we're on a
54 // speculative path
55 flags[IsNonSpeculative] = true;
56 }
57
1// -*- mode:c++ -*-
2
3// Copyright (c) 2007-2008 The Florida State University
4// Copyright (c) 2009 The University of Edinburgh
5// All rights reserved.
6//
7// Redistribution and use in source and binary forms, with or without
8// modification, are permitted provided that the following conditions are

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

50 FailUnimplemented(const char *_mnemonic, MachInst _machInst)
51 : PowerStaticInst(_mnemonic, _machInst, No_OpClass)
52 {
53 // don't call execute() (which panics) if we're on a
54 // speculative path
55 flags[IsNonSpeculative] = true;
56 }
57
58 Fault execute(ExecContext *, Trace::InstRecord *) const;
58 Fault execute(ExecContext *, Trace::InstRecord *) const override;
59
59
60 std::string
61 generateDisassembly(Addr pc, const SymbolTable *symtab) const;
60 std::string generateDisassembly(
61 Addr pc, const SymbolTable *symtab) const override;
62 };
63
64 /**
65 * Base class for unimplemented instructions that cause a warning
66 * to be printed (but do not terminate simulation). This
67 * implementation is a little screwy in that it will print a
68 * warning for each instance of a particular unimplemented machine
69 * instruction, not just for each unimplemented opcode. Should

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

81 WarnUnimplemented(const char *_mnemonic, MachInst _machInst)
82 : PowerStaticInst(_mnemonic, _machInst, No_OpClass), warned(false)
83 {
84 // don't call execute() (which panics) if we're on a
85 // speculative path
86 flags[IsNonSpeculative] = true;
87 }
88
62 };
63
64 /**
65 * Base class for unimplemented instructions that cause a warning
66 * to be printed (but do not terminate simulation). This
67 * implementation is a little screwy in that it will print a
68 * warning for each instance of a particular unimplemented machine
69 * instruction, not just for each unimplemented opcode. Should

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

81 WarnUnimplemented(const char *_mnemonic, MachInst _machInst)
82 : PowerStaticInst(_mnemonic, _machInst, No_OpClass), warned(false)
83 {
84 // don't call execute() (which panics) if we're on a
85 // speculative path
86 flags[IsNonSpeculative] = true;
87 }
88
89 Fault execute(ExecContext *, Trace::InstRecord *) const;
89 Fault execute(ExecContext *, Trace::InstRecord *) const override;
90
90
91 std::string
92 generateDisassembly(Addr pc, const SymbolTable *symtab) const;
91 std::string generateDisassembly(
92 Addr pc, const SymbolTable *symtab) const override;
93 };
94}};
95
96output decoder {{
97 std::string
98 FailUnimplemented::generateDisassembly(Addr pc,
99 const SymbolTable *symtab) const
100 {

--- 46 unchanged lines hidden ---
93 };
94}};
95
96output decoder {{
97 std::string
98 FailUnimplemented::generateDisassembly(Addr pc,
99 const SymbolTable *symtab) const
100 {

--- 46 unchanged lines hidden ---