diff options
author | aj <aj@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-04-25 04:17:51 +0000 |
---|---|---|
committer | aj <aj@138bc75d-0d04-0410-961f-82ee72b054a4> | 2004-04-25 04:17:51 +0000 |
commit | ce7d29e89ff1462e63c8a1af03eba93357d4f413 (patch) | |
tree | 7f188e9aea803dcbaea2d3dc621a760e51ef5721 /boehm-gc | |
parent | 83d1676e014fc9aad2197ffd2dadc39b7de01848 (diff) | |
download | gcc-ce7d29e89ff1462e63c8a1af03eba93357d4f413.tar.gz |
* mark.c (GC_mark_from): Use pointer as prefetch argument.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@81155 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'boehm-gc')
-rw-r--r-- | boehm-gc/ChangeLog | 4 | ||||
-rw-r--r-- | boehm-gc/mark.c | 8 |
2 files changed, 8 insertions, 4 deletions
diff --git a/boehm-gc/ChangeLog b/boehm-gc/ChangeLog index 182fef1cab3..8195dd2dbc3 100644 --- a/boehm-gc/ChangeLog +++ b/boehm-gc/ChangeLog @@ -1,3 +1,7 @@ +2004-04-25 Andreas Jaeger <aj@suse.de> + + * mark.c (GC_mark_from): Use pointer as prefetch argument. + 2004-04-06 H.J. Lu <hongjiu.lu@intel.com> * include/private/gcconfig.h (PREFETCH): Use __builtin_prefetch diff --git a/boehm-gc/mark.c b/boehm-gc/mark.c index ca947290291..fffd62ac90c 100644 --- a/boehm-gc/mark.c +++ b/boehm-gc/mark.c @@ -684,7 +684,7 @@ mse * mark_stack_limit; current = *current_p; FIXUP_POINTER(current); if ((ptr_t)current >= least_ha && (ptr_t)current < greatest_ha) { - PREFETCH(current); + PREFETCH((ptr_t)current); HC_PUSH_CONTENTS((ptr_t)current, mark_stack_top, mark_stack_limit, current_p, exit1); } @@ -760,7 +760,7 @@ mse * mark_stack_limit; FIXUP_POINTER(deferred); limit = (word *)((char *)limit - ALIGNMENT); if ((ptr_t)deferred >= least_ha && (ptr_t)deferred < greatest_ha) { - PREFETCH(deferred); + PREFETCH((ptr_t)deferred); break; } if (current_p > limit) goto next_object; @@ -770,7 +770,7 @@ mse * mark_stack_limit; FIXUP_POINTER(deferred); limit = (word *)((char *)limit - ALIGNMENT); if ((ptr_t)deferred >= least_ha && (ptr_t)deferred < greatest_ha) { - PREFETCH(deferred); + PREFETCH((ptr_t)deferred); break; } if (current_p > limit) goto next_object; @@ -787,7 +787,7 @@ mse * mark_stack_limit; if ((ptr_t)current >= least_ha && (ptr_t)current < greatest_ha) { /* Prefetch the contents of the object we just pushed. It's */ /* likely we will need them soon. */ - PREFETCH(current); + PREFETCH((ptr_t)current); HC_PUSH_CONTENTS((ptr_t)current, mark_stack_top, mark_stack_limit, current_p, exit2); } |