xref: /kvm-unit-tests/lib/riscv/asm/bug.h (revision 0cc3a351b925928827baa4b69cf0e46ff5837083)
1386561f8SAndrew Jones /* SPDX-License-Identifier: GPL-2.0-only */
2386561f8SAndrew Jones #ifndef _ASMRISCV_BUG_H_
3386561f8SAndrew Jones #define _ASMRISCV_BUG_H_
4386561f8SAndrew Jones 
5*0cc3a351SSean Christopherson #ifndef __ASSEMBLER__
6386561f8SAndrew Jones 
bug(void)7386561f8SAndrew Jones static inline void bug(void)
8386561f8SAndrew Jones {
9386561f8SAndrew Jones 	asm volatile("ebreak");
10386561f8SAndrew Jones }
11386561f8SAndrew Jones 
12386561f8SAndrew Jones #else
13386561f8SAndrew Jones 
14386561f8SAndrew Jones .macro bug
15386561f8SAndrew Jones 	ebreak
16386561f8SAndrew Jones .endm
17386561f8SAndrew Jones 
18386561f8SAndrew Jones #endif
19386561f8SAndrew Jones 
20386561f8SAndrew Jones #endif /* _ASMRISCV_BUG_H_ */
21