MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译

MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译

MounRiver Studio官网在此
最新版本的MRS支持切换使用GCC8 或 GCC12编译RISC-V内核MCU工程
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第1张图片
WCH的技术论坛有个帖子里有对新增 GCC12 工具链的描述:https://www.wch.cn/bbs/thread-109414-1.html

您好,GCC12.2 减少了运行时的内存占用,提高工程编译速度,增加 RISCV 新的扩展支持和压缩指令的使用场景等方式来提高代码密度,增加的选项基本都整合到了总的开关类似于 Os 优化,-wall 警告中了。详细的更新信息可以参考一下网址:GCC 12 Release Series — Changes, New Features, and Fixes - GNU Project

1. MounRiver Studio中切换GCC 12

新建工程默认使用了GCC8工具链
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第2张图片
添加打印编译结果占用空间大小,--print-memory-usage
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第3张图片
看看默认工程的大小
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第4张图片
切换成GCC12看看
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第5张图片
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第6张图片
怎么FLASH占用还变多了哈哈,换个自己写的一个RTT Nano的工程来编译对比下看看
GCC 8工具链
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第7张图片
GCC 12工具链
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第8张图片
看得出来GCC 12比GCC 8能好点了哈哈

2. RT-Thread Studio中切换GCC 12

刚好用新做的CH32V303 BSP新建工程看看
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第9张图片
默认使用了GCC 8
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第10张图片
修改使用GCC 12,Toolchain path改为MRS的GCC 12路径C:\MounRiver\MounRiver_Studio\toolchain\RISC-V Embedded GCC12\bin
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第11张图片
Prefix从riscv-none-embed-改为riscv-none-elf-
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第12张图片
编译看看
MounRiver Studio或RT-Thread Studio设置WCH RISC-V 内核 MCU 工程选择默认的 GCC8 或切换到 GCC12 工具链进行编译_第13张图片
FLASH占用稍微小了点

你可能感兴趣的:(RT-Thread,CH32,Tools,risc-v,性能优化,mcu,ide)