[patch 2/2] Markers - use imv_cond jump liveliness

Previous thread: [patch 0/2] Immediate Values - jump patching update by Mathieu Desnoyers on Sunday, April 27, 2008 - 11:34 pm. (20 messages)

Next thread: [patch 1/2] Immediate Values - jump liveliness by Mathieu Desnoyers on Sunday, April 27, 2008 - 11:34 pm. (1 message)
To: <akpm@...>, Ingo Molnar <mingo@...>, <linux-kernel@...>, H. Peter Anvin <hpa@...>
Cc: Mathieu Desnoyers <mathieu.desnoyers@...>
Date: Sunday, April 27, 2008 - 11:34 pm

Provide the imv_cond_ed() macros to mark the end of ZF and eax liveliness for
imv_cond.

Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
CC: "H. Peter Anvin" <hpa@zytor.com>
CC: Ingo Molnar <mingo@elte.hu>
---
include/linux/marker.h | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

Index: linux-2.6-sched-devel/include/linux/marker.h
===================================================================
--- linux-2.6-sched-devel.orig/include/linux/marker.h 2008-04-25 13:46:14.000000000 -0400
+++ linux-2.6-sched-devel/include/linux/marker.h 2008-04-25 13:47:11.000000000 -0400
@@ -76,10 +76,13 @@ struct marker {
{ __mark_empty_function, NULL}, NULL }; \
__mark_check_format(format, ## args); \
if (!generic) { \
- if (unlikely(imv_cond(__mark_##name.state))) \
+ if (unlikely(imv_cond(__mark_##name.state))) { \
+ imv_cond_end(); \
(*__mark_##name.call) \
(&__mark_##name, call_private, \
## args); \
+ } else \
+ imv_cond_end(); \
} else { \
if (unlikely(_imv_read(__mark_##name.state))) \
(*__mark_##name.call) \

--
Mathieu Desnoyers
Computer Engineering Ph.D. Student, Ecole Polytechnique de Montreal
OpenPGP key fingerprint: 8CD5 52C3 8E3C 4140 715F BA06 3F25 A8FE 3BAE 9A68
--

Previous thread: [patch 0/2] Immediate Values - jump patching update by Mathieu Desnoyers on Sunday, April 27, 2008 - 11:34 pm. (20 messages)

Next thread: [patch 1/2] Immediate Values - jump liveliness by Mathieu Desnoyers on Sunday, April 27, 2008 - 11:34 pm. (1 message)