ZHCADC4A September 2011 – March 2014
C6000 目标文件采用一种段命名约定来提供更高的粒度,同时保留在链接时段合并默认规则的便利性。名称中包含冒号的段称为子段。子段在各方面与普通段相同,但在将段组合到输出文件中时,子段的名称会引导链接器。子段的根名是指一直到冒号(但不包括冒号)的名称。后缀包括冒号后的所有字符。默认情况下,链接器会将所有具有匹配根的段全部组合成使用该名称的单个段。例如,.text、text:func1 和 .text:func2 会组合成名为 .text 的单个段。用户可以通过工具链特定的方式覆盖此默认行为。
如果有多个冒号,则段组合过程将从最右边的冒号开始以递归方式进行。例如,除非用户另外指定,否则默认规则将组合 .bss:func1:var1 和 .bss:func1:var2,然后组合成 .bss。
如节 13.3.5中的定义,对于根名与特殊段匹配的子段,它们的 ABI 定义属性与匹配段相同。例如,.text:func1 是 .text 段的实例。