search for: thegreenplace

Displaying 20 results from an estimated 28 matches for "thegreenplace".

2013 Nov 06
2
[LLVMdev] "-relocation-model=static" does not work in llc compiler ?
> If you also give "-code-model=large" then LLVM won't assume that > "addr" is nearby so it'll use a movabsq with a static relocation. Actually, it seems our own Eli has written rather a good description of these code models: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models/. Well worth the read (the default models he talks about at the top are essentially "static"). Cheers. Tim.
2013 Nov 06
0
[LLVMdev] "-relocation-model=static" does not work in llc compiler ?
...>> If you also give "-code-model=large" then LLVM won't assume that >> "addr" is nearby so it'll use a movabsq with a static relocation. > > Actually, it seems our own Eli has written rather a good description > of these code models: > http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models/. > > Well worth the read (the default models he talks about at the top are > essentially "static"). > > Cheers. > > Tim.
2015 Mar 05
2
[LLVMdev] Use the IR information to modify the AST
Hi,guys: I am try to get some information from the IR, such as Function type, Function arguments, I want to save then to the data structure which defined by myself, and I want use the data structure to modify the AST. But I know ,the IR was produced by the AST, I am not sure my thought is wright or not. If so, with API or function in the LLVM I will used? or some linkage or demo that I can learn
2015 May 14
5
[LLVMdev] Generating C code using LLVM
Hi, I am trying to use LLVM to generate C (partly, Intel AVX) code to test some abstractions. Apparently, most of the documentation is related to generating LLVM-IR. Are there any tools to do this? (I have generated AST from these abstractions. I want to generate C code from it). Thank you! :) PS: If this is a wrong mailinglist, help me with the right one. -- Regards, *Aditya Atluri,* *USA.*
2016 May 29
0
[cfe-dev] How to debug if LTO generate wrong code?
...he addresses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models) to show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto....
2016 May 29
4
[cfe-dev] How to debug if LTO generate wrong code?
...ses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. > > Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models <http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models>) to show the LLVM LTO code model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codem...
2013 Sep 24
0
[LLVMdev] request for tutorial
...ted documentation that I know about/have bookmarked in the past. Hopefully there's something useful in there.) If you haven't stumbled across them already, these might be helpful: http://llvm.org/devmtg/2009-10/Korobeynikov_BackendTutorial.pdf http://jonathan2251.github.io/lbd/ http://eli.thegreenplace.net/2013/02/25/a-deeper-look-into-the-llvm-code-generator-part-1/ http://eli.thegreenplace.net/2012/11/24/life-of-an-instruction-in-llvm/ Another good source of documentation is simply to look at the commits that introduce new backends, e.g. the initial commits for SystemZ and AArch64 come to mind...
2013 Sep 24
3
[LLVMdev] request for tutorial
When I registered for dev conference, there was a field asking what I was particularly interested in learning. I didn't fill it out then , but it occurs to me now that I'd really enjoy a tutorial on how to develop a new back end. I spent some time recently reviewing existing material (documentation and code) and not making a lot of progress. Indeed, under some time pressure, I'm
2016 May 17
2
[cfe-dev] How to debug if LTO generate wrong code?
> On May 17, 2016, at 11:21 AM, Umesh Kalappa <umesh.kalappa0 at gmail.com> wrote: > > Steven, > > As mehdi stated , the optimisation level is specific to linker and it > enables Inter-Pro opts passes ,please refer function To be very clear: the -O option may trigger *linker* optimizations as well, independently of LTO. -- Mehdi > >
2016 May 30
2
[cfe-dev] How to debug if LTO generate wrong code?
...ses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. > > Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models <http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models>) to show the LLVM LTO code model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codem...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...the addresses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models) to show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin...
2015 Feb 02
2
[LLVMdev] LLVM Weekly - #57, Feb 2nd 2015
...://speakerdeck.com/asb/lowrisc-the-path-to-an-open-source-soc). If you want to chat about the project, you may want to join #lowRISC on irc.oftc.net. ## News and articles from around the web Eli Bendersky has written a useful [introduction to using the llvmlite Python to LLVM binding](http://eli.thegreenplace.net/2015/building-and-using-llvmlite-a-basic-example/), which was borne out of the Numba project. LLVM/Clang 3.6-rc2 [has been tagged](http://article.gmane.org/gmane.comp.compilers.llvm.devel/81600) and is ready for testing. The next LLVM bay-area social is taking place [on Feb 5th at 7pm](http:/...
2013 Oct 28
1
[LLVMdev] Is there any tutorial about using Clang to find all the basic control block?
I want to use Clang to do a *source to source transformation* of cpp code, I have achieve certain goals like this tutorial<http://eli.thegreenplace.net/2012/06/08/basic-source-to-source-transformation-with-clang/> and currently I am trying to assign a unique ID to each basic control block. Could anybody give me some help about how to find the basic control block? Be more specified, I think the CFG<http://clang.llvm.org/docs/InternalsMa...
2013 Nov 06
2
[LLVMdev] "-relocation-model=static" does not work in llc compiler ?
Hi LLVM, When I compile code using llc with options " -relocation-model=static", the generated code still has relative addressing using *rip* frame pointer. May I know how to get rid of frame pointer and totally using absolute addressing ? E.g. callq *addr(%rip). Here *addr* is a global variable, and I want the global address shows up here, instead of relative addressing.
2013 Nov 06
0
[LLVMdev] "-relocation-model=static" does not work in llc compiler ?
Hi Pengcheng, > When I compile code using llc with options " -relocation-model=static", the generated code still has > relative addressing using *rip* frame pointer. May I know how to get rid of frame pointer and totally > using absolute addressing ? > > E.g. > callq *addr(%rip). > Here *addr* is a global variable, and I want the global address shows up here,
2013 Nov 06
1
[LLVMdev] "-relocation-model=static" does not work in llc compiler ?
...give "-code-model=large" then LLVM won't assume that >>> "addr" is nearby so it'll use a movabsq with a static relocation. >> >> Actually, it seems our own Eli has written rather a good description >> of these code models: >> http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models/. >> >> Well worth the read (the default models he talks about at the top are >> essentially "static"). >> >> Cheers. >> >> Tim. >
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...the addresses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models) to show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin...
2019 Nov 27
2
Writing a Pass in LLVM MC (Machine Code) level to Analyze Assembly Code
Hi All, A self-follow up and rephrase of my previous question with updated subject: What I want to do is to analyze hand-written assembly code with 'full details' where semantics of each instruction can be known in LLVM passes. Many of such instructions have no corresponding counterparts in IR/MIR forms, such as 'syscall' 'iret', etc. At MC level, such assembly code can
2016 May 30
7
[cfe-dev] How to debug if LTO generate wrong code?
...ses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. > > Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models <http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models>) to show the LLVM LTO code model issue. > $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin > $ clang -g -O0 codemodel1.c -mcmodel=small -o codem...
2016 May 30
0
[cfe-dev] How to debug if LTO generate wrong code?
...the addresses and data sections. But current LLVM LTO seems stick to use the small code model and generate many code with 32-bit RIP-relative addressing, which cause CPU exceptions when run in address larger than 2GB. Below, I just simply reuse the Eli's codemodel1.c example (link: http://eli.thegreenplace.net/2012/01/03/understanding-the-x64-code-models) to show the LLVM LTO code model issue. $ clang -g -O0 codemodel1.c -mcmodel=large -o codemodel1_large.bin $ clang -g -O0 codemodel1.c -mcmodel=small -o codemodel1_small.bin $ clang -g -O0 -flto codemodel1.c -mcmodel=large -o codemodel1_large_lto.bin...