[LLVMdev] ShadowStackGC.cpp - More Dead Code?

Jon Harrop jonathandeanharrop at googlemail.com
Fri Dec 2 05:06:50 PST 2011

Assuming you’re referring to my HLVM project, it actually uses its own shadow stack based upon Henderson’s “Accurate Garbage Collection in an uncooperative environment”. I kept it completely separate from LLVM’s GC infrastructure because that was highly experimental at the time…





From: llvmdev-bounces at cs.uiuc.edu [mailto:llvmdev-bounces at cs.uiuc.edu] On Behalf Of Ben Karel
Sent: 23 August 2011 15:51
To: Bill Wendling
Cc: LLVM Developers Mailing List
Subject: Re: [LLVMdev] ShadowStackGC.cpp - More Dead Code?


Hi Bill,


I don't think it's dead code, per se -- AFAIK there are still clients of LLVM which use the shadow stack as part of their garbage collection implementation. HLVM is probably the most visible such project.


My own project now has its own GC plugin to emit stack maps, rather than relying on the shadow stack. But for what it's worth, I found the shadow stack to be a useful stepping stone towards a "real" GC implementation when I first started out with LLVM's garbage collector infrastructure.


-- Ben


On Sun, Aug 21, 2011 at 5:17 AM, Bill Wendling <wendling at apple.com> wrote:


I've been looking at all of the uses of the 'unwind' instruction, and ShadowStackGC.cpp is the last pass which actually creates 'unwind' instructions. The thing is, this pass seems to be dead. It hasn't been updated in any meaningful way since ~79000.

Should this pass go the way of the dodo?


LLVM Developers mailing list
LLVMdev at cs.uiuc.edu         http://llvm.cs.uiuc.edu


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20111202/c647e36f/attachment.html>

More information about the llvm-dev mailing list