similar to: [LLVMdev] clang and static functions

Displaying 20 results from an estimated 1000 matches similar to: "[LLVMdev] clang and static functions"

2009 Dec 14
3
[LLVMdev] clang and static functions
Hi, Sorry for not being specific. I just wanted to know if there is any way at all to force clang to generate intermediate code for static functions when they are not being called anywhere inside the current module. Other compilers seem to generate intermediate code (lcc, for instance). Thanks for your reply..Olivier. Sincerely Arvind On Mon, Dec 14, 2009 at 1:10 PM, Olivier Meurant
2009 Dec 14
0
[LLVMdev] clang and static functions
Ah ok. Sorry. :) I think that argument "-femit-all-decls" will help you. Olivier. On Mon, Dec 14, 2009 at 9:18 PM, Arvind Sudarsanam < arvind.sudarsanam at aggiemail.usu.edu> wrote: > Hi, > > Sorry for not being specific. I just wanted to know if there is any > way at all to force clang to generate intermediate code for static > functions when they are not being
2009 Dec 14
0
[LLVMdev] clang and static functions
Hi Arvind, you need to use it effectively : static int add(int a, int b) { return a+b; } int use() { return add(4,5); } ==> ; ModuleID = '<stdin>' target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:32:32" target triple = "i386-pc-linux-gnu" define i32 @use()
2010 Jul 15
2
[LLVMdev] Trying to access the user defined variable name
Hi Devang, Thanks for your reply. You mentioned " First parameter is the compiler generated temp. and 3rd parameter provides info about the variable, including its name 'u'." I did manage to get this far. But, I am finding it difficult to access this info using LLVM APIs. The third parameter is of type "metadata". So I was able to access it by casting it to MDNode.
2010 Jul 15
0
[LLVMdev] Trying to access the user defined variable name
On Thu, Jul 15, 2010 at 1:19 PM, Arvind Sudarsanam <arvind.sudarsanam at aggiemail.usu.edu> wrote: > Hi Devang, > > Thanks for your reply. You mentioned > " First parameter is the compiler generated temp. and 3rd parameter > provides info about the variable, including its name 'u'." > > I did manage to get this far. But, I am finding it difficult to
2010 Jul 14
2
[LLVMdev] Trying to access the user defined variable name
Dear all, I have the following source code: long f(long x, long y) { long u; u = x+y; return u; }; After clang (with debug option set) and llvm opt using mem2reg, I get the following .ll file *************************************************************************** ; ModuleID = '<stdin>' target datalayout =
2010 Jul 15
0
[LLVMdev] Trying to access the user defined variable name
On Wed, Jul 14, 2010 at 3:03 PM, Arvind Sudarsanam <arvind.sudarsanam at aggiemail.usu.edu> wrote: > Dear all, > > I have the following source code: > > long f(long x, long y) > { >        long u; > >   u = x+y; >   return u; > }; > > After clang (with debug option set) and llvm opt using mem2reg, I get > the following .ll file >
2009 Dec 04
2
[LLVMdev] regarding getelementptr
Hi, I have been working towards generating my own IR code from llvm IR. I have hit a stumbling block with respect to "getelementptr" used inside another llvm instruction. Example: %arrayidx = getelementptr inbounds i32* getelementptr inbounds ([10 x i32]* @k, i32 0, i32 0), i32 %tmp2 ; <i32*> [#uses=1] I am unable to get a handle on the second "getelementptr" in this
2009 Dec 04
0
[LLVMdev] regarding getelementptr
Hi Arvind, > I have been working towards generating my own IR code from llvm IR. I > have hit a stumbling block with respect to "getelementptr" used inside > another llvm instruction. > > Example: %arrayidx = getelementptr inbounds i32* getelementptr > inbounds ([10 x i32]* @k, i32 0, i32 0), i32 %tmp2 ; <i32*> [#uses=1] > > I am unable to get a handle on
2010 Mar 25
4
[LLVMdev] source code information in LLVM IR
Hi, I am generating llvm IR code for C source code using clang as the front end. I am wondering if there is any way of mapping an llvm IR line number back to its C source code line number. Thanks Sincerely Arvind -- Arvind Sudarsanam Utah State University Phone: (435) 512-7769 E-mail: theonemorpheus at gmail.com Web-site: http://cc.usu.edu/~asudarsanam
2009 Dec 04
2
[LLVMdev] regarding getelementptr
Hi, I got the "getelementptr" issue solved...John Criswell helped me...Thanks, Duncan, for your reply. I have another query though. When I try to pass a structure into a function in my C program, if there are less than four scalars in the structure, the clang tool creates llvm code where the structure is passed as sequence of scalars. If there are more than (or equal to) four scalars,
2010 Jul 01
2
[LLVMdev] Qualitative comparisons between Open64 and llvm
Hi, I have been working towards developing compiler optimization tools targeting multi core processors while using LLVM IR as the starting point and building on top of the analysis and optimization passes available in the llvm source. Recently, I looked into Open64 and its intermediate representation WHIRL. Documentation for developers to use Open64 seems to be inadequate (when compared to LLVM
2010 Oct 14
5
R on a ma c
Hello, Is R very compatible with a Mac? A colleague of mine indicated that everyone he knows with a Mac has problems with R. What can you tell me about using R with a Mac. What do I need to download? I have downloaded the basic R package. Thanks, -- Tiffany Kinder MS Student Department of Watershed Science Utah State University tiffany.kinder@aggiemail.usu.edu [[alternative HTML version
2010 Jul 02
0
[LLVMdev] Qualitative comparisons between Open64 and llvm
Hi, Arvind Sudarsanam: I know some of Open64. Above all, Open64 is designed for a high performance compiler. It is now supported by AMD, HP, ICT Chinese Academy of Science, etc. and has been ported to X86, Itanium, Loongson CPU etc. And to your questions 1, Open64 already have some main optimization phases, Inline for aggressive inline opt. LNO for loop opt, WOPT for machine independent opt(
2010 Mar 30
1
[LLVMdev] Operand, instruction
Can you tell how to use vector globally? I mean, i am able to add entries to a vector in a basicblock, but whenever a basicblock function call is returned, the vector becomes empty. So how to use data structures globally? And one thing, where is main ( or same kind of) function in llvm? Thanks for you reply. Duncan Sands wrote: > > Hi, > >> Actually i have to implement strength
2010 Mar 25
1
[LLVMdev] source code information in LLVM IR
Hi, I am generating llvm IR code for C source code using clang as the front end. I am wondering if there is any way of mapping an llvm IR line number back to its C source code line number. Thanks Sincerely Arvind ------------------------------------------------------------------------ ------------ Arvind Sudarsanam Phone: (435) 512-7769 CPU Technology, Inc
2009 Nov 21
2
how to ignore NA when using cumsum?
I would like to cumulatively sum rows in a matrix, in which each row has 1 NA value. The usual "na.rm=TRUE" does not seem to work with the command cumsum. Is there another way to ignore the NAs or do I need to figure out a different way to do this? Here's an example matrix of title "proportion": Ntrail Strail NFJD Baldy Onion Crane [1,]
2010 Jun 18
1
[LLVMdev] argpromotion not working
Hi all, I have the following C code. static int addp(int *c, int a,int b) { int x = *c + a + b; return(x); } I want to replace *c with a scalar. So I tried the -argpromotion pass. However, it fails to do anything to the resulting llvm file. List of commands: clang add.c -c -o add.bc clang add.c -S -o add.ll opt -argpromotion -stats add.bc -o add_a.bc llvm-dis < add_a.bc > add_a.ll Also,
2008 Apr 18
1
configure can't find dgemm in MKL10
Hi, I'm trying to follow the R-admin instructions for using MKL10 as the external BLAS compiling R-2.6.2 under Linux on a RH EL head node of a cluster. The configure process seems to have problems when it checks for dgemm in the BLAS. I'm using configure as: ./configure CC=icc F77=ifort --with-lapack="$MKL" --with-blas="$MKL" where $MKL is defined as in R-admin
2017 Jan 07
2
accelerating matrix multiply
I am using R to multiply some large (30k x 30k double) matrices on a 64 core machine (xeon phi). I added some timers to src/main/array.c to see where the time is going. All of the time is being spent in the matprod function, most of that time is spent in dgemm. 15 seconds is in matprod in some code that is checking if there are NaNs. > system.time (C <- B %*% A) nancheck: wall time