unknown.isa revision 2649
12623SN/A// -*- mode:c++ -*- 22623SN/A 32623SN/A// Copyright (c) 2003-2005 The Regents of The University of Michigan 42623SN/A// All rights reserved. 52623SN/A// 62623SN/A// Redistribution and use in source and binary forms, with or without 72623SN/A// modification, are permitted provided that the following conditions are 82623SN/A// met: redistributions of source code must retain the above copyright 92623SN/A// notice, this list of conditions and the following disclaimer; 102623SN/A// redistributions in binary form must reproduce the above copyright 112623SN/A// notice, this list of conditions and the following disclaimer in the 122623SN/A// documentation and/or other materials provided with the distribution; 132623SN/A// neither the name of the copyright holders nor the names of its 142623SN/A// contributors may be used to endorse or promote products derived from 152623SN/A// this software without specific prior written permission. 162623SN/A// 172623SN/A// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 182623SN/A// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 192623SN/A// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 202623SN/A// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 212623SN/A// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 222623SN/A// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 232623SN/A// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 242623SN/A// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 252623SN/A// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 262623SN/A// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 272665Ssaidi@eecs.umich.edu// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 282665Ssaidi@eecs.umich.edu 292623SN/A//////////////////////////////////////////////////////////////////// 302623SN/A// 313170Sstever@eecs.umich.edu// Unknown instructions 322623SN/A// 334040Ssaidi@eecs.umich.edu 342623SN/Aoutput decoder {{ 352623SN/A std::string 363348Sbinkertn@umich.edu Unknown::generateDisassembly(Addr pc, const SymbolTable *symtab) const 373348Sbinkertn@umich.edu { 382623SN/A return csprintf("%-10s (inst 0x%x, opcode 0x%x)", 392901Ssaidi@eecs.umich.edu "unknown", machInst, OPCODE); 402623SN/A } 412623SN/A}}; 422623SN/A 432623SN/Aoutput exec {{ 442856Srdreslin@umich.edu Fault 452856Srdreslin@umich.edu Unknown::execute(%(CPU_exec_context)s *xc, 462856Srdreslin@umich.edu Trace::InstRecord *traceData) const 472856Srdreslin@umich.edu { 482856Srdreslin@umich.edu panic("attempt to execute unknown instruction " 492856Srdreslin@umich.edu "(inst 0x%08x, opcode 0x%x)", machInst, OPCODE); 502856Srdreslin@umich.edu return new UnimplementedOpcodeFault; 512856Srdreslin@umich.edu } 522856Srdreslin@umich.edu}}; 532856Srdreslin@umich.edu 542623SN/Adef format Unknown() {{ 552623SN/A decode_block = 'return new Unknown(machInst);\n' 562623SN/A}}; 572623SN/A 582623SN/A