faults.hh revision 2090
11689SN/A/* 27598Sminkyu.jeong@arm.com * Copyright (c) 2003-2005 The Regents of The University of Michigan 37598Sminkyu.jeong@arm.com * All rights reserved. 47598Sminkyu.jeong@arm.com * 57598Sminkyu.jeong@arm.com * Redistribution and use in source and binary forms, with or without 67598Sminkyu.jeong@arm.com * modification, are permitted provided that the following conditions are 77598Sminkyu.jeong@arm.com * met: redistributions of source code must retain the above copyright 87598Sminkyu.jeong@arm.com * notice, this list of conditions and the following disclaimer; 97598Sminkyu.jeong@arm.com * redistributions in binary form must reproduce the above copyright 107598Sminkyu.jeong@arm.com * notice, this list of conditions and the following disclaimer in the 117598Sminkyu.jeong@arm.com * documentation and/or other materials provided with the distribution; 127598Sminkyu.jeong@arm.com * neither the name of the copyright holders nor the names of its 137598Sminkyu.jeong@arm.com * contributors may be used to endorse or promote products derived from 142326SN/A * this software without specific prior written permission. 151689SN/A * 161689SN/A * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 171689SN/A * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 181689SN/A * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 191689SN/A * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 201689SN/A * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 211689SN/A * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 221689SN/A * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 231689SN/A * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 241689SN/A * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 251689SN/A * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 261689SN/A * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 271689SN/A */ 281689SN/A 291689SN/A#ifndef __FAULTS_HH__ 301689SN/A#define __FAULTS_HH__ 311689SN/A 321689SN/Aclass Fault 331689SN/A{ 341689SN/Apublic: 351689SN/A Fault(char * newName, int newId = 0) : name(newName), id(newId) {;} 361689SN/A const char * name; 371689SN/A int id; 381689SN/A}; 392665Ssaidi@eecs.umich.edu 402665Ssaidi@eecs.umich.eduextern class NoFaultType : public Fault 411689SN/A{ 421689SN/Apublic: 431060SN/A NoFaultType(char * newName) : Fault(newName) {;} 441060SN/A} * NoFault; 451689SN/A 461060SN/Aextern class MachineCheckFaultType : public Fault 471060SN/A{ 481060SN/Apublic: 491060SN/A MachineCheckFaultType(char * newName) : Fault(newName) {;} 506658Snate@binkert.org} * MachineCheckFault; 512292SN/A 521717SN/Aextern class AlignmentFaultType : public Fault 535529Snate@binkert.org{ 541060SN/Apublic: 556221Snate@binkert.org AlignmentFaultType(char * newName) : Fault(newName) {;} 566221Snate@binkert.org} * AlignmentFault; 571681SN/A 585529Snate@binkert.orgextern class FakeMemFaultType : public Fault 592873Sktlim@umich.edu{ 604329Sktlim@umich.edupublic: 614329Sktlim@umich.edu FakeMemFaultType(char * newName) : Fault(newName) {;} 624329Sktlim@umich.edu} * FakeMemFault; 632292SN/A 642292SN/A 652292SN/A#endif // __FAULTS_HH__ 662292SN/A