1/* 2 * This file is subject to the terms and conditions of the GNU General Public 3 * License. See the file "COPYING" in the main directory of this archive 4 * for more details. 5 * 6 * Copyright (C) 1995, 2003 by Ralf Baechle 7 * Copyright (C) 1999 Silicon Graphics, Inc. 8 */ 9#ifndef __ASM_BREAK_H 10#define __ASM_BREAK_H 11 12/* 13 * The following break codes are or were in use for specific purposes in 14 * other MIPS operating systems. Linux/MIPS doesn't use all of them. The 15 * unused ones are here as placeholders; we might encounter them in 16 * non-Linux/MIPS object files or make use of them in the future. 17 */ 18#define BRK_USERBP 0 /* User bp (used by debuggers) */ 19#define BRK_KERNELBP 1 /* Break in the kernel */ 20#define BRK_ABORT 2 /* Sometimes used by abort(3) to SIGIOT */ 21#define BRK_BD_TAKEN 3 /* For bd slot emulation - not implemented */ 22#define BRK_BD_NOTTAKEN 4 /* For bd slot emulation - not implemented */ 23#define BRK_SSTEPBP 5 /* User bp (used by debuggers) */ 24#define BRK_OVERFLOW 6 /* Overflow check */ 25#define BRK_DIVZERO 7 /* Divide by zero check */ 26#define BRK_RANGE 8 /* Range error check */ 27#define BRK_STACKOVERFLOW 9 /* For Ada stackchecking */ 28#define BRK_NORLD 10 /* No rld found - not used by Linux/MIPS */ 29#define _BRK_THREADBP 11 /* For threads, user bp (used by debuggers) */ 30 31/* uMIPS definitions */ 32#define MM_BRK_BUG 12 /* Used by BUG() */ 33#define MM_BRK_KDB 13 /* Used in KDB_ENTER() */ 34#define MM_BRK_MEMU 14 /* Used by FPU emulator */ 35#define MM_BRK_MULOVF 15 /* Multiply overflow */ 36 37/* MIPS32/64 definitions */ 38#define BRK_BUG 512 /* Used by BUG() */ 39#define BRK_KDB 513 /* Used in KDB_ENTER() */ 40#define BRK_MEMU 514 /* Used by FPU emulator */ 41#define BRK_KPROBE_BP 515 /* Kprobe break */ 42#define BRK_KPROBE_SSTEPBP 516 /* Kprobe single step software implementation */ 43#define BRK_MULOVF 1023 /* Multiply overflow */ 44 45#endif /* __ASM_BREAK_H */ 46