
PS4's LLVM-based Developer Toolchain [pdf] - adamnemecek
http://llvm.org/devmtg/2013-11/slides/Robinson-PS4Toolchain.pdf
======
jmgrosen
Function-level optnone is definitely something I would appreciate as well.
Optimized code can often look nothing like the original code... and having the
whole binary non-optimized is just too slow.

~~~
jevinskie
I'm eagerly awaiting its inclusion. It isn't as simple of a task as it would
seem. Unfortunately, you can't simply disable all of the passes in LLVM. Some
aren't optimizations at all and are transforms required for subsequent
optimization passes. MachineFunction passes are even trickier. Some are
strictly necessary for correct codegen.

------
chucknelson
Anyone else find it strange that these slides are filled with some pretty
hardcore technical jargon, yet on one of the slides they feel the need to
clarify "GDDR5 is very high end graphics memory only found on PC graphics
cards"? :)

~~~
adamnemecek
It was given at some LLVM conference so most people in the audience are
probably compiler people who will probably know a lot about compilers and less
about GPUs.

------
shaggyfrog
My kingdom for a proper technical report instead of a slide deck consisting of
thick walls of bullet points.

------
malkia
[http://llvm.org/devmtg/2013-11/videos/Robinson-
PS4Toolchain-...](http://llvm.org/devmtg/2013-11/videos/Robinson-
PS4Toolchain-360.mov)

------
nomadlogic
Wonder how big of a factor that the upstream PS4 OS codebase now using
LLVM/Clang was in this decision. Even if the PS4 wasn't FreeBSD based I can
see the switch making sense on it's own tbh.

~~~
Sanddancer
Doesn't seem like any factor, there. The PS4 is using FreeBSD 9 as the kernel,
which was still built with gcc.

------
wereHamster
I wonder why they wrote their own linker instead of improving gold.

~~~
axman6
Isn't gold specifically targetted at x86 and/or linux only (I can't remember
which)? Having it as part of the LLVM project means they can use a lot of the
infrastructure that already exists, and exists to used as libraries, and also
allows them to write the code as another set of libraries for use in other
unforseen systems. It's also aimed at being a generic linker for use on many
different platforms. I don't think gold has these goals; from I remember they
were just after speed on their target platform.

~~~
wereHamster
The PS4 is x86. And I wouldn't be surprised if it used ELF (like the PS2/3).
Though I can't find any mention of the format that's being used.

------
asmman1
What was used before? gcc?

~~~
alepper
Slide 13. TL;DR: From Sony, yes - as well as an independent third party
toolchain.

~~~
jevinskie
That is now a first-party toolchain after acquisition.

