similar to: Finding the entry point function in a LLVM IR

Displaying 20 results from an estimated 3000 matches similar to: "Finding the entry point function in a LLVM IR"

2017 Oct 23
2
Finding the entry point function in a LLVM IR
If you want to know which functions are (or may be) called from where, in the entire program, then you will need to do some sort of "LLVM-IR Linking" (there are tools that will do that for you, such as "llvm-link"). Of course, even then, there's possible cases where it's impossible to know whether a function is ACTUALLY called until at runtime - function pointers,
2017 Oct 25
1
Finding the entry point function in a LLVM IR
Thank You David and Mats for the reply, The reason I need to know that main is the entry point is as follows : I have a dead code elimination pass that removes the function call for boo. boo was initially called from the main function , but since the return in the main function has no dependency on boo, boo function call is removed. Now I want to remove the function definition of the functions
2005 Jan 14
1
S3/S4 classes performance comparison
Hi R-devel, If you did read my survey on Rhelp about reporting, you may have seen that I am implementing a way to handle outputs for R (mainly target output destinations: xHTML and TeX). In fact: I does have something that works for basic objects, entirely done with S4 classes, with the results visible at: http://www.stat.ucl.ac.be/ROMA/sample.htm http://www.stat.ucl.ac.be/ROMA/sample.pdf To
2013 Oct 30
2
[LLVMdev] loop vectorizer
The loop vectorizer seems to be not able to vectorize the following code: void bar(std::uint64_t start, std::uint64_t end, float * __restrict__ c, float * __restrict__ a, float * __restrict__ b) { const std::uint64_t inner = 4; for (std::uint64_t i = start ; i < end ; ++i ) { const std::uint64_t ir0 = ( (i/inner) * 2 + 0 ) * inner + i%4; const std::uint64_t ir1 = ( (i/inner)
2013 Oct 30
0
[LLVMdev] loop vectorizer
Hi Frank, The access pattern to arrays a and b is non-linear. Unrolled loops are usually handled by the SLP-vectorizer. Are ir0 and ir1 consecutive for all values for i ? Thanks, Nadav On Oct 30, 2013, at 9:05 AM, Frank Winter <fwinter at jlab.org> wrote: > The loop vectorizer seems to be not able to vectorize the following code: > > void bar(std::uint64_t start,
2013 Oct 30
0
[LLVMdev] loop vectorizer
Well, they are not directly consecutive. They are consecutive with a constant offset or stride: ir1 = ir0 + 4 If I rewrite the function in this form void bar(std::uint64_t start, std::uint64_t end, float * __restrict__ c, float * __restrict__ a, float * __restrict__ b) { const std::uint64_t inner = 4; for (std::uint64_t i = start ; i < end ; ++i ) { const std::uint64_t ir0 = (
2011 Jun 19
0
[LLVMdev] No Signed Wrap
Hi Pranav, > I am not able to understand the No Signed Wrap property. My problem is in the > Instruction combiner which combines two operations - > add1 = add 'nsw' x 5 > add2 = add 'nsw' add1 1 > into > add2 = add x 6. // No 'nsw' property in the combined operation. > > From the comments in the Instruction Combiner I can see that the nsw flag /
2013 Oct 30
0
[LLVMdev] loop vectorizer
The SLP vectorizer apparently did something in the prologue of the function (where storing of arguments on the stack happens) which then got eliminated later on (since I don't see any vector instructions in the final IR). Below the debug output of the SLP pass: Args: opt -O1 -vectorize-slp -debug loop.ll -S SLP: Analyzing blocks in _Z3barmmPfS_S_. SLP: Found 2 stores to vectorize. SLP:
2013 Oct 30
2
[LLVMdev] loop vectorizer
The debug messages are misleading. They should read “trying to vectorize a list of …”; The problem is that the SCEV analysis is unable to detect that C[ir0] and C[ir1] are consecutive. Is this loop from an important benchmark ? Thanks, Nadav On Oct 30, 2013, at 11:13 AM, Frank Winter <fwinter at jlab.org> wrote: > The SLP vectorizer apparently did something in the prologue of the
2011 Jun 19
1
[LLVMdev] No Signed Wrap
On 19 June 2011 15:46, Duncan Sands <baldrick at free.fr> wrote: >> I am not able to understand the No Signed Wrap property. My problem is in the >> Instruction combiner which combines two operations - >> add1 = add 'nsw' x 5 >> add2 = add 'nsw' add1 1 >> into >> add2 = add x 6.  // No 'nsw' property in the combined operation.
2007 Feb 24
8
Solaris Patch Management
Has anyone used Puppet to manage Solaris Patches? If so could you pass on any tips. For those without Solaris experience, you can only describe the configuration of a Solaris system with the full combination of Installed Packages Installed Patches Applied Configuration
2018 Mar 02
5
[PATCH 0/5] Various MIPS fixes
Hi, I noticed that klibc started crashing on 64-bit MIPS and in my quest to fix the bug I got a bit carried away and fixed a few other things as well. Here are various miscellaneous MIPS patches, although the first patch is the important one. Thanks, James *** BLURB HERE *** James Cowgill (5): mips64: compile with -mno-abicalls mips: use -Ttext-segment when linking shared library
2013 Oct 30
0
[LLVMdev] loop vectorizer
I ran the BB vectorizer as I guess this is the SLP vectorizer. BBV: using target information BBV: fusing loop #1 for for.body in _Z3barmmPfS_S_... BBV: found 2 instructions with candidate pairs BBV: found 0 pair connections. BBV: done! However, this was run on the unrolled loop (I guess). Here is the IR printed by 'opt': entry: %cmp9 = icmp ult i64 %start, %end br i1 %cmp9, label
2017 Aug 07
2
vrp
Hello, I am trying to figure out, what vrp propagation does in llvm. I tried this program: #include <stdio.h> int main() { int s = 0; int j = 0; for (int i = 0; i < 100; i++) { j = j+i+1; s+=j; } return (s+j); } And got this under optimized version ( I don't want everything to be eliminated) define i32 @main()
2019 Mar 03
2
Unknown Target Node
Hi, Could you please explain how you are using this? like commands When I run this IR in opt, it doesn't throw any errors. On 03/03/19 1:30 AM, via llvm-dev wrote: > Hi, > > I'm having an error I've never seen before > > LLVM ERROR: Cannot select: t20: ch,glue = <<Unknown Target Node #284>> t11, TargetGlobalAddress:i32<i32 (i32, i32)* @add2> 0,
2011 Jun 19
2
[LLVMdev] No Signed Wrap
Hi, I am not able to understand the No Signed Wrap property. My problem is in the Instruction combiner which combines two operations - add1 = add 'nsw' x 5 add2 = add 'nsw' add1 1 into add2 = add x 6. // No 'nsw' property in the combined operation. >From the comments in the Instruction Combiner I can see that the nsw flag / property is "conservatively
2017 Aug 07
2
vrp
On Mon, Aug 7, 2017 at 2:14 AM, Anastasiya Ruzhanskaya via llvm-dev <llvm-dev at lists.llvm.org> wrote: > I am trying to print it like this (maybe here is smth wrong?) > > > LazyValueInfo &LV = getAnalysis<LazyValueInfoWrapperPass>().getLVI(); > DominatorTree &DT = > getAnalysis<DominatorTreeWrapperPass>().getDomTree(); > LV.printLVI(F,
2010 Feb 27
5
Python Script Issue
Hey Guys, I am trying to get a python script running but I get the following error: atexit.register(atexit_handler) NameError: global name 'atexit' is not defined A Google search doesn't really help me, except confirm that I don't know anything about python:) Anyone got any ideas? Thanks, jlc
2017 Jun 23
2
sieve vacation message if ....
On Fri, 23 Jun 2017 14:46:21 +0200, Stephan Bosch stated: >Op 21-6-2017 om 19:16 schreef lejeczek: >> hi fellas >> >> generic construct for(if possible): reply vacation message if >> address is not from add1 at com1 add2 at com2 >> >> would you share? > >require "vacation"; > >if not address "from" ["add1 at com1",
2002 Apr 23
16
[Bug 194] still problems with libutil
http://bugzilla.mindrot.org/show_bug.cgi?id=194 ------- Additional Comments From djm at mindrot.org 2002-04-23 23:29 ------- This should be fixed in -current CVS, please test ------- You are receiving this mail because: ------- You are the assignee for the bug, or are watching the assignee.