[llvm] r343336 - [LLVM-C] Add bindings for addCoroutinePassesToExtensionPoints

whitequark via llvm-commits llvm-commits at lists.llvm.org
Fri Sep 28 09:38:11 PDT 2018


Author: whitequark
Date: Fri Sep 28 09:38:11 2018
New Revision: 343336

URL: http://llvm.org/viewvc/llvm-project?rev=343336&view=rev
Log:
[LLVM-C] Add bindings for addCoroutinePassesToExtensionPoints

Summary: This patch adds bindings to C and Go for addCoroutinePassesToExtensionPoints, which is used to add coroutine passes to the correct locations in PassManagerBuilder.

Reviewers: whitequark, deadalnix

Reviewed By: whitequark

Subscribers: mehdi_amini, modocache, llvm-commits

Differential Revision: https://reviews.llvm.org/D51642

Modified:
    llvm/trunk/bindings/go/llvm/transforms_pmbuilder.go
    llvm/trunk/include/llvm-c/Transforms/PassManagerBuilder.h
    llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp

Modified: llvm/trunk/bindings/go/llvm/transforms_pmbuilder.go
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/bindings/go/llvm/transforms_pmbuilder.go?rev=343336&r1=343335&r2=343336&view=diff
==============================================================================
--- llvm/trunk/bindings/go/llvm/transforms_pmbuilder.go (original)
+++ llvm/trunk/bindings/go/llvm/transforms_pmbuilder.go Fri Sep 28 09:38:11 2018
@@ -66,3 +66,7 @@ func (pmb PassManagerBuilder) SetDisable
 func (pmb PassManagerBuilder) UseInlinerWithThreshold(threshold uint) {
 	C.LLVMPassManagerBuilderUseInlinerWithThreshold(pmb.C, C.uint(threshold))
 }
+
+func (pmb PassManagerBuilder) AddCoroutinePassesToExtensionPoints() {
+	C.LLVMPassManagerBuilderAddCoroutinePassesToExtensionPoints(pmb.C);
+}

Modified: llvm/trunk/include/llvm-c/Transforms/PassManagerBuilder.h
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/include/llvm-c/Transforms/PassManagerBuilder.h?rev=343336&r1=343335&r2=343336&view=diff
==============================================================================
--- llvm/trunk/include/llvm-c/Transforms/PassManagerBuilder.h (original)
+++ llvm/trunk/include/llvm-c/Transforms/PassManagerBuilder.h Fri Sep 28 09:38:11 2018
@@ -79,6 +79,9 @@ void LLVMPassManagerBuilderPopulateLTOPa
                                                   LLVMBool Internalize,
                                                   LLVMBool RunInliner);
 
+/** See llvm::addCoroutinePassesToExtensionPoints. */
+void LLVMPassManagerBuilderAddCoroutinePassesToExtensionPoints(LLVMPassManagerBuilderRef PMB);
+
 /**
  * @}
  */

Modified: llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp?rev=343336&r1=343335&r2=343336&view=diff
==============================================================================
--- llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp (original)
+++ llvm/trunk/lib/Transforms/IPO/PassManagerBuilder.cpp Fri Sep 28 09:38:11 2018
@@ -30,6 +30,7 @@
 #include "llvm/Support/CommandLine.h"
 #include "llvm/Support/ManagedStatic.h"
 #include "llvm/Transforms/AggressiveInstCombine/AggressiveInstCombine.h"
+#include "llvm/Transforms/Coroutines.h"
 #include "llvm/Transforms/IPO.h"
 #include "llvm/Transforms/IPO/ForceFunctionAttrs.h"
 #include "llvm/Transforms/IPO/FunctionAttrs.h"
@@ -1068,3 +1069,9 @@ void LLVMPassManagerBuilderPopulateLTOPa
 
   Builder->populateLTOPassManager(*LPM);
 }
+
+void
+LLVMPassManagerBuilderAddCoroutinePassesToExtensionPoints(LLVMPassManagerBuilderRef PMB) {
+  PassManagerBuilder *Builder = unwrap(PMB);
+  addCoroutinePassesToExtensionPoints(*Builder);
+}




More information about the llvm-commits mailing list