[prev in list] [next in list] [prev in thread] [next in thread]
List: gcc
Subject: Re: [Gcl-devel] ia64 and garbage collection
From: David Mosberger <davidm () napali ! hpl ! hp ! com>
Date: 2002-07-30 23:10:25
[Download RAW message or body]
>>>>> On 30 Jul 2002 17:11:08 -0400, Camm Maguire <camm@enhanced.com> said:
Camm> David Mosberger <davidm@napali.hpl.hp.com> writes:
>> >>>>> On Tue, 30 Jul 2002 13:33:12 -0400, Camm Maguire <camm@enhanced.com> said:
Camm> 1) Is there a work around, i.e. a way in which I can ensure
Camm> clearing all registers back to the stack at a certain point in
Camm> the program?
David> A call to getcontext() does have the effect of forcing all
David> callee-saved (preserved) registers into memory (and the "scratch"
David> registers won't be live, by virtue of getcontext() being a
David> regular function call).
Camm> And thank you for this suggestion! How does this differ from
Camm> the flushrs solution?
The difference is that getcontext() also makes sure that all the
callee-saved registers are in memory. Depending on how your garbage
collector works, you may want one or the other solution. getcontext()
is arguably a bit safer, as in the worst case, you'll look at the same
pointers twice. On the other hand, __builtin_flushrs() is faster, if
that's all you need.
--david
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic