Slashdot Mirror


GCC Gets Its Own News Site

Marcel Cox writes "In an effort to promote the development of GCC, Mathieu Lacage created a GCC news page similar to the idea of Kernel Traffic. While we are on the topic of GCC, it might be worthwhile recalling two major events that occured during the last month: 1. The tree-ssa branch has been merged into mainline, which among others means the end of G77 and the addition of GFORTRAN, the new GNU Fortran 95 compiler. 2. The second annual GCC Developer's summit took place some 10 days ago in Ottawa."

41 comments

  1. Great Space Coaster by node+3 · · Score: 0, Offtopic

    I wonder if they are going to get Gary Gnu (sorry, best example I could find) to as the lead gnews anchor?

  2. a simple question... by Anonymous Coward · · Score: 1, Interesting

    ...that I can't figure out based on what I found on the websites.

    I could poke around, but I'm too lazy.

    Is the Fortran 95 compiler in any of the stable gcc releases (e.g., 3.4)? If not, when will it appear as a standard part of the suite?

    1. Re:a simple question... by cimetmc · · Score: 3, Informative

      The Fortran 95 compiler has not been released yet. It is part of the mainline which will become GCC 3.5 or 4.0 depending on what version number they will finally agree on for the next version.
      The new version is tentatively scheduled for the end of the year. If you want to test it right now, you can always try the weekly development snapshots.

    2. Re:a simple question... by joib · · Score: 1


      The new version is tentatively scheduled for the end of the year.


      I doubt it. Gcc has quite consistently had a one year release cycle for the past few years, with releases occuring in February -> May.

      Given that this one is a bigger release, with the tree-ssa changes (and as you say, it might even be called 4.0), I wouldn't be surprised if the schedule slips somewhat.

      I think it would be incredible it there is a release this year.

    3. Re:a simple question... by cimetmc · · Score: 1

      We have here a fine example of a gap between theory and practice. The GCC project has a development plan according to which, a new version would be released about every 6 months. However so far, they project has never managed to follow the schedule and new releases slipped by many months. So while it's true that the new version is scheduled to be released at the end of this year, it is well possible that it doesn't make it.

  3. Re:Serious question by HalfFlat · · Score: 4, Informative

    I suspect this is not so serious and more like a troll. But nonetheless.

    Before any technical arguments, realise that a key difference between gcc and vc.net is that the former is copyleft and the latter is not. gcc runs on a large number of operating systems, and compiles a number of different languages (eg ada, fortran, c, objective c, c++).

    As regards standards compliance, vc.net is not a c99 compiler; using c99 constructs which are not c++-ish will just fail under vc.net. vc.net is not an ada, fortran or objective-c compiler either.

    Regarding news, the long sought-after fortran 95 compiler replacing the fortran 77 compiler is certainly newsworthy. In addition, a major architectural change -- the integreation of the tree-ssa branch -- heralds significant future optimization possibilities and is the culmination of two years (or more?) work. It's hard to think what would be more relevant to report.

    Why would people care about gcc reports? Given that it is the standard compiler on a number of very popular operating systems, and that the quality of gcc is fundamental to the quality of compiled software on these platforms, and that similarly limitations of gcc in turn limit software on these platforms, it is obvious that gcc is a very important project. People couldn't turn to vc.net (or icc, or ...) for the basis of linux kernel and application development even if they wanted to.

    Summary: gcc news is relevant to almost all free operating system developers and (indirectly) users, and this news is definitely gcc news.

  4. Re:Serious question by Anonymous Coward · · Score: 1, Interesting

    So you're saying that because people use non-standard extensions of gcc, that it is important that these non-standard extensions be maintained rather than being deprecated in favor of adhering to the C++ standards? I don't think you would agree to that, but it's essentially what you wrote.

    As for other language support, VC.Net is at its heart very similar in construction to gcc. The frontend engine parses the source code, a second engine optimizes the code, and the final code generation turns the optimized code into machine code. VC.Net can support as many languages as gcc does (and it does, though using separate front ends to be purchased separately). Not only that, VC does all this faster and better than gcc.

    Source code ought to stick with the language spec, not rely on compiler hacks. That Linux relies heavily on those hacks, so much so that it refuses to compile using other, more standards-compliant compilers is a sign that Linux needs it's source code audited and fixed for these dependencies.

    Wouldn't you like to have an icc or VC optimized Linux kernel? 10-15% speed increase across the board? Why, then, do you support the continued standards-breaking of gcc, just because it is considered a "standard build environment" for many platforms?

  5. Re:Serious question by Anonymous Coward · · Score: 0

    There is no serious question here. You are just trying to shit on the hard work of other people.
    You claim that you want to see news items about how the quality of GCC is "catching up" to that of commercial compilers. Practically everything on the page is about work being done to improve the quality of GCC though. Nevertheless you also claim that there is an "obvious lack of substantive news items".

  6. Re:Serious question by Trepalium · · Score: 3, Insightful

    It's a nice idea, but I imagine the audience for this will be much smaller than that for kernel traffic and it's ilk. Compilers are complicated beasts. I'd say even more complicated than an operating system kernel. While I can understand a good deal of what goes on with lkml, with GCC I'm pretty much lost.

    --
    I used up all my sick days, so I'm calling in dead.
  7. Re:Serious question by Waffle+Iron · · Score: 3, Interesting
    VC covers them all, and produces code that is faster and more compact than gcc, and does so in less time than gcc takes.

    So I guess if anything ought to be posted on the new gcc news site, it ought to be how gcc is catching up to commerical alternatives (which, though not Free, are free for download).

    The last time I checked, the free version of VC had optimization disabled. Has this situation changed?

  8. Re:Serious question by mccoma · · Score: 1
    The last time I checked, the free version of VC had optimization disabled. Has this situation changed?

    They have it for download, but I use a Mac so it is GCC for me (well, maybe IBM - later).

  9. Re:Serious question by Anonymous Coward · · Score: 0

    Think: linux is not just x86; free operating systems could not be based on/ship with a non-free compiler. Then all will become clear.

  10. The future of GCC (LLVM?) by Qwavel · · Score: 3, Interesting

    First off, thanks to all the people who contributed to GCC.

    I think that version 3.4 for C++ was a very important release. It's great that there are now a series of compilers for Windows and Linux that are highly standards compliant and reasonably compatible with each other. I am referring to GCC and VC71 on Windows, and GCC and Intel on Linux.

    The decision of the GCC people to focus on correctness and standards compliance before optimization was correct in my opinion.

    On the other hand, I'm concerned that the most exciting ideas from last years GCC conference do not appear to be on the GCC roadmap, and are not mentioned in the proceedings of this years conference (pls correct me if I'm wrong).
    http://people.redhat.com/lockhart/.gcc04/ MasterGCC -2side.pdf

    The ideas I'm referring to are LLVM and the compile server. I know that development on LLVM is progressing well, but I haven't heard anymore about it becoming part of GCC. The 'compile server' idea involved starting a single process that managed the compilation of all the translation units in a module, rather than running GCC once for each TU.

    I realize these are big changes - are they on the horizon for 4.0?

  11. it's own news site...? by RLiegh · · Score: 1

    I thought that's what developers.slashdot.org was. :-P

  12. Re:Serious question by cimetmc · · Score: 3, Interesting

    Since GCC 3, the GCC developers have a very strong tendancy to strictly adhere to standards and even to deprecate or remove non standard GCC extensions, especially those that become problematic because they syntactically interfere with newer C99 features. What makes the kernel non portable accross compilers is more the stuff like inline assembly or directives that control where some pieces of code are located in memory. This kind of stuff is inherently non portable, but there is little one can do about it. Note that given GCC is the standard compiler for the Linux platform, Intel has gone so far as to add those GCC extensions that are necessary to compile the kernel. With just a minimum number of patches, icc thus manages to compile the linux kernel.

  13. Re:Serious question by cimetmc · · Score: 4, Informative
    The last time I checked, the free version of VC had optimization disabled. Has this situation changed?

    This changed quite recently and Microsoft has now made the non crippled version of VC available for free download (command line online, not full IDE).

  14. Re:Serious question by JohnFluxx · · Score: 2, Interesting

    It's not _that_ difficult. Learn a bit of compilier theory, it's not that bad, and very interesting.

    It's mostly just colouring in pretty graphs. *grin*.

  15. Re:The future of GCC (LLVM?) by cimetmc · · Score: 2, Interesting

    Unfortunately, the FSF currently has a rather strict policy regarding GCC development which does not permit implementing features like LLVM. I hope this policy will change some time as currently it seems to be a bit blocking for certain interresting features that could be implemented. See the following discussion for this policy:
    http://gcc.gnu.org/ml/gcc/2003-11/msg00402.html

  16. Re:The future of GCC (LLVM?) by noselasd · · Score: 1

    As I see it, they just won't export the gcc internal structure.
    So fork gcc, or contribute patches to them that does what one wants.
    See also http://llvm.cs.uiuc.edu/

  17. Re:The future of GCC (LLVM?) by cimetmc · · Score: 1

    You can easily fork GCC, but the problem is maintaining it after the fork, especially if you want to include changes of the mainline GCC after your fork. Beside, it would still be the main GCC that would continue to be used by 99% of the people and so all your efforts are kind of wasted.
    A far more productive approach on the long run would be to try to make the FSF realize how much their policy is currently blocking GCC development and relax their rules.

  18. Re:The future of GCC (LLVM?) by noselasd · · Score: 2, Informative

    Maybe http://gcc.gnu.org/ml/gcc/2004-05/msg00679.html ?

    "GCC can dump its internal representation in a C-like syntax using the
    new -fdump-tree-... switches."

  19. I apologize if this is a stupid question, but... by Ann+Elk · · Score: 1

    ...what are SSA trees? A little googling reveals they are:

    • A popular subject on the GCC mailing lists, where everyone seems to already know what they are.
    • Good, somehow implying that !SSA == bad.

    I'm not a compiler writer (duh), I'm just curious.

  20. Re:I apologize if this is a stupid question, but.. by cimetmc · · Score: 1

    The GCC web site has a documentation here

  21. Re:The future of GCC (LLVM?) by cimetmc · · Score: 2, Interesting

    This is a one way dump for debugging purposes. You cannot dump the tree, do some transformations on it, and then reimport it again into GCC. That would be the kind of thing that the policy wants to forbid.

  22. Re:I apologize if this is a stupid question, but.. by alex_tibbles · · Score: 4, Informative

    read this and this.
    SSA stands for Static Single Assignment.
    Partly the work is about unifying parse-tree data structures throughout the compiler. "There is no single tree representation in GCC."

  23. Re:The future of GCC (LLVM?) by teg · · Score: 2, Informative

    You can easily fork GCC, but the problem is maintaining it after the fork, especially if you want to include changes of the mainline GCC after your fork.

    The egcs project who did just that was very successful.

  24. Re:The future of GCC (LLVM?) by cimetmc · · Score: 2, Interesting

    The egcs project who did just that was very successful.
    Yes, but it was the major developers that did the fork, not just someone who came along. Also, the fork was not to bypass political rules, but rather to make major changes to the compiler that people thought were to invasive for the production version of GCC.
    Of course, the LLVM project mentioned here is more in the direction you suggest. The initial compiler is GCC based, but the way LLVM works would not be permitted in GCC according to the current policies.

  25. Re:Serious question by 4of12 · · Score: 1

    the long sought-after fortran 95 compiler replacing the fortran 77 compiler is certainly newsworthy.

    Indeed, it is.

    While much of the scientific community has moved to develop code in C and C++, there was substantial momentum and a great deal of previosuly-developed code in FORTRAN 77.

    Though I took the C and C++ path and am grateful for the freely-available gcc, colleagues have written code in FORTRAN 90 that sorely needs a working free compiler.

    --
    "Provided by the management for your protection."
  26. Thanks... by Anonymous Coward · · Score: 0

    I really am impressed that the Fortran 95 compiler is done, so to speak. I wasn't expecting it that fast. It's a important gift to the community.

  27. Re:Serious question by tcopeland · · Score: 2, Interesting

    > the audience for this will be
    > much smaller than that for kernel traffic

    I think that's mostly true... but I also think that there are plenty of folks interested in compiler-ish development notes.

    For example, I work on the open source utility PMD, which does static analysis of Java code. So there are all sorts of things it can check for - dead code, algebraic simplifications, unused assignments, and so on. It's almost like working on the front end of a compiler - i.e., parsing, tokenizing, symbol table - without having to do the code generation backend. Looking at the current GCC news issue, there's at least one thing there that seems useful to me - the improvements to the constant propagation techniques.

    So, anyhow, I agree that there will be a smaller audience - but perhaps the people reading it will be from diverse backgrounds and very focused on the topics that arise.

  28. Re:Serious question by Anonymous Coward · · Score: 0

    did they change the annoyingly bug that said

    for (int i=0;isomenumber;i++)

    was illegal?

    (declaring the i var within the for statement)

  29. Re:Serious question by Anonymous Coward · · Score: 0

    Linux needs it's source code audited

    "its".
    No apostrophe.

  30. Re:Serious question by cimetmc · · Score: 1
    did they change the annoyingly bug that said

    for (int i=0;isomenumber;i++)

    was illegal?

    Declaring a variable in a for loop is allowed in the 99 standard but not in the 89 standard. By default GCC works in C89 mode. To compile your code, you need to use the option -std=c99

  31. The site name? by Anonymous Coward · · Score: 0

    Since it is run by Mathieu Lacage, he can call it "Lacage a folles"

  32. Re:I apologize if this is a stupid question, but.. by Anonymous Coward · · Score: 0

    Here is a brief article.

  33. Tree SSA article at LWN by j1m+5n0w · · Score: 1

    Take a look at this article at Linux Weekly News

    -jim

    1. Re:Tree SSA article at LWN by Ann+Elk · · Score: 1

      Thanks! That is exactly the level of detail I've been looking for.

  34. 2004-06-21 Update (Newsletter #3) by albepetr · · Score: 1

    An update as of June 21st has been posted. The newsletter is also now accessible via http://gccnews.chatta.us.