Am Montag, 8. August 2005 20:04 schrieb Reid Spencer:> Answers inline .. > > > Is emake 100% compatible with GNU Make 3.79 or later? >emake is a python function that calls make internally.> > Try it with the build directory not inside the cfrontend directory, that > will probably solve things for you. > > ReidHallo, I found the problem. The gcc sources are older than those on my system. I've got some CFLAGS that the old gcc does not know, eg. -march=pentium-m. Are these flags filtered out everything works fine ;-) What are the differences between the cfrontends.tar.gz and the corresponding gcc release? What would have to be done to get a new version of gcc working as frontend? Stephan -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050809/5c18da26/attachment.sig>
On Tue, 9 Aug 2005, Stephan Wienczny wrote:> I found the problem. The gcc sources are older than those on my system. I've > got some CFLAGS that the old gcc does not know, eg. -march=pentium-m. Are > these flags filtered out everything works fine ;-)Ok, great!> What are the differences between the cfrontends.tar.gz and the corresponding > gcc release?It's a pretty big diff. All of the code for translating to llvm form, plus minor patches here and there to cause GCC to produce more type-safe LLVM code (e.g. not lowering address arithmetic etc). Total it's probably about 15K LOC.> What would have to be done to get a new version of gcc working as > frontend?It's a pretty significant job. You could try to merging in new bits from GCC mainline, but it's a nasty job: debugging failures requires pretty strong understanding of how GCC works. Easier would be to patch the llvm-gcc X86 configuration stuff to accept and ignore that switch. If it's any consolation, it seems fairly likely that there will be a new llvm-gcc in development in the next couple of months, based on GCC mainline. -Chris -- http://nondot.org/sabre/ http://llvm.org/
Stephan Wienczny wrote:> I found the problem. The gcc sources are older than those on my system. I've > got some CFLAGS that the old gcc does not know, eg. -march=pentium-m. Are > these flags filtered out everything works fine ;-)Good. Glad you found it.> > What are the differences between the cfrontends.tar.gz and the corresponding > gcc release? What would have to be done to get a new version of gcc working > as frontend?There are several new files in the gcc directory, all beginning with llvm. Most of the rest of GCC is untouched, but there are some differences. Chris Lattner is the author of this code so you'd need to get his attention for details. One thing you could do is compare the current HEAD revision in CVS with and older revision that contained just the GCC sources. Upgrading in the 3.X line shouldn't be too difficult. I imagine upgrading to the 4.X GCC releases would be a major project (much changed in GCC). Reid.
Am Dienstag, 9. August 2005 18:22 schrieb Chris Lattner:> > It's a pretty significant job. You could try to merging in new bits from > GCC mainline, but it's a nasty job: debugging failures requires pretty > strong understanding of how GCC works. Easier would be to patch the > llvm-gcc X86 configuration stuff to accept and ignore that switch.I looked at those files. Where did you integrate LLVM into GCC? Did you change the gimplifier to produce LLVM code or make LLVM a GCC backend?> > If it's any consolation, it seems fairly likely that there will be a new > llvm-gcc in development in the next couple of months, based on GCC > mainline. > > -ChrisNice to hear that. -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 198 bytes Desc: not available URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20050815/44faeea5/attachment.sig>