1 /* SPDX-License-Identifier: GPL-2.0-only */ 2 /* 3 * Copyright (C) 2015 ARM Limited 4 * Author: Dave Martin <Dave.Martin@arm.com> 5 */ 6 7 #ifndef _ARCH_ARM64_ASM_BUG_H 8 #define _ARCH_ARM64_ASM_BUG_H 9 10 #include <linux/stringify.h> 11 12 #include <asm/asm-bug.h> 13 14 #define __BUG_FLAGS(flags) \ 15 asm volatile (__stringify(ASM_BUG_FLAGS(flags))); 16 17 #define BUG() do { \ 18 __BUG_FLAGS(0); \ 19 unreachable(); \ 20 } while (0) 21 22 #define __WARN_FLAGS(flags) __BUG_FLAGS(BUGFLAG_WARNING|(flags)) 23 24 #define HAVE_ARCH_BUG 25 26 #include <asm-generic/bug.h> 27 28 #endif /* ! _ARCH_ARM64_ASM_BUG_H */ 29