From 51e25854554afb1f8b8ac4612f655e4549758b94 Mon Sep 17 00:00:00 2001 From: marcel Date: Sun, 21 Mar 2004 01:41:29 +0000 Subject: In breakpoint(), use a different immediate to make sure we can distinguish between debugger inserted breakpoints and fixed breakpoints. While here, make sure the break instruction never ends up in the last slot of a bundle by forcing it to be an M-unit instruction. This makes it easier for use to skip over it. --- sys/ia64/include/cpufunc.h | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/sys/ia64/include/cpufunc.h b/sys/ia64/include/cpufunc.h index 55a238a..ca48e0b 100644 --- a/sys/ia64/include/cpufunc.h +++ b/sys/ia64/include/cpufunc.h @@ -37,15 +37,16 @@ struct thread; +#define IA64_FIXED_BREAK 0x84B5D + #ifdef __GNUC__ static __inline void breakpoint(void) { - __asm __volatile("break 0x80100"); /* XXX use linux value */ + __asm __volatile("break.m %0" :: "i"(IA64_FIXED_BREAK)); } - #define HAVE_INLINE_FFS static __inline int -- cgit v1.1