ZHCUAV7Z september 1995 – march 2023 66AK2E05 , 66AK2H06 , 66AK2H12 , 66AK2H14 , AM1705 , AM1707 , AM1802 , AM1806 , AM1808 , AM1810 , AM5K2E04 , OMAP-L132 , OMAP-L137 , OMAP-L138 , SM470R1B1M-HT , TMS470R1A288 , TMS470R1A384 , TMS470R1A64 , TMS470R1B1M , TMS470R1B512 , TMS470R1B768
通常情况下,为 MEMORY 范围指定填充值可创建初始化数据段,以涵盖之前未初始化的存储器区域。若要为整个存储器范围生成 ECC 数据,链接器的整个范围中需要有初始化数据,或者需要知道在运行时未初始化的存储器区域将有何种值。
如果要为整个存储器范围生成 ECC,但不希望通过指定填充值来初始化整个范围,可以使用“vfill”限定符来代替“fill”限定符,从而以虚拟方式填充范围:
MEMORY {
FLASH : origin=0x0000 length=0x4000 vfill=0xffffffff
}
vfill 限定符的功能与省略 fill 限定符相当,只是它允许针对未初始化的输入存储器范围区域生成 ECC 数据。它的优势在于可减少生成的目标文件的大小。
vfill 限定符只对 ECC 数据生成产生影响。它无法与 fill 限定符同时指定,因为会产生歧义。
如果在 ECC 限定符中指定了 fill,但未指定 vfill,则 vfill 默认为 0xff。