diff options
author | liguang <lig.fnst@cn.fujitsu.com> | 2013-01-15 08:01:07 +0100 |
---|---|---|
committer | Andreas Färber <afaerber@suse.de> | 2013-01-15 09:14:48 +0100 |
commit | 5902564ac983d67d7d898356971698b50b8f0b91 (patch) | |
tree | c0be48fad1310fd7cf2daf0fafba0b132ba7236f /target-i386/cpu.h | |
parent | 428065ce50643a56bff043501809b62b035f0b17 (diff) |
target-i386: Introduce hw_{local,global}_breakpoint_enabled()
hw_breakpoint_enabled() returned a bit field indicating whether a local
breakpoint and/or global breakpoint was enabled. Avoid this number magic
by using explicit boolean helper functions hw_local_breakpoint_enabled()
and hw_global_breakpoint_enabled(), to aid readability.
Reuse them for the hw_breakpoint_enabled() implementation and change
its return type to bool.
While at it, fix Coding Style issues (missing braces).
Signed-off-by: liguang <lig.fnst@cn.fujitsu.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Diffstat (limited to 'target-i386/cpu.h')
-rw-r--r-- | target-i386/cpu.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/target-i386/cpu.h b/target-i386/cpu.h index 6682022d8..1e850a753 100644 --- a/target-i386/cpu.h +++ b/target-i386/cpu.h @@ -1014,9 +1014,20 @@ int cpu_x86_handle_mmu_fault(CPUX86State *env, target_ulong addr, #define cpu_handle_mmu_fault cpu_x86_handle_mmu_fault void cpu_x86_set_a20(CPUX86State *env, int a20_state); -static inline int hw_breakpoint_enabled(unsigned long dr7, int index) +static inline bool hw_local_breakpoint_enabled(unsigned long dr7, int index) { - return (dr7 >> (index * 2)) & 3; + return (dr7 >> (index * 2)) & 1; +} + +static inline bool hw_global_breakpoint_enabled(unsigned long dr7, int index) +{ + return (dr7 >> (index * 2)) & 2; + +} +static inline bool hw_breakpoint_enabled(unsigned long dr7, int index) +{ + return hw_global_breakpoint_enabled(dr7, index) || + hw_local_breakpoint_enabled(dr7, index); } static inline int hw_breakpoint_type(unsigned long dr7, int index) |