[PATCH] Remove gc.roots performCustomLowering
Manuel Jacob
me at manueljacob.de
Wed Jan 28 04:22:29 PST 2015
I like the direction of this patch. Probably medium-term the feature to add custom lowering passes should be re-added, but I'm fine if we ignore that for now.
================
Comment at: docs/GarbageCollection.rst:751
@@ -750,3 @@
-
-* ``llvm.gcwrite``: Substitute a ``store`` instruction.
-
----------------
I think these three points can stay in because they're still valid.
================
Comment at: include/llvm/CodeGen/Passes.h:520
@@ -519,4 +519,3 @@
- /// GCLowering Pass - Performs target-independent LLVM IR transformations for
- /// highly portable strategies.
- ///
+ /// GCLowering Pass - Used by gc.root to perform it's default lowering
+ /// operations.
----------------
s/it's/its/
================
Comment at: lib/CodeGen/GCRootLowering.cpp:119
@@ -123,3 +118,3 @@
// runFunction time (initializeCustomLowering likely needs to change
// the module).
GCModuleInfo *MI = getAnalysisIfAvailable<GCModuleInfo>();
----------------
This comment isn't true since there's no initializeCustomLowering anymore.
================
Comment at: lib/CodeGen/ShadowStackGCLowering.cpp:234
@@ +233,3 @@
+ // (which uses a FunctionPassManager (which segfaults (not asserts) if
+ // provided a ModulePass))).
+ Constant *GV = new GlobalVariable(*F.getParent(), FrameMap->getType(), true,
----------------
I think it's now possible to add ModulePasses to the llc pass pipeline, so changing this pass to be a ModulePass should be possible.
http://reviews.llvm.org/D7218
EMAIL PREFERENCES
http://reviews.llvm.org/settings/panel/emailpreferences/
More information about the llvm-commits
mailing list