similar to: [LLVMdev] Removing inlining of library functions

Displaying 20 results from an estimated 10000 matches similar to: "[LLVMdev] Removing inlining of library functions"

2008 Feb 22
2
[LLVMdev] Removing inlining of library functions
On Thu, 21 Feb 2008, Dale Johannesen wrote: > The defined gcc interface for this is -fno-builtin. It seems not be > to be working in llvm-gcc, however. Please file a reduced testcase in bugzilla, -Chris > >> I am interested in analyzing the bytecode code produced for C files. >> By default, inlining of user and library functions (libc) is done. If >> I turn off
2008 Feb 21
0
[LLVMdev] Removing inlining of library functions
The defined gcc interface for this is -fno-builtin. It seems not be to be working in llvm-gcc, however. On Feb 20, 2008, at 6:55 PM, Cristina Cifuentes wrote: > I am interested in analyzing the bytecode code produced for C files. > By default, inlining of user and library functions (libc) is done. If > I turn off inlining (-disable-inlining in gccas and gccld) then no > inlining
2008 Feb 22
0
[LLVMdev] Removing inlining of library functions
On Feb 21, 2008, at 5:38 PM, Chris Lattner wrote: > On Thu, 21 Feb 2008, Dale Johannesen wrote: >> The defined gcc interface for this is -fno-builtin. It seems not be >> to be working in llvm-gcc, however. > > Please file a reduced testcase in bugzilla, > > -Chris Er, well, now that I've looked at the correct output files, it is actually working. >>> I
2008 Feb 21
0
[LLVMdev] Removing inlining of library functions
On Feb 20, 2008, at 6:55 PM, Cristina Cifuentes wrote: > - in what part of the code tree is the internal linkage attribute > being set for library functions? Internalize pass (Transforms/IPO/Internalize.cpp) sets internal linkage if the function is not in export list. If you're using 'llvm- ld' try -disable-internalize. - Devang
2005 Jul 11
2
[LLVMdev] Does the gcc frontend do inlining or deadcode elimination ?
This didn't work as I tried with 197.parser. it works without "-Wl,-disable-opt" switch though. [197.parser]$ llvm-gcc analyze-linkage.c and.c build-disjuncts.c extract-links.c fast-match.c idiom.c main.c massage.c parse.c post-process.c print.c prune.c read-dict.c utilities.c xalloc.c word-file.c strncasecmp.c -Wa,-disable-opt -Wl,-disable-opt -lm -o llvm_parser [197.parser]$
2005 Jul 07
3
[LLVMdev] Does the gcc frontend do inlining or deadcode elimination ?
I am investigating some inlining issue, so I did llvm-gcc aaa.c bbb.c ... nnn.c -o output opt -inline -inline-threshold=xxx < output.bc | llc -march=c > output_inline.c 1) I noticed that even if I set xxx to 0 or even a very small negative number, many functions are eliminated. I am wondering if these functions are inlined by the frontend, or identified as deadcode. For instance,
2005 Jul 12
0
[LLVMdev] Does the gcc frontend do inlining or deadcode elimination ?
On Mon, 11 Jul 2005, Long Fei wrote: > > This didn't work as I tried with 197.parser. it works without > "-Wl,-disable-opt" switch though. > > [197.parser]$ llvm-gcc analyze-linkage.c and.c build-disjuncts.c > extract-links.c fast-match.c idiom.c main.c massage.c parse.c post-process.c > print.c prune.c read-dict.c utilities.c xalloc.c word-file.c
2005 Jul 07
0
[LLVMdev] Does the gcc frontend do inlining or deadcode elimination ?
Long Fei wrote: > > I am investigating some inlining issue, so I did > > llvm-gcc aaa.c bbb.c ... nnn.c -o output > opt -inline -inline-threshold=xxx < output.bc | llc -march=c > > output_inline.c I am unsure of whether the LLVM GCC frontend does any inlining. However, I do know that your methods above run the LLVM inlining pass, albeit indirectly. If you use
2005 Jul 04
2
[LLVMdev] function inlining threshold ?
I am using llvm for source-to-source inlining. So I did: % llvm-gcc file_a.c file_b.c ... file_n.c -o file % opt -inline -inline-threshold=1000 < file.bc | llc -march=c > outfile.c Can anyone tell me how llvm determines if a function should be inlined, and what roll does "inline-threshold" play ? (Does the example mean that if the function body has fewer than 1000 instructions,
2008 May 15
1
[LLVMdev] Solaris port to be contributed by Sun Labs
We are using LLVM for our bug-checking project, Parfait, and we'll be contributing the Solaris port within the next month. Regards, Cristina -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20080515/9030c4aa/attachment.html>
2011 Oct 20
3
[LLVMdev] Inlining functions
Dear LLVMers, I am trying to use your inline pass, and I would like to know if it is possible to remove a function from the bitcode file once it is inlined. Basically, I try: $> opt -inline file2.bc > file2.in.bc and I see that all the functions have been inlined into the main procedure, inside file2.in.bc. However, the inlined function is still in the bitcode, even though it is
2010 Oct 24
4
[LLVMdev] Inlining in LLVM
Duncan: I am only superficially familiar with LLVM structure. What I am trying to find out is if functions that have a single invocation are still found in the code during the compilation. In Open64 and other compilers, there is an early inlining pass that inlines all procedures that have a single invocation site. The reasoning is that if there is a single call to a procedure, then there is not
2005 Jul 05
0
[LLVMdev] function inlining threshold ?
On Mon, Jul 04, 2005 at 03:32:39PM -0500, Long Fei wrote: > I am using llvm for source-to-source inlining. So I did: > > % llvm-gcc file_a.c file_b.c ... file_n.c -o file > % opt -inline -inline-threshold=1000 < file.bc | llc -march=c > outfile.c > > Can anyone tell me how llvm determines if a function should be > inlined, and what roll does
2010 Jan 13
2
[LLVMdev] Cross-module function inlining
On 13 Jan 2010, at 20:34, Nick Lewycky wrote: > On 13 January 2010 12:05, Mark Muir <mark.i.r.muir at gmail.com> wrote: > > But... now there's a small problem with library calls. Symbols such as 'memset', 'malloc', etc. are being removed by global dead code elimination. They are implemented in one of the bitcode modules that are linked together (implementations
2010 Jan 13
2
[LLVMdev] Cross-module function inlining
On 13 Jan 2010, at 16:43, Nick Lewycky wrote: > Mark Muir wrote: >> - Run the existing Clang tool on each source file, using -emit-llvm to generate a .bc file for each module. >> - Run llvm-link to merge them into a single .bc file. >> - Run llc to generate a complete machine assembly. >> >> However, with optimisations enabled, the resulting code is not as
2006 Mar 06
2
[LLVMdev] Selectively Disable Inlining for Functions
Dear All, I was wondering if there is a standard way of specifying a list of functions that *should not* be inlined by the -inline pass. I'm currently working with an experimental analysis pass that checks for calls to memory allocation functions; inlining and dead code elimination might make the pass more stable, but we don't want to inline the calls to the memory allocation
2010 Jul 27
2
[LLVMdev] inline callsites whose function definitions are in different file?
LLVM (2.7 release version) provides 2 implementations for inlining function callsites: - InlineSimple.cpp (-inline): inline simple callsites according to its cost analysis - InlineAlways.cpp (-always-inline): inline all callsites that are marked with "always_inline" attribute. They are both subclasses of Inline.cpp that assumes the function's definition (body) is
2006 Mar 06
0
[LLVMdev] Selectively Disable Inlining for Functions
On Mon, 6 Mar 2006, John Criswell wrote: > I was wondering if there is a standard way of specifying a list of functions > that *should not* be inlined by the -inline pass. Nope, but you could hack something into gccas/gccld if you want. Of course, you can disable inlining completely with the -disable-inlining flag. > I'm currently working with an experimental analysis pass that
2008 Feb 21
0
[LLVMdev] Removing inlining of library functions
Try adding the gcc 'noinline' attribute to functions you don't want inlined (see the gcc docs for details). Ciao, Duncan.
2010 Jan 13
0
[LLVMdev] Cross-module function inlining
On 13 January 2010 12:05, Mark Muir <mark.i.r.muir at gmail.com> wrote: > On 13 Jan 2010, at 16:43, Nick Lewycky wrote: > > > Mark Muir wrote: > >> - Run the existing Clang tool on each source file, using -emit-llvm to > generate a .bc file for each module. > >> - Run llvm-link to merge them into a single .bc file. > >> - Run llc to generate a