search for: ltobackend

Displaying 6 results from an estimated 6 matches for "ltobackend".

Did you mean: libbackend
2017 Oct 03
2
New Pass Manager with flto[=thin] not enabled (??)
...w pass manager was not enabled at regular/thin LTO link step even if '-fexperimental-new-pass-manager' was specified in the compile step and link step commands. Upon closer inspection, it seems there's so real way to invoke the new pass manager path ('runNewPMPasses' in lib/LTO/LTOBackend.cpp) during link step. 'Conf.UseNewPM' is used to select the new PM in LTOBackend.cpp, but only two places in the code sets it. The first is through the 'llvm-lto2' tool, and the second during the compile step with '-fthinlto-index=<value>'. Neither are invoked durin...
2020 Sep 24
2
How lld invoke LTO or thinLTO and is there some cases and some method to get the step-by-step message for me to understand how LTO worked?
Hi: &nbsp; &nbsp; I want to learn&nbsp; how LTO and thinLTO work? But I'm confused how lld invoked either library. How can I find it in lld. Should i be familiar with lld source code? And i also think if there is some easy test case and with step-by- step debugging or some log messages can help me learn this? Is there some method can do stuff like this? &nbsp; Thank you very
2017 Oct 03
2
New Pass Manager with flto[=thin] not enabled (??)
...egular/thin >> LTO link step even if '-fexperimental-new-pass-manager' was specified in the >> compile step and link step commands. Upon closer inspection, it seems >> there's so real way to invoke the new pass manager path ('runNewPMPasses' in >> lib/LTO/LTOBackend.cpp) during link step. >> > > `-fexperimental-new-pass-manager` is a compile time flag and has no > effect on the link step IIRC. > You may want to teach the driver to pass the correct flag to the LTO > plugin in gold or to lld. > > -- > Davide For lld in particular,...
2019 Nov 28
2
ThinLTO Problem
...ting your bitcode files? I create the bitcode with `-flto=thin -c` and sure it has a GLOBALVAL_SUMMARY_BLOCK. And there’s no RegularLTO partition only ThinLTO bicode. > Where is it aborting in the backend? It aborts at ` report_fatal_error("Failed to setup codegen")` in of codegen() of LTOBackend.cpp. And before that in createTargetMachine() it also warns ‘xxx is not a recognized processor’. But the program should return before run into backend() IIUC since all I want is using lld with `-thinlto-index-only` option to generate *.thinlto.bc and feed it and bitocde to clang to invoke target-sp...
2019 Nov 27
4
ThinLTO Problem
Hi, I'm working on enabling thinLTO for our custom backend on LLVM-8 with lld to get code size benefits from dead symbol elimination. The code in LTO::run() of LTO.cpp confuses me that, even though thinLTO is specified, runRegularLTO() will be run first and its return value determines whether runThinLTO() will be executed. My question is if it's clearly known that thinLTO is used, is it
2019 Apr 04
2
single-threaded code-gen and how to make it support multi-thread
Thank you Johannes, I looked it up and it seems that we're creating one LLVMContext per compilation "unit", not sure if that matters. i.e. there's no single globally shared LLVMContext object. Is LLVMContext *the* concurrency isolation (or unit) here? On Wed, Apr 3, 2019 at 6:34 PM Doerfert, Johannes <jdoerfert at anl.gov> wrote: > Do you use one llvm context or one