similar to: [LLVMdev] Marking a function prototype as being "persistent"

Displaying 20 results from an estimated 3000 matches similar to: "[LLVMdev] Marking a function prototype as being "persistent""

2011 Jan 07
0
[LLVMdev] Marking a function prototype as being "persistent"
Hi Christophe, >>> Apparently, this depends on the oddly-named UnitAtATime parameter. Set it to false. Try again. Suggestion: what about a comment explaining what "UnitAtATime" means :-) >> >> If UnitAtATime is false this means that you are optimizing functions as you are >> generating them, rather than first generating all functions and other globals >>
2011 Jan 06
2
[LLVMdev] Marking a function prototype as being "persistent"
Hello and happy new year, I'm using LLVM to JIT-compile the XL programming language. I've recently added a whole-program optimization phase that gives excellent results, but I noticed that the StripDeadPrototypesPass was removing all references to my runtime support functions. Apparently, this depends on the oddly-named UnitAtATime parameter. Set it to false. Try again. Suggestion:
2011 Jan 06
0
[LLVMdev] Marking a function prototype as being "persistent"
Hi Christophe, > I'm using LLVM to JIT-compile the XL programming language. I've recently added a whole-program optimization phase that gives excellent results, but I noticed that the StripDeadPrototypesPass was removing all references to my runtime support functions. why is that a problem? > Apparently, this depends on the oddly-named UnitAtATime parameter. Set it to false. Try
2011 Jan 07
1
[LLVMdev] Marking a function prototype as being "persistent"
Hi Duncan, On 7 janv. 2011, at 01:00, Duncan Sands wrote: > LTO is for doing optimizations that are only valid when the module contains > everything that is needed to build the final executable. So adding a flag to > say "not everything is there after all" makes no sense to me. And indeed, everything is there when I call LTO. The flag is not "not everything is there
2010 Feb 10
3
[LLVMdev] adding switches to llvm-ld to disable certain optimizations.
Hi, I need to add switches like -disable-mem2reg, disable-gvn to llvm-ld. Currently CreateStandardLTOPasses takes in only DisableInternalize and DisableInliner switches. Is modifying this API okay for these new switches, or is it doable in some other ways ? - Sanjiv
2011 Apr 18
0
[LLVMdev] Registering a custom opt pass as a default one
On Apr 18, 2011, at 6:46 AM, Alexander Potapenko wrote: > Hi all, > > we're working on compile-time instrumentation for ThreadSanitizer (a > data race detector, see http://code.google.com/p/data-race-test and > http://code.google.com/p/data-race-test/wiki/CompileTimeInstrumentation), > which is implemented as an opt plugin that is ran for each client > C/C++ module we
2011 Mar 22
2
[LLVMdev] LLVM optimization passes crash when running on second thread
Hello, I am trying to modify my LLVM-based compiler to perform an initial, no-optimization compilation synchronously on startup and then perform an asynchronous, optimized recompilation in the background, and I am getting in one of the optimization passes. - I am using the official release of LLVM 2.8 - I have compiled LLVM with threading enabled; I am running llvm::llvm_start_multithreaded() on
2011 Mar 22
0
[LLVMdev] LLVM optimization passes crash when running on second thread
On Tue, Mar 22, 2011 at 11:51 AM, Peter Zion <peter.zion at fabric-engine.com> wrote: > Hello, > > I am trying to modify my LLVM-based compiler to perform an initial, no-optimization compilation synchronously on startup and then perform an asynchronous, optimized recompilation in the background, and I am getting in one of the optimization passes. > > - I am using the official
2010 Feb 10
3
[LLVMdev] adding switches to llvm-ld to disable certain optimizations.
Chris Lattner wrote: > On Feb 9, 2010, at 7:39 PM, Sanjiv Gupta wrote: > > >> Hi, >> I need to add switches like -disable-mem2reg, disable-gvn to llvm-ld. >> Currently CreateStandardLTOPasses takes in only DisableInternalize and >> DisableInliner switches. >> >> Is modifying this API okay for these new switches, or is it doable in >> some
2011 Oct 20
3
[LLVMdev] Inlining functions
Dear LLVMers, I am trying to use your inline pass, and I would like to know if it is possible to remove a function from the bitcode file once it is inlined. Basically, I try: $> opt -inline file2.bc > file2.in.bc and I see that all the functions have been inlined into the main procedure, inside file2.in.bc. However, the inlined function is still in the bitcode, even though it is
2015 Jun 05
2
[LLVMdev] Removing AvailableExternal values in GlobalDCE (was Re: RFC: ThinLTO Impementation Plan)
On Thu, Jun 4, 2015 at 5:33 PM, Reid Kleckner <rnk at google.com> wrote: > On Thu, Jun 4, 2015 at 5:17 PM, Teresa Johnson <tejohnson at google.com> wrote: >> >> Agreed. Although I assume you mean invoke the new pass under a >> ThinLTO-only option so that avail extern are not dropped in the >> compile pass before the LTO link? > > > No, this pass
2011 Oct 20
0
[LLVMdev] Inlining functions
On Thu, Oct 20, 2011 at 12:48 PM, Gabriel Quadros <gquadrossilva at gmail.com> wrote: > Dear LLVMers, > >     I am trying to use your inline pass, and I would like to know if it is > possible to remove a function from the bitcode file once it is inlined. > Basically, I try: > > $> opt -inline file2.bc > file2.in.bc > >     and I see that all the functions
2015 Jun 04
5
[LLVMdev] Removing AvailableExternal values in GlobalDCE (was Re: RFC: ThinLTO Impementation Plan)
On Thu, Jun 4, 2015 at 3:58 PM, Duncan P. N. Exon Smith < dexonsmith at apple.com> wrote: > > > Personally, I think the right approach is to add a bool to > createGlobalDCEPass defaulting to true named something like > IsAfterInlining. In most standard pass pipelines, GlobalDCE runs after > inlining for obvious reasons, so the default makes sense. The special case > is
2017 Oct 26
2
LLVM v6.0 Internalize and GlobalDCE PASS can not work together?
Hi Hal, Thanks for your hint! $ /opt/llvm-svn/bin/opt -S -internalize -internalize-public-api-list=main -globaldce hello3.ll -o hello3.dce.ll    it works :) But I argue that `main` Function should be inserted into ExternalNames by default: Index: lib/Transforms/IPO/Internalize.cpp =================================================================== --- lib/Transforms/IPO/Internalize.cpp 
2017 Oct 25
3
LLVM v6.0 Internalize and GlobalDCE PASS can not work together?
Hi LLVM developers, $ cat hello.c #include <stdio.h> void foo() { } int main(int argc, char *argv[]) {   for (int i = 0; i < 10; i++) {     printf("%d\n", i);   }   return 0; } $ /opt/llvm-svn/bin/clang --version Fedora clang version 6.0.0 (trunk 316308) (based on LLVM 6.0.0svn) Target: x86_64-redhat-linux Thread model: posix InstalledDir: /opt/llvm-svn/bin $
2009 Jan 25
2
[LLVMdev] -O4 limitations in llvm/llvm-gcc-4.2 2.5?
I've had better luck compiling all of pymol 1.1r2 with -O4 on darwin9. Everythink links and there appears to be no regressions in the resulting code. I take it that LTO in llvm 2.5 is still limited to dead code elimination, correct? Will LTO ever be extended to inlining across files as well as constant-folding and global data allocation optimizations? Or does the reliance on gcc-4.2 as the
2015 Jun 08
2
[LLVMdev] Removing AvailableExternal values in GlobalDCE (was Re: RFC: ThinLTO Impementation Plan)
Talked to Eric Fri and he suggested that this might be the first of several places where we want behavior of LTO compiles to diverge from normal -O2 compiles. So for now I have implemented this such that we pass down -flto to the -cc1 job, and that gets propagated as a code gen option and into the PassManagerBuilder. I have left the current logic translating -flto to the -emit-llvm-bc option,
2011 Sep 05
0
[LLVMdev] arithmetical operands signedness
Hi Christophe, On 05/09/11 18:35, Christophe de Dinechin wrote: > > On 5 sept. 2011, at 17:48, Duncan Sands wrote: > >> since the result of a multiply doesn't depend on the signedness, I find it >> strange that your target differentiates between them. What I'm saying is >> that if you have (say) two i32 numbers a and b and you do a signed multiply: >>
2010 Feb 10
0
[LLVMdev] adding switches to llvm-ld to disable certain optimizations.
On Feb 9, 2010, at 7:39 PM, Sanjiv Gupta wrote: > Hi, > I need to add switches like -disable-mem2reg, disable-gvn to llvm-ld. > Currently CreateStandardLTOPasses takes in only DisableInternalize and > DisableInliner switches. > > Is modifying this API okay for these new switches, or is it doable in > some other ways ? Why do you want this? -Chris
2010 Mar 05
0
[LLVMdev] Last chance to get anything into llvm-c and ocaml bindings
Erick Tryzelaar <erick.tryzelaar <at> gmail.com> writes: > > I've pretty much finished exposing all I wanted to llvm-c and the > ocaml bindings for the soon to be released 2.7. Does anyone need any > other functions exposed before the code freeze on the 7th? > Hi Erick, Can you make the following functions available in llvm-c. createStandardFunctionPasses