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