|EXTERNAL LINK |
GCC 11 Compiler Could End Up Removing Support For The Motorola m68k, Other Old CPUs
Written by Michael Larabel in GNU on 30 October 2019 at 07:18 AM EDT. 23 Comments
GNU -- Deprecated for the upcoming GCC 10 compiler release and set for removal in GCC 11 one year later is the CC0 representation code that is being used for handle condition codes in GCC back-ends. That in turn means a number of older CPU targets will be removed in GCC 11 should they not receive some development attention to transition them to the modern MODE_CC representation.
Announced at the end of September (but flying under our radar until now) is the cc0 representation is deprecated with GCC 10 and then set for removal in GCC 11. The GCC 11 removal includes targets still using cc0 representation like avr (AVR micro-controller), cris (the Axis Communications' ETRAX CRIS embedded processors), h8300 (the Renesas H8 microcontrollers), m68k (the Motorola 68000 series), vax (DEC VAX), and cr16 (National Semi CompactRISC).
The targets affected are all old processor targets namely from the 90's and no longer seeing much code activity in GCC and thus their risk to removal. From that list, the Motorola m68k still has some following and even sees the occasional kernel changes for the likes of the Apple PowerBook. For the m68k support there is an independent bounty of more than $5k USD so far in trying to find someone able and interested to convert the back-end to MODE_CC so the m68k support wouldn't be on the chopping block. But we'll see if/when these targets get updated.
The deprecation/removal of cc0 is explained in more details on the GCC Wiki. The future of GCC's m68k support has been brought up again in this mailing list thread.
Source: EXTERNAL LINK
The aim of this bounty is to ensure GCC can continue to support compiling for 68k CPUs in future releases. Without this work being done it's likely that Amiga developers who target 68k will be stuck using older GCC versions, which over time could lead to increased difficulty in porting new software (there has been some recent work to enable 68k support in LLVM but this seems to have stalled, last commit was in December 2018... https://github.com/M680x0/M680x0-llvm/tree/M680x0). Bear in mind that even if GCC 11 is not ported directly to Amiga platforms it's still useful for cross compilation.
I'll only be posting about this on AW.net so if you think this is something that deserves more publicity feel free to share it in other Amiga forums.