Closed dwightguth closed 1 month ago
I'm going to mark this as a draft again. I thought I had caught every place where I needed to add this dependency but it looks like I missed some and I'm not going to get to fixing it until tomorrow.
but it looks like I missed some
Where's the failure you're seeing? If this is passing CI but fails elsewhere we should try to catch that scenario.
I mean, probably the reason it's passing CI is because the library isn't actually used yet, so in the places where I forgot to pass it, nothing bad happens. I don't believe that adding more tests will address that.
Ah, that makes sense! Let me know when this is ready for a final review and I can take another look at it.
This is one of a sequence of PRs designed to make progress towards generating stack maps so that we can trigger the GC during allocation rather than in between rewrite steps only. The first few PRs will be preliminaries that add small features that will be used by future PRs.
This PR adds the libunwind library as a runtime dependency to the llvm backend. Libunwind is going to be used by the garbage collector to walk the stack and find the GC roots for each stack frame. The code to actually generate the stack maps and walk the stack will be added in a future PR.