Skip to content

Commit 7344f8a

Browse files
committed
[Orc] Use new pass manager in example
Invoke InstCombine via the new pass manager, instead of the legacy pass manager.
1 parent 1d6b5b6 commit 7344f8a

File tree

1 file changed

+5
-6
lines changed

1 file changed

+5
-6
lines changed

llvm/examples/OrcV2Examples/OrcV2CBindingsIRTransforms/OrcV2CBindingsIRTransforms.c

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
#include "llvm-c/LLJIT.h"
2222
#include "llvm-c/Support.h"
2323
#include "llvm-c/Target.h"
24-
#include "llvm-c/Transforms/Scalar.h"
24+
#include "llvm-c/Transforms/PassBuilder.h"
2525

2626
#include <stdio.h>
2727

@@ -54,11 +54,10 @@ LLVMOrcThreadSafeModuleRef createDemoModule(void) {
5454
}
5555

5656
LLVMErrorRef myModuleTransform(void *Ctx, LLVMModuleRef Mod) {
57-
LLVMPassManagerRef PM = LLVMCreatePassManager();
58-
LLVMAddInstructionCombiningPass(PM);
59-
LLVMRunPassManager(PM, Mod);
60-
LLVMDisposePassManager(PM);
61-
return LLVMErrorSuccess;
57+
LLVMPassBuilderOptionsRef Options = LLVMCreatePassBuilderOptions();
58+
LLVMErrorRef E = LLVMRunPasses(Mod, "instcombine", NULL, Options);
59+
LLVMDisposePassBuilderOptions(Options);
60+
return E;
6261
}
6362

6463
LLVMErrorRef transform(void *Ctx, LLVMOrcThreadSafeModuleRef *ModInOut,

0 commit comments

Comments
 (0)