ZHCU947E June 2015 – January 2023
RUN_SIZE 和 LOAD_SIZE 操作符提供了一种机制,区别 UNION 负载空间的大小及其组成部分在运行前将要复制到的空间的大小。下面我们举例说明:
UNION: run = RAM, LOAD_START(union_load_addr),
LOAD_SIZE(union_ld_sz), RUN_SIZE(union_run_sz)
{
.text1: load = ROM, SIZE(text1_size) { f1.c.obj(.text) }
.text2: load = ROM, SIZE(text2_size) { f2.c.obj(.text) }
}
此处 union_ld_sz 将等于 union 中放置的所有输出段的大小之和。union_run_sz 值等于 union 中最大的输出段。这些符号均会根据分块或对齐要求加入任意边界填充。