<html><head><meta http-equiv="content-type" content="text/html; charset=utf-8"></head><body dir="auto"><div></div><div>The stack trace:</div><div>llvm::PMTopLevelManager::addImmutablePass(llvm::ImmutablePass*)</div><div><span style="background-color: rgba(255, 255, 255, 0);">llvm::PMTopLevelManager::schedulePass(llvm::Pass*)</span></div><div><span style="background-color: rgba(255, 255, 255, 0);">moduleToObjectFile(llvm::Module*,std::string&,llvm::LLVMContext&)</span></div><div><span style="background-color: rgba(255, 255, 255, 0);"><br></span></div><div>Sometimes it doesn't crash because TargetRegistry::lookupTarget() returns an error which says it doesn't support the current target</div><div><br>On Mar 24, 2016, at 1:14 AM, Mehdi Amini <<a href="mailto:mehdi.amini@apple.com">mehdi.amini@apple.com</a>> wrote:<br><br></div><blockquote type="cite"><div><meta http-equiv="Content-Type" content="text/html charset=utf-8">Assuming you are talking about this line:<div class=""><br class=""></div><div class="">passmanager.add(tliwp);</div><div class=""><br class=""></div><div class="">I don't see anything obviously wrong. </div><div class="">Are you hitting an assertion or a pure crash? (if LLVM not built with assertions, please rebuild).<div class="">What does your debugger gives you as a stracktrace?</div><div class=""><br class=""></div><div class="">-- </div><div class="">Mehdi</div><div class=""><br class=""></div><div class=""><br class=""><div class=""><br class=""><div><blockquote type="cite" class=""><div class="">On Mar 23, 2016, at 3:44 PM, Lorenzo Laneve via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class=""><div class="">Sorry in advance for the stupid question, i still don’t understand some concepts like passes.</div><div class="">I took a piece of code from llc, and I used it to write a function that creates an object (or assembly) file from an IR module.</div><div class="">It compiles without any problems. But program crashes when it reaches add() method of the pass manager.</div><div class="">Can you help me figuring out what’s the problem please? here is my function</div><div class=""><br class=""></div><div class=""><br class=""></div><div class=""><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">int</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> moduleToObjectFile(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">llvm</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">Module</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *module, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">string</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> &srcname, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">llvm</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">LLVMContext</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> &Context) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">SMDiagnostic</span><span style="" class=""> error;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">Triple</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> moduletriple = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">Triple</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(module-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTargetTriple</span><span style="font-variant-ligatures: no-common-ligatures;" class="">());</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (moduletriple.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTriple</span><span style="font-variant-ligatures: no-common-ligatures;" class="">().</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">())</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="" class=""> moduletriple.</span><span style="font-variant-ligatures: no-common-ligatures;" class="">setTriple</span><span style="" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">sys</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures;" class="">getDefaultTargetTriple</span><span style="" class="">());</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">string</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> lookuperror;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">const</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">Target</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *moduletarget = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">TargetRegistry</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">lookupTarget</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">MArch</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, moduletriple, lookuperror);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!moduletarget) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="font-variant-ligatures: no-common-ligatures;" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">lookuperror;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">string</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> cpuname = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getCPUStr</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(),</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> ftrlist = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getFeaturesStr</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">CodeGenOpt</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures;" class="">Level</span><span style="" class=""> OLvl = </span><span style="font-variant-ligatures: no-common-ligatures;" class="">CodeGenOpt</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Default</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">switch</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">'2'</span><span style="font-variant-ligatures: no-common-ligatures;" class="">) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">default</span><span style="font-variant-ligatures: no-common-ligatures;" class="">:</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"invalid optimization level.\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">case</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">' '</span><span style="font-variant-ligatures: no-common-ligatures;" class="">: </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">break</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">case</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">'0'</span><span style="font-variant-ligatures: no-common-ligatures;" class="">: OLvl = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">CodeGenOpt</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">None</span><span style="font-variant-ligatures: no-common-ligatures;" class="">; </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">break</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">case</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">'1'</span><span style="font-variant-ligatures: no-common-ligatures;" class="">: OLvl = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">CodeGenOpt</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Less</span><span style="font-variant-ligatures: no-common-ligatures;" class="">; </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">break</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">case</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">'2'</span><span style="font-variant-ligatures: no-common-ligatures;" class="">: OLvl = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">CodeGenOpt</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Default</span><span style="font-variant-ligatures: no-common-ligatures;" class="">; </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">break</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">case</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">'3'</span><span style="font-variant-ligatures: no-common-ligatures;" class="">: OLvl = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">CodeGenOpt</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Aggressive</span><span style="font-variant-ligatures: no-common-ligatures;" class="">; </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">break</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">TargetOptions</span><span style="" class=""> targetopts = </span><span style="font-variant-ligatures: no-common-ligatures;" class="">InitTargetOptionsFromCodeGenFlags</span><span style="" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">unique_ptr</span><span style="font-variant-ligatures: no-common-ligatures;" class=""><</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">TargetMachine</span><span style="font-variant-ligatures: no-common-ligatures;" class="">> tmachine(moduletarget-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">createTargetMachine</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(moduletriple.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTriple</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(), cpuname, ftrlist, </span><span style="font-variant-ligatures: no-common-ligatures;" class="">targetopts, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">Reloc</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Default</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">CodeModel</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Default</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, OLvl));</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(120, 73, 42);" class="">assert</span><span style="" class="">(tmachine && </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"Could not allocate target machine!"</span><span style="" class="">);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(120, 73, 42);" class="">assert</span><span style="" class="">(module && </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"Should have exited if we didn't have a module!"</span><span style="" class="">);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="" class=""> (</span><span style="font-variant-ligatures: no-common-ligatures;" class="">FloatABIForCalls</span><span style="" class=""> != </span><span style="font-variant-ligatures: no-common-ligatures;" class="">FloatABI</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">Default</span><span style="" class="">)</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> targetopts.</span><span style="font-variant-ligatures: no-common-ligatures;" class="">FloatABIType</span><span style="" class=""> = </span><span style="font-variant-ligatures: no-common-ligatures;" class="">FloatABIForCalls</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">unique_ptr</span><span style="font-variant-ligatures: no-common-ligatures;" class=""><</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">tool_output_file</span><span style="font-variant-ligatures: no-common-ligatures;" class="">> objoutstream = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getOutputFileStream</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(module, srcname);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!objoutstream) </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">legacy</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">PassManager</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> passmanager;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">TargetLibraryInfoImpl</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> TLII(moduletriple);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">TargetLibraryInfoWrapperPass</span><span style="" class=""> *tliwp = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">new</span><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">TargetLibraryInfoWrapperPass</span><span style="" class="">(TLII);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> passmanager.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">add</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(tliwp);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="" class=""> module-></span><span style="font-variant-ligatures: no-common-ligatures;" class="">setDataLayout</span><span style="" class="">(tmachine-></span><span style="font-variant-ligatures: no-common-ligatures;" class="">createDataLayout</span><span style="" class="">());</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">setFunctionAttributes</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(cpuname, ftrlist, *module);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(49, 89, 93);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="" class=""> (</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">RelaxAll</span><span style="" class="">.</span><span style="font-variant-ligatures: no-common-ligatures;" class="">getNumOccurrences</span><span style="" class="">() > </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">0</span><span style="" class=""> &&</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">FileType</span><span style="" class=""> != </span><span style="font-variant-ligatures: no-common-ligatures;" class="">TargetMachine</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">CGFT_ObjectFile</span><span style="" class="">)</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"warning: ignoring -mc-relax-all because filetype != obj"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">raw_pwrite_stream</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *outstream = &objoutstream-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">os</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">SmallVector</span><span style="font-variant-ligatures: no-common-ligatures;" class=""><</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">char</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">0</span><span style="font-variant-ligatures: no-common-ligatures;" class="">> filebuf;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">std</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(112, 61, 170);" class="">unique_ptr</span><span style="" class=""><</span><span style="font-variant-ligatures: no-common-ligatures;" class="">raw_svector_ostream</span><span style="" class="">> BOS;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> ((</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">FileType</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> != </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">TargetMachine</span><span style="font-variant-ligatures: no-common-ligatures;" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">CGFT_AssemblyFile</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> && !objoutstream-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">os</span><span style="font-variant-ligatures: no-common-ligatures;" class="">().</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">supportsSeeking</span><span style="font-variant-ligatures: no-common-ligatures;" class="">())</span><span style="font-variant-ligatures: no-common-ligatures;" class="">) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> BOS = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">make_unique</span><span style="font-variant-ligatures: no-common-ligatures;" class=""><</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">raw_svector_ostream</span><span style="font-variant-ligatures: no-common-ligatures;" class="">>(filebuf);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> outstream = BOS.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">get</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">AnalysisID</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> StartBeforeID = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">nullptr</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">AnalysisID</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> StartAfterID = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">nullptr</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">AnalysisID</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> StopAfterID = </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">nullptr</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(79, 129, 135);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">const</span><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures;" class="">PassRegistry</span><span style="" class=""> *PR = </span><span style="font-variant-ligatures: no-common-ligatures;" class="">PassRegistry</span><span style="" class="">::</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getPassRegistry</span><span style="" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">RunPass</span><span style="font-variant-ligatures: no-common-ligatures;" class="">.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">()) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StartAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">() || !</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StopAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">()) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"start-after and/or stop-after passes are redundant when run-pass is specified.\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">const</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">PassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *PI = PR-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getPassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">RunPass</span><span style="font-variant-ligatures: no-common-ligatures;" class="">);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!PI) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"run-pass pass is not registered.\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> StopAfterID = StartBeforeID = PI-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTypeInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> } </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">else</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StartAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">()) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">const</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">PassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *PI = PR-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getPassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StartAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!PI) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"start-after pass is not registered.\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> StartAfterID = PI-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTypeInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StopAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(61, 29, 129);" class="">empty</span><span style="font-variant-ligatures: no-common-ligatures;" class="">()) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">const</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">PassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> *PI = PR-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getPassInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">StopAfter</span><span style="font-variant-ligatures: no-common-ligatures;" class="">);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (!PI) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"stop-after pass is not registered.\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> StopAfterID = PI-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">getTypeInfo</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (tmachine-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">addPassesToEmitFile</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(passmanager, *outstream, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(79, 129, 135);" class="">FileType</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">false</span><span style="font-variant-ligatures: no-common-ligatures;" class="">, StartBeforeID, StartAfterID, StopAfterID)) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; color: rgb(209, 47, 27);" class=""><span style="" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">errs</span><span style="" class="">() << </span><span style="font-variant-ligatures: no-common-ligatures;" class="">"target does not support generation of this file type!\n"</span><span style="" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">1</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> passmanager.</span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">run</span><span style="font-variant-ligatures: no-common-ligatures;" class="">(*module);</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">if</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> (BOS) {</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> objoutstream-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">os</span><span style="font-variant-ligatures: no-common-ligatures;" class="">() << filebuf;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> }</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> objoutstream-></span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(49, 89, 93);" class="">keep</span><span style="font-variant-ligatures: no-common-ligatures;" class="">();</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo; min-height: 13px;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><br class="webkit-block-placeholder"></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(187, 44, 162);" class="">return</span><span style="font-variant-ligatures: no-common-ligatures;" class=""> </span><span style="font-variant-ligatures: no-common-ligatures; color: rgb(39, 42, 216);" class="">0</span><span style="font-variant-ligatures: no-common-ligatures;" class="">;</span></div><div style="margin: 0px; font-size: 11px; line-height: normal; font-family: Menlo;" class=""><span style="font-variant-ligatures: no-common-ligatures;" class="">}</span></div></div></div>_______________________________________________<br class="">LLVM Developers mailing list<br class=""><a href="mailto:llvm-dev@lists.llvm.org" class="">llvm-dev@lists.llvm.org</a><br class=""><a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br class=""></div></blockquote></div><br class=""></div></div></div></div></blockquote></body></html>