similar to: [LLVMdev] Weird GIMPLE by gccgo

Displaying 20 results from an estimated 300 matches similar to: "[LLVMdev] Weird GIMPLE by gccgo"

2011 Sep 14
1
[LLVMdev] More assertion failures on gccgo/dragonegg
Hi! gccgo now trips the assertion in Constants.cpp, line 1318: assert(!HAS_RTL_P(exp) && "Cache collision with decl_llvm!"); Does it make sense to split WeakVHCache (Cache.cpp) into ConstantCache and DeclCache? Thanks! -- Sanjoy Das http://playingwithpointers.com
2012 Jul 31
1
[LLVMdev] [DragonEgg] Mysterious FRAME coming from gimple to LLVM
> According to comment in tree-nested.c, these frames should be only > introduced in case of debug or OpenMP lowering: in case of *debug*. What if you pass -O1 / -O2 / -Owhatever ? -- With best regards, Anton Korobeynikov Faculty of Mathematics and Mechanics, Saint Petersburg State University
2013 Jan 15
0
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
Hi Duncan, You mean - what happens if DragonEgg is invoked with GCC optimization? I tried -O3 and -fplugin-arg-dragonegg-llvm-ir-optimize=1, but nothing changed. - D. 2013/1/8 Duncan Sands <baldrick at free.fr> > On 04/01/13 15:58, Duncan Sands wrote: > >> PS: Another possibility is to do link-time optimization, since at that >> point the >> optimizers are capable
2013 Jan 08
2
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
On 04/01/13 15:58, Duncan Sands wrote: > PS: Another possibility is to do link-time optimization, since at that point the > optimizers are capable of finding out if that global is used anywhere else or > not. By the way, do the GCC optimizers get this, i.e. remove the loads? Ciao, Duncan.
2013 Jan 01
0
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
Hi Dmitry, > > In our compiler we use a modified version LLVM Polly, which is very sensitive to > proper code generation. Among the number of limitations, the loop region > (enclosed by phi node on induction variable and branch) is required to be free > of additional memory-dependent branches. In other words, there must be no > conditional "br" instructions below phi
2013 Jan 04
0
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
PS: Another possibility is to do link-time optimization, since at that point the optimizers are capable of finding out if that global is used anywhere else or not.
2013 Feb 09
0
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
Hi Duncan, Got it. So, it looks like in [case] it is really sufficient to have -O1 for GCC to remove loads (not really remove, but rather pull outside of loops, which is sufficient). And in this case - GCC -O1 does not help. Still, is the [case] sufficient for you to track the missing GCC's info and make it accessible to LLVM? Meanwhile, I think we will use GCC -O1, however, I guess, it
2013 Jan 16
2
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
Hi Dmitry, On 15/01/13 22:22, Dmitry Mikushin wrote: > Hi Duncan, > > You mean - what happens if DragonEgg is invoked with GCC optimization? I tried > -O3 and -fplugin-arg-dragonegg-llvm-ir-optimize=1, but nothing changed. no, I meant if you run gcc with optimization and don't use dragonegg at all. If I understand right, your problem is that the LLVM optimizers don't remove
2013 Jan 02
0
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
Hi Duncan & Tobi, Thanks a lot for your interest, and for pointing out differences in GIMPLE I missed. Attached is simplified test case. Is it good? Tobi, regarding runtime alias analysis: in KernelGen we already do it along with runtime values substitution. For example: <------------------ __kernelgen_main_loop_17: compile started ---------------------> Integer args substituted:
2012 Jul 13
0
[LLVMdev] Fwd: Documentation about converting GIMPLE IR to LLVM IR in LLVM-GCC/DragonEgg
Hello Duncan Sands, >From your reply, what I can understand is that there is no any new OPENMP specific instructions introduced into LLVM IR as a part of DragonEgg project since GCC has already done the job of lowering OpenMP directives into GOMP runtime library calls at LOW GIMPLE IR level. Now, it throws up following questions. 1. Am I correct that DragoEgg should logically supports
2013 Jan 02
2
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
On 01/01/2013 02:45 PM, Duncan Sands wrote: > Hi Dmitry, > >> >> In our compiler we use a modified version LLVM Polly, which is very >> sensitive to >> proper code generation. Among the number of limitations, the loop region >> (enclosed by phi node on induction variable and branch) is required to >> be free >> of additional memory-dependent
2012 Jul 12
4
[LLVMdev] Documentation about converting GIMPLE IR to LLVM IR in LLVM-GCC/DragonEgg
Dear All, I am trying to understand the process followed for converting GIMPLE IR to LLVM IR in LLVM-GCC/DragonEgg - more importantly conversion of OpenMP extended GIMPLE IR to LLVM IR. It would be great if anybody points me to some documentation before I my-self delve into the understanding of related source code. -- Cheers -mahesha -------------- next part -------------- An HTML attachment
2013 Jan 04
4
[LLVMdev] [Polly] Aliasing problems escalation (WAS: Re: [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?)
Hi, Here's another case, different in high-level, but similar in low-level. When Fortran allocatable array is defined in module, its actual dimensions are kept in internal structure. Loads originated from reading these dimensions confuse Polly on any use of this array. Attachments: 1) Sample Fortran source code (to be compiled with and without -DMODULE to see failing and working version,
2012 Dec 31
3
[LLVMdev] [DragonEgg] [Polly] Should we expect DragonEgg to produce identical LLVM IR for identical GIMPLE?
Dear all, In our compiler we use a modified version LLVM Polly, which is very sensitive to proper code generation. Among the number of limitations, the loop region (enclosed by phi node on induction variable and branch) is required to be free of additional memory-dependent branches. In other words, there must be no conditional "br" instructions below phi nodes. The problem we are facing
2012 Jul 31
0
[LLVMdev] [DragonEgg] Mysterious FRAME coming from gimple to LLVM
According to comment in tree-nested.c, these frames should be only introduced in case of debug or OpenMP lowering: /* A subroutine of convert_nonlocal_reference_op. Create a local variable in the nested function with DECL_VALUE_EXPR set to reference the true variable in the parent function. This is used both for debug info and in OpenMP lowering. */ However, in this code example we
2007 Nov 20
4
onkeyup issue while you create new element
Hi guys, I am new to prototype as a result the following is a simple question please help me out as i have stucked on this for 2 hours (searching, trying, googling and etc) var td6Input = td6.appendChild(new Element(''input'', {size: "2", maxLength: "2", name: "txtDateOfServDay"+seq, id: "txtDateOfServDay"+seq, onkeyup:
2014 Apr 01
3
[LLVMdev] Proposal: Loads/stores with deterministic trap/unwind behavior
On Tue, Apr 01, 2014 at 11:35:16AM -0500, Krzysztof Parzyszek wrote: > How do you plan to actually create the exception? The runtime library can invoke the unwinder directly (i.e. using _Unwind_RaiseException). > You cannot simply > throw an exception (via "throw" statement) from a signal handler because > the unwinding won't happen properly. To make it work
2006 Jul 31
1
[LLVMdev] Auto-vectorization in GCC 4.0
On Mon, 31 Jul 2006, Devang Patel wrote: > On Jul 31, 2006, at 11:14 AM, Vikram Adve wrote: >> Does llvmgcc4 convert the high-level AST to LLVM (like llvmgcc3x) or does >> it go from GIMPL to LLVM? If the latter, would it be possible to allow >> some TreeSSA optimizations before emitting LLVM? > llvmgcc4 intercepts high-level GCC trees to GIMPLE tree transformation
2010 Jun 22
1
[LLVMdev] RTL <-> SSA
On Tue, Jun 22, 2010 at 1:53 PM, Chris Lattner <clattner at apple.com> wrote: > > On Jun 22, 2010, at 10:29 AM, Jianzhou Zhao wrote: > >> Hi, >> >> Does LLVM have passes that do translations between GCC RTL and LLVM >> SSA, RTL -> SSA and SSA -> RTL? > > Nope.  There has been some talk about doing a Clang -> RTL or LLVM IR -> RTL backend, to
2006 Jul 31
0
[LLVMdev] Auto-vectorization in GCC 4.0
On Jul 31, 2006, at 11:14 AM, Vikram Adve wrote: > Does llvmgcc4 convert the high-level AST to LLVM (like llvmgcc3x) > or does it go from GIMPL to LLVM? If the latter, would it be > possible to allow some TreeSSA optimizations before emitting LLVM? llvmgcc4 intercepts high-level GCC trees to GIMPLE tree transformation routines to get trees that are suitable for LLVM byte code.