[PATCH] Expose llvm::linkShadowStackGC() via C bindings

Philip Reames listmail at philipreames.com
Fri Apr 3 10:44:51 PDT 2015


When updating, please include full diff context.


REPOSITORY
  rL LLVM

================
Comment at: include/llvm-c/Core.h:1928
@@ +1927,3 @@
+*/
+void LLVMLinkShadowStackGC();
+
----------------
Two comments:
- I don't believe this warrants a separate call per built in GC.  I would rather see a single LLVMLinkBuiltinGCs().
- Going one step further, I'm not clear why a separate function is needed at all.  I assume there must be a function which is responsible for linking code gen as a whole.  Why is this not handled by calling that function?  At worst, it seems like we should need to add a call to link the various GCs in that (entirely internal) routine.  

================
Comment at: lib/IR/Core.cpp:1713
@@ -1711,1 +1712,3 @@
 
+void LLVMLinkShadowStackGC() {
+  llvm::linkShadowStackGC();
----------------
This is the wrong place for this, even if we do need to expose an explicit link routine.  Your introducing a dependency between IR and CodeGen which should not exist.

http://reviews.llvm.org/D8788

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list