IDF 6.0.1 ESP32-C6 LP core GCC 15.2 zaamo_zalrsc extensions
Posted: Tue Jun 02, 2026 3:51 pm
Hi,
The new IDF 6.0.1 introduced new GCC compiler version 15.2. The compiler now uses extra RISC-V extensions. Specifically zaamo_zalrsc. The compiler uses those extensions for ESP32C6 HP core code compilation and LP core compilation. We see an issue on ESP32C6 with LP core SPI peripheral when the LP core code is compiled by the new GCC 15.2. Can you confirm the ESP32C6 LP core supports those new zaamo_zalrsc extensions? The exact same LP core code compiled with GCC 14.2 (as used by IDF 5.5.4) works fine with no issue.
If the new RISC-V extensions are not supported on the LP core is there a way for the GCC compiler ver. 15.2 to not to generate code that uses the new opcodes of these extensions? If so, could you please list the GCC options/arguments? Thank you.
The new IDF 6.0.1 introduced new GCC compiler version 15.2. The compiler now uses extra RISC-V extensions. Specifically zaamo_zalrsc. The compiler uses those extensions for ESP32C6 HP core code compilation and LP core compilation. We see an issue on ESP32C6 with LP core SPI peripheral when the LP core code is compiled by the new GCC 15.2. Can you confirm the ESP32C6 LP core supports those new zaamo_zalrsc extensions? The exact same LP core code compiled with GCC 14.2 (as used by IDF 5.5.4) works fine with no issue.
If the new RISC-V extensions are not supported on the LP core is there a way for the GCC compiler ver. 15.2 to not to generate code that uses the new opcodes of these extensions? If so, could you please list the GCC options/arguments? Thank you.