Thank you Chris. Actually, I have changed the stack organization in the "llc" source codes for x86 target. Thus, I need libraries compiled with the new stack organization. If I use llvm-gcc (and apparently also llvmc), llc will not be invoked. I was hoping that llvmc would call llvm-gcc to compile to bc file and then call llc to compile to native assembly, but apparently this doesn't happen. Do you know of any possible ways to involve llc in compilation of libraries? --Babak On May 8, 2007, at 11:33 PM, Chris Lattner wrote:> On Tue, 8 May 2007, Babak Salamat wrote: >> Yes, I have built and installed llvm-gcc and "llvm-gcc --print-prog- >> name=cc1" return the correct path for cc1, so I assume its path is >> set correctly in the config files, but I haven't installed config >> files separately. Do I need to do that? Is there any documentation >> about it? > > I'd strongly suggest just building with CC=llvm-gcc CXX=llvm-g++. > > llvmc is extremely experimental and has not seen wide use. > > -Chris > >> On May 8, 2007, at 7:33 PM, Reid Spencer wrote: >> >>> Babak, >>> >>> As its manual page (http://llvm.org/docs/CommandGuide/html/ >>> llvmc.html) >>> states, llvmc is an experimental tool: >>> >>> llvmc is considered an experimental LLVM tool because it has these >>> deficiencies: >>> >>> Poor configuration support >>> The support for configuring new languages, etc. is weak. >>> There >>> are many command line configurations that cannot be achieved >>> with the current support. Furthermore the grammar is >>> cumbersome >>> for configuration files. Please see http://llvm.org/PR686 >>> for >>> further details. >>> >>> That said, you should be able to get it to work with llvm-gcc. >>> >>> Did you build llvm-gcc? Did you check the paths in the "c" config >>> file? >>> Did you install the config files? >>> >>> All of these things need to be done in order for the standard config >>> file to work. >>> >>> Reid. >>> >>> On Tue, 2007-05-08 at 18:40 -0700, Babak Salamat wrote: >>>> Hi, >>>> >>>> I am trying to compile glibc on Linux using llvm. I need to do this >>>> for a research project. >>>> The problem is that llvmc doesn't work, and I guess I have to set >>>> CC=llvmc to get the glic compiled. For some reason llvmc complains >>>> that it cannot find %llvmcc1%. I have this problem both on my >>>> Mac and >>>> my Linux system. Other tools that I have tested including llvm-gcc >>>> work without any problem. >>>> First, I appreciate it if you let me know what can cause this >>>> problem >>>> and second, tell me if you think I have any chance to compile glibc >>>> using LLVM. >>>> >>>> Thank you, >>>> Babak >>>> >>>> --------------------------------------------------------------- >>>> Babak Salamat >>>> PhD Student >>>> Department of Computer Science >>>> School of Information and Computer Sciences >>>> University of California, Irvine >>>> email: bsalamat at uci.edu >>>> web: www.ics.uci.edu/~bsalamat >>>> --------------------------------------------------------------- >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>> >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> > > -Chris > > -- > http://nondot.org/sabre/ > http://llvm.org/ > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
Babak, I strongly suggest you drop trying to use llvmc. Instead, probably just compiling your library with llvm-gcc should be sufficient. The llvm-gcc tool has much of llc's functionality built in to it so you're going to get the same output. If that doesn't work for you, then please describe what you're trying to do in more detail and we'll tell you how it can be done. Coming at it from the "llvmc doesn't work" angle, doesn't help us solve your actual problem (because we don't know what it is). Thanks, Reid. On Wed, 2007-05-09 at 00:08 -0700, Babak Salamat wrote:> Thank you Chris. > > Actually, I have changed the stack organization in the "llc" source > codes for x86 target. Thus, I need libraries compiled with the new > stack organization. If I use llvm-gcc (and apparently also llvmc), > llc will not be invoked. I was hoping that llvmc would call llvm-gcc > to compile to bc file and then call llc to compile to native > assembly, but apparently this doesn't happen. > Do you know of any possible ways to involve llc in compilation of > libraries? > > --Babak > > On May 8, 2007, at 11:33 PM, Chris Lattner wrote: > > > On Tue, 8 May 2007, Babak Salamat wrote: > >> Yes, I have built and installed llvm-gcc and "llvm-gcc --print-prog- > >> name=cc1" return the correct path for cc1, so I assume its path is > >> set correctly in the config files, but I haven't installed config > >> files separately. Do I need to do that? Is there any documentation > >> about it? > > > > I'd strongly suggest just building with CC=llvm-gcc CXX=llvm-g++. > > > > llvmc is extremely experimental and has not seen wide use. > > > > -Chris > > > >> On May 8, 2007, at 7:33 PM, Reid Spencer wrote: > >> > >>> Babak, > >>> > >>> As its manual page (http://llvm.org/docs/CommandGuide/html/ > >>> llvmc.html) > >>> states, llvmc is an experimental tool: > >>> > >>> llvmc is considered an experimental LLVM tool because it has these > >>> deficiencies: > >>> > >>> Poor configuration support > >>> The support for configuring new languages, etc. is weak. > >>> There > >>> are many command line configurations that cannot be achieved > >>> with the current support. Furthermore the grammar is > >>> cumbersome > >>> for configuration files. Please see http://llvm.org/PR686 > >>> for > >>> further details. > >>> > >>> That said, you should be able to get it to work with llvm-gcc. > >>> > >>> Did you build llvm-gcc? Did you check the paths in the "c" config > >>> file? > >>> Did you install the config files? > >>> > >>> All of these things need to be done in order for the standard config > >>> file to work. > >>> > >>> Reid. > >>> > >>> On Tue, 2007-05-08 at 18:40 -0700, Babak Salamat wrote: > >>>> Hi, > >>>> > >>>> I am trying to compile glibc on Linux using llvm. I need to do this > >>>> for a research project. > >>>> The problem is that llvmc doesn't work, and I guess I have to set > >>>> CC=llvmc to get the glic compiled. For some reason llvmc complains > >>>> that it cannot find %llvmcc1%. I have this problem both on my > >>>> Mac and > >>>> my Linux system. Other tools that I have tested including llvm-gcc > >>>> work without any problem. > >>>> First, I appreciate it if you let me know what can cause this > >>>> problem > >>>> and second, tell me if you think I have any chance to compile glibc > >>>> using LLVM. > >>>> > >>>> Thank you, > >>>> Babak > >>>> > >>>> --------------------------------------------------------------- > >>>> Babak Salamat > >>>> PhD Student > >>>> Department of Computer Science > >>>> School of Information and Computer Sciences > >>>> University of California, Irvine > >>>> email: bsalamat at uci.edu > >>>> web: www.ics.uci.edu/~bsalamat > >>>> --------------------------------------------------------------- > >>>> > >>>> _______________________________________________ > >>>> LLVM Developers mailing list > >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >>> > >>> _______________________________________________ > >>> LLVM Developers mailing list > >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >> > >> _______________________________________________ > >> LLVM Developers mailing list > >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > >> > > > > -Chris > > > > -- > > http://nondot.org/sabre/ > > http://llvm.org/ > > _______________________________________________ > > LLVM Developers mailing list > > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev
I am convinced to use llvm-gcc. As I mentioned in my previous email, I have changed native code generation in llc to generate code with a different stack organization. In order to have working binaries, the libraries must be compiled with the new tool and have the same stack organization. Now that I cannot use llc, it seems that I have to modify llvm-gcc to have it generate code with the stack organization that I want. For X86 target I have particularly changed X86RegisterInfo::eliminateFrameIndex, X86RegisterInfo::emitPrologue and X86RegisterInfo::emitEpilogue in the llc source code. Can I find equivalent functions in the llvm-gcc source, so that I can implement the needed stack organization? Thank you, Babak On May 9, 2007, at 12:47 PM, Reid Spencer wrote:> Babak, > > I strongly suggest you drop trying to use llvmc. Instead, probably > just > compiling your library with llvm-gcc should be sufficient. The llvm- > gcc > tool has much of llc's functionality built in to it so you're going to > get the same output. If that doesn't work for you, then please > describe > what you're trying to do in more detail and we'll tell you how it > can be > done. Coming at it from the "llvmc doesn't work" angle, doesn't > help us > solve your actual problem (because we don't know what it is). > > Thanks, > > Reid. > > On Wed, 2007-05-09 at 00:08 -0700, Babak Salamat wrote: >> Thank you Chris. >> >> Actually, I have changed the stack organization in the "llc" source >> codes for x86 target. Thus, I need libraries compiled with the new >> stack organization. If I use llvm-gcc (and apparently also llvmc), >> llc will not be invoked. I was hoping that llvmc would call llvm-gcc >> to compile to bc file and then call llc to compile to native >> assembly, but apparently this doesn't happen. >> Do you know of any possible ways to involve llc in compilation of >> libraries? >> >> --Babak >> >> On May 8, 2007, at 11:33 PM, Chris Lattner wrote: >> >>> On Tue, 8 May 2007, Babak Salamat wrote: >>>> Yes, I have built and installed llvm-gcc and "llvm-gcc --print- >>>> prog- >>>> name=cc1" return the correct path for cc1, so I assume its path is >>>> set correctly in the config files, but I haven't installed config >>>> files separately. Do I need to do that? Is there any documentation >>>> about it? >>> >>> I'd strongly suggest just building with CC=llvm-gcc CXX=llvm-g++. >>> >>> llvmc is extremely experimental and has not seen wide use. >>> >>> -Chris >>> >>>> On May 8, 2007, at 7:33 PM, Reid Spencer wrote: >>>> >>>>> Babak, >>>>> >>>>> As its manual page (http://llvm.org/docs/CommandGuide/html/ >>>>> llvmc.html) >>>>> states, llvmc is an experimental tool: >>>>> >>>>> llvmc is considered an experimental LLVM tool because it has these >>>>> deficiencies: >>>>> >>>>> Poor configuration support >>>>> The support for configuring new languages, etc. is weak. >>>>> There >>>>> are many command line configurations that cannot be >>>>> achieved >>>>> with the current support. Furthermore the grammar is >>>>> cumbersome >>>>> for configuration files. Please see http://llvm.org/PR686 >>>>> for >>>>> further details. >>>>> >>>>> That said, you should be able to get it to work with llvm-gcc. >>>>> >>>>> Did you build llvm-gcc? Did you check the paths in the "c" config >>>>> file? >>>>> Did you install the config files? >>>>> >>>>> All of these things need to be done in order for the standard >>>>> config >>>>> file to work. >>>>> >>>>> Reid. >>>>> >>>>> On Tue, 2007-05-08 at 18:40 -0700, Babak Salamat wrote: >>>>>> Hi, >>>>>> >>>>>> I am trying to compile glibc on Linux using llvm. I need to do >>>>>> this >>>>>> for a research project. >>>>>> The problem is that llvmc doesn't work, and I guess I have to set >>>>>> CC=llvmc to get the glic compiled. For some reason llvmc >>>>>> complains >>>>>> that it cannot find %llvmcc1%. I have this problem both on my >>>>>> Mac and >>>>>> my Linux system. Other tools that I have tested including llvm- >>>>>> gcc >>>>>> work without any problem. >>>>>> First, I appreciate it if you let me know what can cause this >>>>>> problem >>>>>> and second, tell me if you think I have any chance to compile >>>>>> glibc >>>>>> using LLVM. >>>>>> >>>>>> Thank you, >>>>>> Babak >>>>>> >>>>>> --------------------------------------------------------------- >>>>>> Babak Salamat >>>>>> PhD Student >>>>>> Department of Computer Science >>>>>> School of Information and Computer Sciences >>>>>> University of California, Irvine >>>>>> email: bsalamat at uci.edu >>>>>> web: www.ics.uci.edu/~bsalamat >>>>>> --------------------------------------------------------------- >>>>>> >>>>>> _______________________________________________ >>>>>> LLVM Developers mailing list >>>>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>>>> >>>>> _______________________________________________ >>>>> LLVM Developers mailing list >>>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>>> >>>> _______________________________________________ >>>> LLVM Developers mailing list >>>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >>>> >>> >>> -Chris >>> >>> -- >>> http://nondot.org/sabre/ >>> http://llvm.org/ >>> _______________________________________________ >>> LLVM Developers mailing list >>> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >>> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev >> >> _______________________________________________ >> LLVM Developers mailing list >> LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu >> http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev > > _______________________________________________ > LLVM Developers mailing list > LLVMdev at cs.uiuc.edu http://llvm.cs.uiuc.edu > http://lists.cs.uiuc.edu/mailman/listinfo/llvmdev