Last week there was a nice poke by Stefan Glienke around the Delphi nextgen compiler being used for the upcoming Intel x64 Linux support in Delphi (yes, no Arm there, hopefully somewhere in the future) at [Archive.is] Using Delphi nextgen compilers … https://xkcd.com/303/
It resulted into a nice thread of strengths and weaknesses of the classic and nextgen compilers.
I’m emphasising a long term wish for the Win32 platform to have two compilers: a classic one and an LLVM nextgen one.
Reasons include this:
- Various compiler architectures can emit code for the same end-platformm: Kylix Linux x86 support uses the classic compiler, new Linux x64 support is using the LLVM nextgen compiler
- Debugging non-Win32 (x86 on Windows) is slow and buggy at best
- LLVM nextgen compiler takes about 2 orders of magnitude longer than the classic compiler
- the classic compiler has various optimisation deficits for about 2 decades and won’t be fixed
- the LLVM nextgen compiler has many more optimisation opportunities than the classic compiler
- the LLVM nextgen compiler supports zerobased strings and ARC which are almost impossible to debug because of the debugger issues so writing truly cross platform code using Delphi is a drag
So, please please please Delphi team: provide an LLVM nextgen compiler for the Win32 platform.
via: [Archive.is] Using Delphi nextgen compilers … https://xkcd.com/303/
Recommended video: [WayBack] The recent next gen compiler debate reminded me of this nice talk.This is about c++ but it shows off nicely what a high quality compiler can achieve in terms of optimisation… – Christoph Hillefeld – Google+
–jeroen