|
|
|
|
|
by astrange
695 days ago
|
|
I think this was done because while LLVM was built to be academic, Clang was built to be fast and beat GCC, and so ended up overly low level. A nicer and newer approach is to use an intermediate bytecode that lowers to LLVM IR; Swift, GHC, and I'm sure several other examples I haven't thought of do this. I'd like to see this for C because I think -O0 is a bad debugging experience, eg because system libraries are still optimized, and an interpreter running on a C-like bytecode would be better. Really the only thing -O0 is good for is working around compiler bugs. |
|