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