Compiler construction 编译器:符号表是如何从源机器传递到目标机器的?

Compiler construction 编译器:符号表是如何从源机器传递到目标机器的?,compiler-construction,backend,symbol-table,Compiler Construction,Backend,Symbol Table,前端和后端都使用符号表,但假设目标代码将在不同的机器上运行,符号表如何传递到后端?它是以某种方式“附加”到中间表示,还是包含在逻辑地址空间的实例中?用于链接的符号表位于中间对象代码文件中,扩展名为.o或.obj,具体取决于平台。有关概述和其他链接,请参阅标题为的文章。那里不仅有一个符号表,还有诸如重定位表和动态链接数据之类的东西,基本上是最终将代码加载到系统RAM中并执行所需的一切。用于链接的符号表放在中间目标代码文件中,扩展名为.o或.obj,具体取决于平台。有关概述和其他链接,请参阅标题为的

前端和后端都使用符号表,但假设目标代码将在不同的机器上运行,符号表如何传递到后端?它是以某种方式“附加”到中间表示,还是包含在逻辑地址空间的实例中?

用于链接的符号表位于中间对象代码文件中,扩展名为.o或.obj,具体取决于平台。有关概述和其他链接,请参阅标题为的文章。那里不仅有一个符号表,还有诸如重定位表和动态链接数据之类的东西,基本上是最终将代码加载到系统RAM中并执行所需的一切。

用于链接的符号表放在中间目标代码文件中,扩展名为.o或.obj,具体取决于平台。有关概述和其他链接,请参阅标题为的文章。那里不仅有一个符号表,还有重定位表和动态链接数据,基本上是最终将代码加载到系统RAM并执行所需的一切。

哪个符号表,是用于链接的还是用于调试的(假设它们在二进制包中不同)?@eh9是用于链接的,我要求的是通用目的,而不是特定于单个前端。哪个符号表是用于链接的还是用于调试的(假设它们在二进制打包中不同)?@eh9是用于链接的,我要求的是通用目的,而不是特定于单个前端。