Motorola m68k Support Improved Upon In GCC - Saved From Being Removed In GCC 11
While the Motorola 68000 32-bit processors are from the 80's and early 90's, there still is a loyal following of hobbyists who managed to save the "m68k" compiler back-end from being removed in GCC 11.
The m68k back-end in GCC was at risk of being removed due to plans for GCC 11 to drop the CC0 representation code and the back-ends still depending upon it. M68k was the most notable user relying upon the deprecated CC0 representation but there are also other back-ends like AVR (AVR micro-controller), CRIS (the Axis Communications' ETRAX CRIS embedded processors), H8300 (the Renesas H8 microcontrollers), VAX (DEC VAX), and CR16 (National Semi CompactRISC). But now at least m68k is safe.
This week code was merged to GCC 10 for converting m68k to not use the deprecated cc0 functionality. That huge back-end rework comes after a BountySource campaign raised thousands of dollars from passionate Motorola 68000 fans. The Motorola 68000 series was used in devices ranging from the Palm Pilot to Sega Genesis to various TI calculators and dated workstations from the likes of SGI and Sun. With the GNU Compiler Collection support sticking around for this target, the compiler can continue to work for building the still maintaining m68k Linux port and the BSDs for years to come.
More details on the CC0 transition to the modern MODE_CC representation needed to save the other older CPU targets is documented via the GCC Wiki.
The m68k back-end in GCC was at risk of being removed due to plans for GCC 11 to drop the CC0 representation code and the back-ends still depending upon it. M68k was the most notable user relying upon the deprecated CC0 representation but there are also other back-ends like AVR (AVR micro-controller), CRIS (the Axis Communications' ETRAX CRIS embedded processors), H8300 (the Renesas H8 microcontrollers), VAX (DEC VAX), and CR16 (National Semi CompactRISC). But now at least m68k is safe.
This week code was merged to GCC 10 for converting m68k to not use the deprecated cc0 functionality. That huge back-end rework comes after a BountySource campaign raised thousands of dollars from passionate Motorola 68000 fans. The Motorola 68000 series was used in devices ranging from the Palm Pilot to Sega Genesis to various TI calculators and dated workstations from the likes of SGI and Sun. With the GNU Compiler Collection support sticking around for this target, the compiler can continue to work for building the still maintaining m68k Linux port and the BSDs for years to come.
More details on the CC0 transition to the modern MODE_CC representation needed to save the other older CPU targets is documented via the GCC Wiki.
17 Comments