Originally posted by aphirst
View Post
Announcement
Collapse
No announcement yet.
Richard Stallman Calls LLVM A "Terrible Setback"
Collapse
X
-
-
Originally posted by aphirst View Postthose who wanted to live their lives using only Free software.
The kernel ships with tiny pieces of x86 and x64 microcode blobs to support the processors used by the world's computers today. Not free.
That motherboard with a BIOS or UEFI? Not free.
Using a graphics card? Firmware blobs in kernel. Not free.
Using WiFi? UNLESS that is an Atheros card with support for only up to 80211n, every other card in existence today requires firmware blobs in the kernel. Not free. Atheros has also confirmed that their 80211ac cards will require firmware blobs. And they are the most Linux-friendly manufacturer of wireless chipsets.
Comment
-
Originally posted by Sonadow View PostThis is already nothing more than fantasy since the early 2000s.
The kernel ships with tiny pieces of x86 and x64 microcode blobs to support the processors used by the world's computers today. Not free.
That motherboard with a BIOS or UEFI? Not free.
Using a graphics card? Firmware blobs in kernel. Not free.
Using WiFi? UNLESS that is an Atheros card with support for only up to 80211n, every other card in existence today requires firmware blobs in the kernel. Not free. Atheros has also confirmed that their 80211ac cards will require firmware blobs. And they are the most Linux-friendly manufacturer of wireless chipsets.
Comment
-
The fact that LLVM is released under such a non-restrictive license allows for more uses of it and more contributions to it. That's part of the reason it has gained so much ground so fast on GCC. With the FSF's model, innovation just stagnates.
Comment
-
Originally posted by Sonadow View PostThis is already nothing more than fantasy since the early 2000s.
The kernel ships with tiny pieces of x86 and x64 microcode blobs to support the processors used by the world's computers today. Not free.
That motherboard with a BIOS or UEFI? Not free.
Using a graphics card? Firmware blobs in kernel. Not free.
Using WiFi? UNLESS that is an Atheros card with support for only up to 80211n, every other card in existence today requires firmware blobs in the kernel. Not free. Atheros has also confirmed that their 80211ac cards will require firmware blobs. And they are the most Linux-friendly manufacturer of wireless chipsets.
Comment
-
Originally posted by Zan Lynx View PostI don't think that you have actually used LLVM?
Sure, it can be used in the way that you describe. But it can equally be used with the next stage, which is to compile to machine code. This is how Apple uses it. Their LLVM compiler used in Xcode does not produce files to JIT later. It produces binaries containing x86_64 machine code, x86 machine code, and/or ARM machine code.
Using JIT every time the code runs is almost always a waste of time. Why do it when you can do it one time and be done?
I am sorry, no offense, but you don't really know what you are talking about. 4 rules: a)A 10% of the code of the program is responsible for 90% of the performance and the opposite. So GCC optimizes only the 10% having it multiple times compiled for many subsets (like sse4.2 or avx), the rest 90% its a simple i686, that's the main reason that LLVM has binaries half the size. LLVM does win a 10%+ from this. b)Some times the best optimization can be done only on runtime, +1 for LLVM and Jit. c)LLVM does the heavy part of optimizations pre-git, having bytecode extensions for many different CPU_cultures, no importance if the last part is Jit. d)When you compile for Jit you can succeed using only a 10% from your CPU for the last (Jit) part, that lose is less than the gain. It is proven that a C11+LLVM(Jit) program or a Java program can be as fast as a C++ GCC program.
For all the rest i believe that between a good world (GPL) and a bad world (closed, patented), the best point is the bridge (BSD). So a small 5% of the free code must be BSD. I find difficult for someone to create a closed LLVM incompatible with the open one. First because the reason to choose LLVM is the high compatibility and second even if they do, they can easily tracked by as, we can keep following them more easily than a compatibility layer.
Comment
-
Originally posted by artivision View PostI am sorry, no offense, but you don't really know what you are talking about. 4 rules: a)A 10% of the code of the program is responsible for 90% of the performance and the opposite. So GCC optimizes only the 10% having it multiple times compiled for many subsets (like sse4.2 or avx), the rest 90% its a simple i686, that's the main reason that LLVM has binaries half the size. LLVM does win a 10%+ from this. b)Some times the best optimization can be done only on runtime, +1 for LLVM and Jit. c)LLVM does the heavy part of optimizations pre-git, having bytecode extensions for many different CPU_cultures, no importance if the last part is Jit. d)When you compile for Jit you can succeed using only a 10% from your CPU for the last (Jit) part, that lose is less than the gain. It is proven that a C11+LLVM(Jit) program or a Java program can be as fast as a C++ GCC program.
Comment
Comment