MDK AC5,AC6,GCC以及IAR在const局部变量存储位置的异同

|-------------------------------------------------------------|
| 这个是在RTX5全家桶源码升级时遇到的,给大家分享下,基本上已经升级完毕测试完毕了,且支持MDK6,这几天录制视频分享 |

直接说结论
1、一般情况下,const修饰后基本都是存到Flash里面的,全局变量或者静态局部变量是均存储到Flash,而局部变量是有区别的。
2、GCC,MDK AC5和AC6的const局部变量是存到RAM,而IAR不同,是依然保持存到Flash。
3、由于各个优化等级选项太多,不逐一测试了,每个编译器仅测试了一个选项/
4、测试版本MDK5.43, IAR9.30, Embedded Studio 5.50

MDK AC5优化和测试

MDK AC6优化和测试

IAR优化和测试

GCC优化和测试

相关推荐
唐装鼠1 天前
GCC/Clang 构造函数特性(deepseek)
gcc·构造函数特性
yao000377 天前
LLVM是什么 之 我与AI的思想碰撞
编辑器·gnu·clang·gcc·llvm
Lenyiin8 天前
《 Linux 修炼全景指南: 八 》别再碎片化学习!掌控 Linux 开发工具链:gcc、g++、GDB、Bash、Python 与工程化实践
linux·python·bash·gdb·gcc·g++·lenyiin
LostSpeed12 天前
MDK-ARM的所有版本名称
mdk
RedMery13 天前
安装低版本的源
gcc
LostSpeed15 天前
gcc的-O优化等级和编译后程序占用空间的关系
优化·gcc
一个平凡而乐于分享的小比特16 天前
C语言内存布局
c语言·const·内存布局
无人装备硬件开发爱好者18 天前
深度解析:STM32 MDK 工程 HEX 文件转 BIN 文件 —— 原理、方法、优缺点与实战指南(下)
stm32·嵌入式软件·mdk·hex2bin
mzhan01720 天前
Linux: gcc: pkgconf: 谁添加的-I选项
linux·make·gcc·pkgconf