发明名称 UNALIGNED INSTRUCTION RELOCATION
摘要 In one embodiment, a computer-implemented method includes receiving source code to be compiled into an executable file for an unaligned instruction set architecture (ISA). Aligned assembled code is generated, by a computer processor. The aligned assembled code complies with an aligned ISA and includes aligned processor code for a processor and aligned accelerator code for an accelerator. A first linking pass is performed on the aligned assembled code, including relocating a first relocation target in the aligned accelerator code that refers to a first object outside the aligned accelerator code. Unaligned assembled code is generated in accordance with the unaligned ISA and includes unaligned accelerator code for the accelerator and unaligned processor code for the processor. A second linking pass is performed on the unaligned assembled code, including relocating a second relocation target outside the unaligned accelerator code that refers to an object in the unaligned accelerator code.
申请公布号 US2016283211(A1) 申请公布日期 2016.09.29
申请号 US201514744047 申请日期 2015.06.19
申请人 International Business Machines Corporation 发明人 Bertolli Carlo;O'Brien John K.;Sallenave Olivier H.;Sura Zehra N.
分类号 G06F9/45;G06F9/445 主分类号 G06F9/45
代理机构 代理人
主权项 1. A computer-implemented method, comprising: receiving source code to be compiled into an executable file for an unaligned instruction set architecture (ISA), the source code configured for a processor and an accelerator; generating, by a computer processor, aligned assembled code representing the source code, the aligned assembled code in accordance with an aligned ISA and comprising aligned processor code for the processor and aligned accelerator code for the accelerator; performing a first linking pass on the aligned assembled code, the first linking pass comprising relocating a first relocation target in the aligned accelerator code that refers to a first object outside the aligned accelerator code; generating unaligned assembled code in accordance with the unaligned ISA, the unaligned assembled code representing the source code and comprising unaligned processor code for the processor and unaligned accelerator code for the accelerator; performing a second linking pass on the unaligned assembled code, the second linking pass comprising relocating a second relocation target outside the unaligned accelerator code that refers to an object in the unaligned accelerator code; and outputting the executable file for the unaligned ISA based on the first linking pass and the second linking pass.
地址 Armonk NY US