diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-04-15 02:38:06 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-04-15 02:38:06 +0000 |
| commit | 8a74f6846d4f0844cf6125746571c10748934c8c (patch) | |
| tree | c898a38ce1f6fee55e44f7adf4fc6f904f694987 /llvm/tools | |
| parent | c4f0a325a7a1dde8780a740bca06705df3d7f58e (diff) | |
| download | bcm5719-llvm-8a74f6846d4f0844cf6125746571c10748934c8c.tar.gz bcm5719-llvm-8a74f6846d4f0844cf6125746571c10748934c8c.zip | |
uselistorder: Pull the bit through PrintModulePass
Now the callers of `PrintModulePass()` (etc.) that care about use-list
order in assembly pass in the flag.
llvm-svn: 234969
Diffstat (limited to 'llvm/tools')
| -rw-r--r-- | llvm/tools/llvm-extract/llvm-extract.cpp | 3 | ||||
| -rw-r--r-- | llvm/tools/opt/NewPMDriver.cpp | 4 | ||||
| -rw-r--r-- | llvm/tools/opt/NewPMDriver.h | 1 | ||||
| -rw-r--r-- | llvm/tools/opt/opt.cpp | 7 |
4 files changed, 11 insertions, 4 deletions
diff --git a/llvm/tools/llvm-extract/llvm-extract.cpp b/llvm/tools/llvm-extract/llvm-extract.cpp index d67b41bea21..1a477934357 100644 --- a/llvm/tools/llvm-extract/llvm-extract.cpp +++ b/llvm/tools/llvm-extract/llvm-extract.cpp @@ -270,7 +270,8 @@ int main(int argc, char **argv) { } if (OutputAssembly) - Passes.add(createPrintModulePass(Out.os())); + Passes.add(createPrintModulePass(Out.os(), "", + shouldPreserveAssemblyUseListOrder())); else if (Force || !CheckBitcodeOutputToConsole(Out.os(), true)) Passes.add( createBitcodeWriterPass(Out.os(), shouldPreserveBitcodeUseListOrder())); diff --git a/llvm/tools/opt/NewPMDriver.cpp b/llvm/tools/opt/NewPMDriver.cpp index 8d4b279c6f7..3030d65743a 100644 --- a/llvm/tools/opt/NewPMDriver.cpp +++ b/llvm/tools/opt/NewPMDriver.cpp @@ -40,6 +40,7 @@ bool llvm::runPassPipeline(StringRef Arg0, LLVMContext &Context, Module &M, TargetMachine *TM, tool_output_file *Out, StringRef PassPipeline, OutputKind OK, VerifierKind VK, + bool ShouldPreserveAssemblyUseListOrder, bool ShouldPreserveBitcodeUseListOrder) { PassBuilder PB(TM); @@ -78,7 +79,8 @@ bool llvm::runPassPipeline(StringRef Arg0, LLVMContext &Context, Module &M, case OK_NoOutput: break; // No output pass needed. case OK_OutputAssembly: - MPM.addPass(PrintModulePass(Out->os())); + MPM.addPass( + PrintModulePass(Out->os(), "", ShouldPreserveAssemblyUseListOrder)); break; case OK_OutputBitcode: MPM.addPass( diff --git a/llvm/tools/opt/NewPMDriver.h b/llvm/tools/opt/NewPMDriver.h index e9a751da250..349a7b1267f 100644 --- a/llvm/tools/opt/NewPMDriver.h +++ b/llvm/tools/opt/NewPMDriver.h @@ -52,6 +52,7 @@ bool runPassPipeline(StringRef Arg0, LLVMContext &Context, Module &M, TargetMachine *TM, tool_output_file *Out, StringRef PassPipeline, opt_tool::OutputKind OK, opt_tool::VerifierKind VK, + bool ShouldPreserveAssemblyUseListOrder, bool ShouldPreserveBitcodeUseListOrder); } diff --git a/llvm/tools/opt/opt.cpp b/llvm/tools/opt/opt.cpp index 8946558d219..28cbe4f1a94 100644 --- a/llvm/tools/opt/opt.cpp +++ b/llvm/tools/opt/opt.cpp @@ -432,6 +432,7 @@ int main(int argc, char **argv) { // layer. return runPassPipeline(argv[0], Context, *M, TM.get(), Out.get(), PassPipeline, OK, VK, + shouldPreserveAssemblyUseListOrder(), shouldPreserveBitcodeUseListOrder()) ? 0 : 1; @@ -556,7 +557,8 @@ int main(int argc, char **argv) { } if (PrintEachXForm) - Passes.add(createPrintModulePass(errs())); + Passes.add(createPrintModulePass(errs(), "", + shouldPreserveAssemblyUseListOrder())); } if (StandardLinkOpts) { @@ -593,7 +595,8 @@ int main(int argc, char **argv) { // Write bitcode or assembly to the output as the last step... if (!NoOutput && !AnalyzeOnly) { if (OutputAssembly) - Passes.add(createPrintModulePass(Out->os())); + Passes.add(createPrintModulePass(Out->os(), "", + shouldPreserveAssemblyUseListOrder())); else Passes.add(createBitcodeWriterPass(Out->os(), shouldPreserveBitcodeUseListOrder())); |

