similar to: An issue with "lifetime.start" and storing "undef"

Displaying 20 results from an estimated 1000 matches similar to: "An issue with "lifetime.start" and storing "undef""

2020 Jan 06
2
Any significance for m_OneUse in (X / Y) / Z => X / (Y * Z) ??
Is your case the case mentioned in the subject or a different case? ~Craig On Sun, Jan 5, 2020 at 8:11 PM raghesh <raghesh.a at gmail.com> wrote: > Thanks Sanjay for your comments. > > So, if we want to add a transformation avoiding the one-use check, which > one is the ideal pass? Shall we do it in -aggressive-instcombine? I came > to know that if the pattern search
2020 Jan 03
3
Any significance for m_OneUse in (X / Y) / Z => X / (Y * Z) ??
A couple more general comments: 1. There shouldn't be any correctness issues removing one-use checks (the transform should be safe independently of use-counts). 2. Ideally, you can remove a m_OneUse() from the code and run 'make check' or similar, and you will see a regression test failure because we have a 'negative' test to cover that pattern. That should make it clear that
2019 Dec 31
3
Any significance for m_OneUse in (X / Y) / Z => X / (Y * Z) ??
Dear All, The InstCombine pass performs the following transformation. Z / (X / Y) => (Y * Z) / X This is performed only when operand Op1 ( (X/Y) in this case) has only one use in future. The code snippet is shown below. if (match(Op1, m_OneUse(m_FDiv(m_Value(X), m_Value(Y)))) && (!isa<Constant>(Y) || !isa<Constant>(Op0))) { // Z / (X / Y) => (Y *
2018 May 16
0
GlobalAddress lowering strategy
I've been looking at GlobalAddress lowering strategy recently and was wondering if anyone had any ideas, insights, or experience to share. ## Background When lowering global address, which is typically done in FooTargetLowering::LowerGlobalAddress you have the option of folding in the global offset into the global address or else emitting the base globaladdress and a separate ADD node for the
2017 Jun 19
2
LLVM behavior different depending on function symbol name
using `opt --print-after-all -O3` I see that EarlyCSE is interpreting the call to `ceil` and constant fold: *** IR Dump After Early CSE *** ; Function Attrs: nobuiltin nounwind define i1 @do_test() #2 { Entry: %0 = call fastcc float @ceil(float 0.000000e+00) #6 %1 = call fastcc float @ceil32(float 0.000000e+00) #6 %2 = fcmp fast oeq float 0.000000e+00, %1 ret i1 %2 } So just running `opt
2011 Jun 14
1
[LLVMdev] Adding Polly tester to LLVM buildbot
Hi All, We set up a Polly buildbot tester and would like to add this to LLVM buildbots. We want to commit the buildbot scripts to the LLVM/zorg repository and include buildslave to buildbot.llvm.org Can any one help us to do this? Regards, -- Raghesh
2011 Mar 21
3
[LLVMdev] Contributing to Polly with GSOC 2011
Dear all, I am Raghesh, a student pursuing M.Tech at Indian Institute of Technology, Madras, India. I would like to make contribution to the Polly project (http://wiki.llvm.org/Polyhedral_optimization_framework) as part of GSOC 2011. I have gained some experience working in OpenMP Code generation for Polly. This is almost stable now and planning to test with the polybench benchmarks. Some of
2010 Dec 22
2
[LLVMdev] Generating target dependent function calls
Hi, raghesh and I are working in Polly on automatically generating OpenMP calls. This works nicely on a 64bit architecture, however the functions we need to generate are slightly different on different platforms. The reason for the difference is that e.g "long" in > bool GOMP_loop_runtime_next(long, long) has a different size on different architectures. Currently we generate
2011 Jun 10
2
[LLVMdev] Polly test and example
(2011/06/10 13:25), Tobias Grosser wrote: > On 06/10/2011 12:00 AM, MORIYAMA Tomohiro wrote: >> H, Tobias >> Thank you for your reply. >> >> >> Tobias Grosser wrote: >>> Interesting. On what kind of Platform are you running this? Is it still >>> Ubuntu 11.04? I assume it's an intel platform, but is it a 32-bit or >>> 64bit? >>
2017 Sep 04
2
llvm-dev Digest, Vol 159, Issue 2
Hal, Tobias, et al. – I am strongly in favor of seeing a broader range of loop transformations, supported by strong dependence analysis, added to LLVM, and the Polly infrastructure seems to be by far our best bet to make that happen. I have a couple of questions: 1) Integer constraint libraries like ISL (and Omega, which I used extensively in a previous project) are fundamentally solving
2011 Jun 10
4
[LLVMdev] Polly test and example
(2011/06/10 14:01), Tobias Grosser wrote: > On 06/10/2011 01:52 AM, MORIYAMA Tomohiro wrote: >> (2011/06/10 13:25), Tobias Grosser wrote: >>> On 06/10/2011 12:00 AM, MORIYAMA Tomohiro wrote: >>>> H, Tobias >>>> Thank you for your reply. >>>> >>>> >>>> Tobias Grosser wrote: >>>>> Interesting. On what kind
2011 Jun 10
0
[LLVMdev] Polly test and example
On 06/10/2011 01:52 AM, MORIYAMA Tomohiro wrote: > (2011/06/10 13:25), Tobias Grosser wrote: >> On 06/10/2011 12:00 AM, MORIYAMA Tomohiro wrote: >>> H, Tobias >>> Thank you for your reply. >>> >>> >>> Tobias Grosser wrote: >>>> Interesting. On what kind of Platform are you running this? Is it still >>>> Ubuntu 11.04? I
2013 Dec 13
0
[LLVMdev] GVNPRE /PRE is not effective
Hi All, The PRE or GVNPRE is not effective for the below use case. int sum; int phi =30; void f (int i, int *a) { if ((a[i] << (1)) > -15) sum =(phi+ 0x7fffffffL )/ a[i]; if ((a[i] << (2)) > -15) sum =(phi + 0x7fffffffL) /a[i]; } respective asm (clang on trunk ) #clang -O3 -S test.c BB#0: # %entry pushl %edi pushl %esi
2020 Nov 13
0
Question about LLVM region analysis
Hi, developers, Recently, I am trying to use the LLVM Region analysis, the LLVM version is 10. I use opt to print out the region analysis result using "opt -view-regions-only region.ll". However, I am confused about the result produced by LLVM, I found that LLVM seems to skip loop preheader when grouping blocks into regions. Here is a simple example code: ```region.c void split(int
2011 Mar 24
0
[LLVMdev] Contributing to Polly with GSOC 2011
hi raghesh, > > 5. Porting Polly to Various architectures. > ------------------------------------------------- > > Currently Polly generates everything as 64 bit integer, which is > problamatic for embedded platforms. > you may try something like this: http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-January/037277.html I am already planning to implement this, and it is
2010 Dec 22
0
[LLVMdev] Generating target dependent function calls
On Wed, Dec 22, 2010 at 01:38:06PM -0500, Tobias Grosser wrote: > Hi, > > raghesh and I are working in Polly on automatically generating OpenMP > calls. This works nicely on a 64bit architecture, > however the functions we need to generate are slightly different on > different platforms. > > The reason for the difference is that e.g "long" in > > >
2011 Dec 14
0
[LLVMdev] Help with hazards
The scoreboard hazard detector that I've added for the PPC 440 is not detecting hazards as it should (which certainly could be my fault somehow, but...). For example, it will produce a schedule that looks like... SU(28): 0x127969b0: f64,ch = LFD 0x12793aa0, 0x1277b4f0, 0x127965b0<Mem:LD8[%scevgep100](tbaa=!"double")> [ORD=41] [ID=28] SU(46): 0x12796ab0: f64 = FADD 0x127969b0,
2011 Jun 10
0
[LLVMdev] Polly test and example
Hi, > out.s: Assembler messages: > out.s:8: Error: bad register name `%rsp' > out.s:9: Error: bad register name `%rsp)' > out.s:12: Error: invalid instruction suffix for `call' > out.s:14: Error: bad register name `%rax' > out.s:18: Error: bad register name `%rcx' > out.s:22: Error: bad register name `%rcx)' > out.s:23: Error: bad register name
2011 Jun 10
2
[LLVMdev] Polly test and example
H, Tobias Thank you for your reply. Tobias Grosser wrote: (Thu, 09 Jun 2011 15:41:05 -0300) >On 06/08/2011 01:17 AM, MORIYAMA Tomohiro wrote: >> Hi, all >> >> I tried Polly installation on Ubuntu. >> >> On its building, it returned no errors. >> But when I run "make polly-test", it returns 11 unexpected failures as >> follows. >>
2011 Apr 03
3
[LLVMdev] [GSoC] Increase the coverage of Polly
Hi. My plan would be: 1w Study sources of Polly and LLVM docs relating to analysis. 2w Create tests which demonstrate problems with NSW/NUW 3-4w Fix the handling of wrap overflows. 5w Complete middle term paperwork. 6w Create tests for each of cases which are not currently optimized (e.g. have min/max, sext/zext, trunc or unsigned comparisons in the loop bounds or memory accesses). 7w Learn how