Re: [Gc] C optimizer hazards in practice

Ingo Albrecht <[email protected]> Thu, 10 Jul 2014 14:25:54 +0200
Newsgroups gmane.comp.programming.garbage-collection.boehmgc
Message-ID <[email protected]>
On 07/10/2014 12:28 PM, Richard Brooksby wrote:
> https://github.com/ivmai/bdwgc/blob/3ec2783588c8ba53a0b6a347d61d4e5c1b5dc80e/README.md says:
>
>> Some C optimizers may lose the last undisguised pointer to a memory object as a consequence of clever optimizations. This has almost never been observed in practice.
> Does anyone have any stories to tell about when this *has* been observed, or any links to accounts of this happening?

I can't tell of a story where this has actually happened to me, quite
likely because the
GC-driven systems I have been working on did not disguise pointers.

However, my compiler knowledge makes me certain that this can happen.
GCC and
other compilers will readily eliminate local variables whenever lifetime
analysis allows.
The biggest risk would be on high-register-pressure architectures such
as X86.

I would like to ask back: does anyone here use an actual disguised
pointer scheme?