.function 伪操作
用途
标识功能并提供特定于该功能的其他信息。
语法
| 项 | 描述 |
|---|---|
| .功能 | 姓名, Expression1, Expression2, Expression3,[ Expression4] |
描述
.function 伪操作标识函数,并提供使用符号调试器所必需的符号表信息。
.function 伪操作不会对组合件产生任何其他影响,并且通常由编译器插入。
参数
| 项 | 描述 |
|---|---|
| 名称 | 表示函数 姓名 ,并且应该定义为当前组合件中的符号或控制部分 (csect) 高名 。 (一个Qualname指定了控制部分的名称和StorageMappingClass) |
| Expression1 | 表示该函数的顶部。 |
| Expression2 | 表示该函数的存储器映射类。 |
| Expression3 | 表示该函数的类型。 |
.function 伪操作程序的第三个和第四个参数仅充当占位符。 保留这些参数是为了向下兼容先前的系统 (RT , System V)。
| 项 | 描述 |
|---|---|
| Expression4 | 表示函数的大小 (以字节为单位)。 此参数必须是绝对表达式。 此参数是可选的。注: 如果省略了 Expression4 参数,那么会将函数大小设置为函数所属的 csect 的大小。 仅当 csect 包含一个函数且 csect 的开头和结尾与该函数的开头和结尾相同时, csect 大小才等于函数大小。 |
示例
以下示例演示了 .function 伪操作的用法:
.globl .hello[pr]
.csect .hello[pr]
.function .hello[pr],L.1B,16,044,0x86
L.1B: