LLVM 3.5 Brings C++1y Improvements, Unified 64-bit ARM Backend 99
An anonymous reader writes: LLVM 3.5 along with Clang 3.5 are now available for download. LLVM 3.5 offers many compiler advancements including a unified 64-bit ARM back-end from the merging of the Apple and community AArch64 back-ends, C++1y/C++1z language additions, self-hosting support of Clang on SPARC64, and various other compiler improvements.
Oh good. (Score:3, Insightful)
It's one of those summaries.
You know "update on [OSS product]"
Why would we, the general populace of readers, want a very short summary of what this OSS product does, when we can have unclear references to the changelog?
Why would we want a link to the homepage with more information, when we can have 2 links that also are essentially changelogs, and one direct download?
If it's not the Linux Kernel, Firefox, or Chrome, please stop assuming everyone knows what it is.
Re: (Score:1)
But it's LLVM 3.5 along with Clang 3.5! And it unifies the Apple and AArch64 backends along with C++1y/C++1z additions! It's self-explanatory, surely?
Re: Oh good. (Score:1)
It's the new gcc. Any questions?
The FSF/GNU folks overreached with GPL v3 ... (Score:1, Interesting)
The FSF/GNU folks overreached with GPL v3. They overestimated their importance, pushed a little too hard, and get spanked by Darwin. Both the scientist and the kernel.
Gcc being displaced was bound to happen. When politics guide engineering the long term is doubtful.
The bigger joke: (Score:1)
Go read gpl-violations.org's mailing list.
At least 3/4s of *EVERYBODY* are violating the GPL and not releasing source code. And we're not talking small companies either. Mediatek, Allwinner, TomTom, Renault (via TomTom derived systems), Zyxel, etc.
The real solution to this whole shitfest is either to start enforcing criminal copyright law vigorously against everyone, let the rich abuse the 'lower' classes, or simply abolish copyright law and let it turn into a free for all. If nobody is going to obey the ru
Re: (Score:3, Interesting)
The FSF/GNU folks overreached with GPL v3. They overestimated their importance, pushed a little too hard, and get spanked by Darwin. Both the scientist and the kernel.
Gcc being displaced was bound to happen. When politics guide engineering the long term is doubtful.
Unfortunately this is a pretty spot on assessment of the situation in my mind.
Ok, It was annoying that companies were starting to find ways to use OS technology as center pieces in their products and not opening all of their source code to let people tinker with it. The problem their though is that in some cases if they did that then they would reveal too much about things like the underlying hardware that might be under NDA's forced upon them by other companies
Given enough time this sort of problem might h
Re: (Score:3)
I don't follow the compilers very closely, so my recollection may be fuzzy, but I think this is what the grandparent was getting at:
In the past some people have proposed giving GCC a clear, serializable intermediate code so that one could use GCC front ends and back ends independently of the rest of GCC. The leadership viewed this as an end run around the GPL, because whatever produced or consumed this intermediate code would not need to link to the invoked portions of GCC. Tight coupling between the fron
Re: (Score:2, Informative)
"because its a piece of non-copyleft-you-can-make-me-proprietary-any-day shitty pile of today-you-can-read-my-src-tomorrow-you-get-an-eula crap"
That makes it more useful, not less. That means it can be the basis for commercial products. People will buy stuff because of LLVM. People will get paid because of LLVM. Maybe you. Do you want to make ideologically pure software, or do you want a roof over your head and food to eat? Are you utopian or realist?
And also, you're flat out wrong. If LLVM version 8.0 co
Re: (Score:1)
Hitler paid people, too.
If one met his requirements and followed his rules. He was kind of like the GPL, fit into a narrow set of rules that are designed to create a better society in his/their opinion or else.
Re: (Score:2)
Re: (Score:1)
Re: (Score:2)
On the contrary, it is open source. And it provides competition for GCC. Competition is good - it will cause the GNU team to have to improve their compiler. LLVM also gives those of us that don't like GCC a free alternative to use (though I doubt it'll ever support my platform of choice).
Re: (Score:2)
though I doubt it'll ever support my platform of choice
Really? What platform would you be referring too, I'm genuinely curious.
Re: (Score:2)
though I doubt it'll ever support my platform of choice
Really? What platform would you be referring too, I'm genuinely curious.
My understanding is that LLVM is skipping various "legacy" platforms. 16-bit x86 came to mind but when I googled it I found that Intel is actually working on 16-bit x86 support. Some boot loaders and emulators apparently use 16-bit code.
I was going to make a snarky Z80 comment but when reading the 16-bit Intel thread I found another potential snarker discovered that a Z80 backend for LLVM exists.
Where the LLVM devs may have no interest it seems the legacy communities or other parties may step in.
Wh
Re: (Score:2)
irix64-mips4. It's sorta my understanding that they are going with "if it works, great, but we're not going out of our way to make it work" attitude. I'm going to give it a test to see if it works, since GCC dropped IRIX.
Re: (Score:2)
Are you reading Slashdot in print form in some place with no internet access? Do you have to call your secretary so she can type out the comments on a punched card to feed into the internetotron?
Re: (Score:1)
"Hey check his post history"
--Someone too cowardly to have one.
Re: (Score:3, Insightful)
How about, fuck you, you could just look up LLVM anytime you wanted news about it. Why come to slashdot for that? See how stupid that "resources exist" argument is?
Decent journalism isn't hard, and I don't feel that basic fucking context is too much to ask of a summary.
Re: (Score:2)
It is not out of the question for Slashdot submissions to expect their target audience to know about LLVM and Clang. If you didn't then you weren't the target audience.
It would be like me having to write "Obama (the current US president)..." in a Democratic Party Newsletter or "Alabama (a US State)..." on an American news site.
Do we have to explain what a "Tesla Model S" or a "Ford Escort" is to the reader? No, because they been around long enough that it can be expected that most of the audience will kn
Re: (Score:2)
Right... let's take that a bit of a different direction, and instead of the US president, talk about, say, the minority whip and see how well your analogy holds up.
Re: (Score:1)
It would be a good analogy if you were talking about, say, a site which was targeted at - and largely read by - people interested in political issues.
It's perfectly reasonably to understand that the majority of Slashdot users either know what Clang/LLVM is, or are willing and capable of looking them up. Clearly, if you've not idea what Clang is, then you're going to skate on over the headline to the next stor, just like I did when I saw the headline about giving cyborgs rights.
Re: (Score:2)
His analogy holds up pretty much perfectly.
I would expect someone who reads the Democratic Party Newsletter to know who the majority whip is, but not really anyone else. Pretty much just like anyone on slashdot who isn't new should have hard of llvm and clang. Its a fairly common talking point for slashdot stories and comments.
If you don't know what LLVM and clang are, slashdot really isn't someplace you should visit frequently unless you willing to learn what they are.
Re: (Score:2)
Sorry, but democratic-party-news-letter::slashdot isn't an analogy that holds up. More like WashingtonPost::slashdot.
(And democratic party newsletters would totally mention the name of the whip, you're totally crazy)
Re: (Score:2)
Oh look. A moron hating newspapers.
That's new.
Re: (Score:2)
> Maybe you'll find CNet, USA Today, or Highlights for Children more acceptable.
And you're expecting him to know who Goofus and Gallant are?!
Firefox and LLVM (Score:2)
Re: (Score:1)
Everything a nerd could want (Score:1)
Slashdot has everything a nerd could want
Apart from two things: Editors and Journalism.
nerds? (Score:2)
Nerds are not interested in champagne & handbags. Get ye to idle!
Wrong release note links; here's the right one (Score:5, Informative)
The article pointed to the very very very very very incomplete release notes for stuff after 3.5.
You wanted to link to the 3.5 release notes [llvm.org].
Re: (Score:2)
Re: (Score:2)
Yeah, somebody please PLEASE track them down. Frankly LLVM itself is boring (don't hit me). The clang part is where the interesting stuff is. Why in hell doesn't somebody fix that miserable horror of a website?
Look at this [llvm.org] fucking page. As I write this the title says "Clang 3.5 (In-Progress) Release Notes - Clang 3.6 documentation". The top heading says "Clang 3.6 documentation". The level 2 subheading says "Clang 3.5 (In-Progress) Release Notes". The level 3 heading says "Clang 3.5 (In-Progress) Release No
Re: (Score:2)
OK, I think I found it [llvm.org] - by downloading the clang source, opening the release notes file in the archive, and doing a google search for the exact phrase.
Hope this helps. It's actually great quality work, if they only made it possible to FIND it on the website.
Re: (Score:2)
Is there any point continuing GCC's development? (Score:2, Insightful)
I've been using LLVM and Clang a lot lately. They're an exceptionally good compiler system. The more I use it, the more I ask myself, Is there even any point continuing the development of GCC?
All software projects come to an end eventually. Something better comes along, and those who can't compete are better off giving up. I think that GCC has entered that phase, now that we have LLVM and Clang available to us.
LLVM and Clang have a better code base, a freer license, better runtime performance, better corpor
Re: (Score:2)
Is there any point continuing GCC's development? (Score:5, Insightful)
rarely-used languages and platforms
Rarely-used platforms? Tell that to all the people developing for various embedded platforms like AVR which LLVM doesn't support. Those aren't rarely used.
Re: (Score:2)
Actually I still use gcc for gfortran - I can't personally afford to use the commercial license, and I have code I want to maintain and develop in Fortran. But on Windows I develop C++ in either MSVC, due chiefly to the fact I like its debugger better than any other I've worked with, or in Clang, and on Linux I develop C++ in Clang. I'm glad gcc is there but my default these days is certainly Clang.
Re:Is there any point continuing GCC's development (Score:5, Informative)
Better corporate support? I might have missed it, but e.g. Intel, Google, ARM, AMD, etc. are still also making significant contributions to GCC.
Better runtime performance? Have you even read the Phoronix article?
People using Ada and Fortran using the better compilers out there... Eh... GNU Ada is *the* Ada compiler standard, and GNU Fortran is widely used even in high-performance computing because the commercial compilers aren't really better at all (and generally more buggy).
Go do your home work.
Re: (Score:2, Interesting)
"GNU Fortran is widely used even in high-performance computing because the commercial compilers aren't really better at all (and generally more buggy)."
While I've certainly encountered (and notified Intel of) bugs in ifort, and more than I'd expect in something that cost the university a pretty parcel of money, I wouldn't even begin to pretend that gfortran is as good for high-performance computing as ifort. Unless you're triggering an ifort bug, and I haven't hit a genuinely serious one since a weird memor
Re: (Score:1)
Better runtime performance? Have you even read the Phoronix article?
So there is just one, right? One lone article on Phoronix?
Re: (Score:2)
If you wish to imply that Phoronix tests are somehow skewed in favour of GCC, why don't you provide a link to tests claiming otherwise?
Re: (Score:2)
Re:Is there any point continuing GCC's development (Score:5, Insightful)
GCC's support for Fortran and Ada make it valuable, the point is the need for an open source compiler so when your requirement is open source a commercial compiler wont do. Many assiduously avoid closed source software and want to be able to have the facility for ada and fortran. Many "infrequently used" platforms are more important than you think, such as the system Z platform from IBM.
Re: (Score:1)
Here's how I measure it:
1. I pick a certain part of the compiler, or a certain piece of functionality. Let's say the handling of C++'s throw() specifier, as an example.
2. I find the LLVM/Clang code for handling that functionality. It's easy to find, and then it's easy to follow. The code is clear, concise, and well structured.
3. I try to find the GCC code for handling that functionality. It's hard to find, and even once it's found it's hard to follow. The code is unclear, and usually not very well structure
Re: (Score:2)
Well, the "advantage" of GCC is it's GPL. To a large number of FOSS people, the GPL is a far better license than BSD, so it doesn't matter if LLVM/CLang is better, superior or whatever, GCC is GPL and that is all that matters.
Also, there's a lot of GCC-isms out there in the code, many of which are not supported by LLVM/Clang or other compilers and they often do strange things so porting them to use another co
Re: (Score:2)
I'm using GNAT Ada with GCC, as practically all other Ada users. GNAT is the only Ada version that implements the latest language features of Ada 2012.
Adacore alone is reason enough to continue developing GCC. The commercial version of GNAT uses GCC and is used in production systems like airplanes you fly with.
Lies (Score:3, Funny)
Apple didn't contribute any work to LLVM/clang because LLVM/clang are licensed with U of I's BSD-ish and, as we all know, corporate capitalist pig-dogs will not contribute if they're not forced to by license requirements.
Can't believe anything you read on Slashdot these days.
Retarded and wrong comment (Score:2)
Maybe if you had read the release notes you wouldn't have posted such a retarded comment. Oh, and large chunks of the llvm/clang team work at Apple.
"During the 3.5 release cycle, Apple released the source used to generate 64-bit ARM programs on iOS platforms. This took the form of a separate backend that had been developed in parallel to, and largely isolation from, the existing code.
We decided that maintaining the two backends indefinitely was not an option, since their features almost entirely overlapped.
Re: (Score:3)
Oh dear. I guess your browser doesn't render the humor or sarcasm tags properly. The parent comment was intended to be snarky humor poking fun at those of us who think the gpl is a good idea. Whether or not it was actually funny is debatable of course.
Re: (Score:2)
Oh dear. I guess your browser doesn't render the humor or sarcasm tags properly. The parent comment was intended to be snarky humor poking fun at those of us who think the gpl is a good idea. Whether or not it was actually funny is debatable of course.
With a user number about the same as mine, you have spent enough time on the internet to realize that sarcasm generally doesn't communicate well through plain text. No matter how outlandish and stupid you think your sarcasm sounds, I guarantee you that there is a significantly non-zero number of people on the same forum who are actually stupid enough to post in earnest what you posted sarcastically. So you shouldn't be surprised when people take your sarcasm as stupidity in earnest.
Re: (Score:1)
But Apple did use the hard work of open source developers to subsidize a closed platform of user and developer hostile products. When companies want to exploit their customers to the fullest they should not be able to benefit from the efforts of open source developers, they should have to hire developers and write their own code from scratch. All BSD licensing accomplishes is the depression of wages paid to developers. GPL licensing makes up for the depression of wages by creating a better world.
What's all the fuss about? (Score:3)
Until there is not a single Linux distribuition out there compiled with LLVM / clang, and there still is none, it will just not cut it.
Besides, as the Phoronix article shows, it's also not on-par performance-wise.
I'd love to move to a compiler with better / more understandable errors and warnings, especially for C++, and which compiles faster - but until the code does not execute at the same speed (and it seems it mostly lags behind GCC), and until it is not integrated into the system adequately (read: LLVM-based distribution), I do not see the point in switching.
What's all the fuss about? (Score:2)
CLANG:
real 0m26.100s
user 0m24.815s
sys 0m1.208s
GCC:
real 0m27.936s
user 0m26.715s
sys 0m1.755s
All files (including compilers, libraries and includes
Re: (Score:3)
With compilers, what counts is the speed of compiled code rather than compilation speed, and here clang loses by quite a bit.
Compilation speed really matters only in rapid compile-debug cycles, but there clang, despite winning on compile speed, is hindered by producing worse debug info.
Re: What's all the fuss about? (Score:3)
Re: (Score:2)
With compilers, what counts is the speed of compiled code rather than compilation speed, and here clang loses by quite a bit.
Says who? For the first statement, I haven't seen any code in the last few years where the difference between compiler optimisations would have made any difference. I haven't actually seen any code that needed any cleverness. I have seen code that needed stupidity removed, but nothing else.
For the second statement, there is a benchmark that shows gcc to be better, and goes what, the gcc developers try their best to optimise for it, while everyone else ignores it. The results are predictable.
Re: What's all the fuss about? (Score:3)
What's all the fuss about? (Score:1)
It's getting common to develop C++ with Clang, then distribute with GCC.
Though it's not huge in Linux camps, BSD is using Clang.
LLVMLinux getting closer (similar performance, and very few patches needed, soon none):
http://www.phoronix.com/scan.php?page=news_item&px=MTcxNDA
and it compiles Debian's repos quite well too, with most problems being edge cases and standard differences.
Distributions need this groundwork first.