使用 toc
TOC 是使用某些约定创建的。
要使用 TOC ,您必须遵循某些约定:
- 通用寄存器 2 始终包含一个指向 TOC 的指针。
- 从汇编程序的 .text 段到 . 数据 或 .bss 段的所有引用都必须通过 TOC 进行。
TOC 寄存器 (通用寄存器 2) 是 2 系统在调用程序时设置的。 它必须由编写的任何代码维护。 TOC 寄存器提供模块上下文,以便模块中的任何例程都可以访问数据项。
这些约定中的第二个约定允许将 .text 和 . 数据 部分轻松装入到内存中的不同位置。 通过遵循此约定,您可以确保模块中需要重新定位的部分仅为 TOC 条目。