similar to: [LLVMdev] opt -globaldce -deadargelim yields different result then when run separately

Displaying 20 results from an estimated 5000 matches similar to: "[LLVMdev] opt -globaldce -deadargelim yields different result then when run separately"

2009 Jan 25
0
[LLVMdev] -O4 limitations in llvm/llvm-gcc-4.2 2.5?
Jack Howarth wrote: > 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? No. libLTO does the equivalent to opt -internalize -ipsccp -globalopt -constmerge -deadargelim -instcombine
2013 Aug 19
1
[LLVMdev] How to disbale loop-rotate in opt -O3 ?
Hello, I am trying to simplify the CFG of a given code and eliminate the conditionals, even though I will obtain codes that are not semantically equivalent. For example, given a simple loop: for(i=0; i<N; i++){    a[i] = i;     if (i%2==0)       a[i] += 12; } I would keep only the loop, without the if statement: for(i=0; i<N; i++){    a[i] = i; } I can eliminate such conditionals on
2015 Jan 05
2
[LLVMdev] LTO v. opt
Thanks to you both. On my Linux (centos6) system, I have reproduce a variant of the bug and learned about -plugin-opt=-debug-pass=Arguments which I infer from comments is intended to built arguments to “opt” however I found that some of the arguments don’t seem to be quite correct. I assume this just minor bit rot. bin/opt -o pass1.bc -datalayout -notti -basictti -x86tti -targetlibinfo
2009 Feb 02
1
[LLVMdev] Proposal: Debug information improvement - keep the line number with optimizations
Hi, I've been thinking about how to keep the line number with the llvm transform/Analysis passes. Basically, I agree with Chris's notes ( http://www.nondot.org/sabre/LLVMNotes/DebugInfoImprovements.txt), and I will follow his way to turn on the line number information when optimization enabled. Here is a detailed proposal: 1. Introduction At the time of this writing, LLVM's
2016 May 09
2
Some questions about phase ordering in OPT and LLC
On Mon, May 09, 2016 at 01:07:07PM -0700, Mehdi Amini via llvm-dev wrote: > > > On May 9, 2016, at 10:43 AM, Ricardo Nobre via llvm-dev <llvm-dev at lists.llvm.org> wrote: > > > > Hi, > > > > I'm a PhD student doing phase ordering as part of my PhD topic and I would like to ask some questions about LLVM. > > > > Executing the following
2010 Jan 16
0
[LLVMdev] llvm opt phase ordering
I wonder whether this question is appropriate to this forum or not; if not, please educate me. For the following command line arguments, what happens to the optimization phases when the licm phase moves out loop invariant instructions to loop preheaders? opt -simplifycfg -instcombine -inline -globaldce -instcombine -simplifycfg -scalarrepl -mem2reg -verify -sccp -adce -licm -instcombine -dce
2011 Nov 15
1
[LLVMdev] opt -O2 optimization passes
Hi all, I would like to know which optimization passes are performed at -O2 by opt. So I used following command: llvm-as < /dev/null | opt -O2 -std-compile-opts -disable-output -debug-pass=Arguments I've got following output for LLVM opt 2.9: Pass Arguments: -no-aa -tbaa -basicaa -simplifycfg -domtree -scalarrepl -early-cse Pass Arguments: -targetlibinfo -no-aa -tbaa -basicaa
2011 Dec 30
1
[LLVMdev] Safe Passes
Which transformation passes are 'safe', meaning it does not worsens the effectiveness of a later pass or the generated code? I imagine all passes which either removes data or add attributes are included in this list, plus some simplification passes: -adce -argpromotion -constmerge -constprop -deadargelim -dse -functionattrs -globaldce -globalopt -gvn -instcombine -internalize
2016 May 09
4
Some questions about phase ordering in OPT and LLC
Hi, I'm a PhD student doing phase ordering as part of my PhD topic and I would like to ask some questions about LLVM. Executing the following command to see what passes does OPT execute when targeting a SPARC V8 processor: /opt/clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-15.10/bin/llvm-as < /dev/null | /opt/clang+llvm-3.7.1-x86_64-linux-gnu-ubuntu-15.10/bin/opt -O3 -march=sparc -mcpu=v8
2010 Jul 14
3
[LLVMdev] different layout of structs for llc vs. llvm-gcc
On Tuesday 13 July 2010 19:48:25 you wrote: > On Tue, Jul 13, 2010 at 10:09 AM, Torvald Riegel > > I thought that the layout of structs was supposed to be preserved (wrong > > assumption?). Otherwise, any ideas why this happens? > > It should be preserved in general; Is this a "should" or a "must"? Are there any cases in which structure layout must be
2010 Jul 14
0
[LLVMdev] different layout of structs for llc vs. llvm-gcc
On Wed, Jul 14, 2010 at 3:20 AM, Torvald Riegel <torvald at se.inf.tu-dresden.de> wrote: > On Tuesday 13 July 2010 19:48:25 you wrote: >> On Tue, Jul 13, 2010 at 10:09 AM, Torvald Riegel >> > I thought that the layout of structs was supposed to be preserved (wrong >> > assumption?). Otherwise, any ideas why this happens? >> >> It should be preserved in
2010 Jul 14
2
[LLVMdev] different layout of structs for llc vs. llvm-gcc
On Wed, Jul 14, 2010 at 10:26 AM, Eli Friedman <eli.friedman at gmail.com> wrote: > On Wed, Jul 14, 2010 at 3:20 AM, Torvald Riegel > <torvald at se.inf.tu-dresden.de> wrote: >> On Tuesday 13 July 2010 19:48:25 you wrote: >>> On Tue, Jul 13, 2010 at 10:09 AM, Torvald Riegel >>> > I thought that the layout of structs was supposed to be preserved (wrong
2007 Feb 23
2
[LLVMdev] bytecode reader assertion failure
I have a compiler transform that I have been working on that produces bytecode that passes the verifier. However, when I try to read that bytecode back in, I get the assertion failure below. llvm::BytecodeReader::ParseConstantPoolValue(unsigned int): Assertion `(!isa<Constant>(Result) || !cast<Constant>(Result)->isNullValue()) || !hasImplicitNull(TypeID) &&
2010 Jul 14
0
[LLVMdev] different layout of structs for llc vs. llvm-gcc
On Wed, Jul 14, 2010 at 8:33 AM, Andrew Lenharth <andrewl at lenharth.org> wrote: > On Wed, Jul 14, 2010 at 10:26 AM, Eli Friedman <eli.friedman at gmail.com> wrote: >> On Wed, Jul 14, 2010 at 3:20 AM, Torvald Riegel >> <torvald at se.inf.tu-dresden.de> wrote: >>> On Tuesday 13 July 2010 19:48:25 you wrote: >>>> On Tue, Jul 13, 2010 at 10:09
2007 Feb 23
0
[LLVMdev] bytecode reader assertion failure
Ryan, This looks like a bug. Could you file it, please? Reid. On Thu, 2007-02-22 at 19:47 -0600, Ryan M. Lefever wrote: > I have a compiler transform that I have been working on that produces > bytecode that passes the verifier. However, when I try to read that > bytecode back in, I get the assertion failure below. > > llvm::BytecodeReader::ParseConstantPoolValue(unsigned
2008 Dec 04
0
[LLVMdev] 32bit math being promoted to 64 bit
instcombine doesn't seem to be doing it. From my testing it seems to only occur when I use -indvars after a long string of commands. For example: llvm-as < test_fc_27.ll | opt -preverify -domtree -verify -lowersetjmp -raiseallocs -simplifycfg -domtree -domfrontier -mem2reg -globalopt -globaldce -ipconstprop -deadargelim -instcombine -simplifycfg -ba siccg -prune-eh -inline
2007 Oct 29
1
[LLVMdev] malloc() vs. MallocInst
Hi Vikram, I want to use poolalloc as a means for partitioning memory in Software Transactional Memory. We will have a paper about tuning parameters in word-based STMs in PPoPP 08, but there we use one configuration for the complete TM, which obviously has limitations in heterogenous workloads. Partitioning with poolalloc should give me (1) hopefully meaningful partitions (ie,
2007 Oct 27
3
[LLVMdev] malloc() vs. MallocInst
Hi, I recently looked quite some time for why poolalloc wouldn't transform calls to malloc() in my program, until I noticed that it handles calls to malloc() (eg, stdlib pass) -- but only transforms MallocInst's. Is there a general policy on how passes should behave? Should they handle both representations, is doing -raiseallocs the preferred way, or do we explicitely not want any
2009 Apr 06
1
[LLVMdev] pragmas
On Wednesday 01 April 2009 20:01:09 Dan Gohman wrote: > On Apr 1, 2009, at 7:25 AM, Torvald Riegel wrote: > > On Wednesday 25 March 2009, Luke Dalessandro wrote: > >> You could encode this information as simple library function calls > >> and > >> then find them again in the generated LLVM IR. The client then just > >> needs a header declaring the
2015 Jan 17
3
[LLVMdev] loop multiversioning
Does LLVM have loop multiversioning ? it seems it does not with clang++ -O3 -mllvm -debug-pass=Arguments program.c -c bash-4.1$ clang++ -O3 -mllvm -debug-pass=Arguments fast_algorithms.c -c clang-3.6: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated Pass Arguments: -datalayout -notti -basictti -x86tti -targetlibinfo -no-aa -tbaa -scoped-noalias