3 ms·
IIRC in the past GCC (or maybe just some of the maintainers?) has been resistant to that kind of architecture because it makes it easier to write proprietary ex
by aw1621107 7y ago
IIRC in the past GCC (or maybe just some of the maintainers?) has been resistant to that kind of architecture because it makes it easier to write proprietary extensions/plugins/backends/frontends/etc. to GCC. I'm not sure whether that has changed.
LLVM was designed to be a lot more modular, so it fits these use cases a lot better. In your example, you have the front ends (C, C++, Objective-C, Fortran frontends in LLVM proper, Rust, Zig, etc. as third-party front-ends) compiling to LLVM IR, opt for optimization, and different backends to generate machine code from IR.