相关疑难解决方法(0)

迫使GCC放弃归零某些全局变量

有没有办法告诉GCC不将特定的全局数组初始化为零?

我想保留一大块内存来存储我的代码管理的大型数据结构,所以我说:

#define SIZE_16_MB 0x01000000
BYTE mChunkSpace[SIZE_16_MB];
Run Code Online (Sandbox Code Playgroud)

问题是crtinit()需要一百万年才能将这个空间初始化为零,而且根本不需要.

有什么办法可以强迫它不要初始化那个空间吗?

目前我正在硬编码一个超出链接器知道的内存地址,但这并不是一种特别强大的做事方式.

此外,这是一个缓慢的嵌入式proc(50MHz Microblaze),所以不要以为我在谈论PC.确实需要很长时间才能将该空间归零.

c gcc

7
推荐指数
1
解决办法
4625
查看次数

标签 统计

c ×1

gcc ×1