【问题标题】:GNU as: getting section start & end addressesGNU as:获取节的开始和结束地址
【发布时间】:2012-06-15 15:15:49
【问题描述】:

我正在移植一个使用sect()sectend() 函数的MIPS 汇编程序(非MIPSPro 兼容语法)。看起来他们返回了该部分的开始和结束地址。似乎 GNU AS 文档不支持任何类似的东西 - 任何想法如何 用 GAS 语法编码?

这里有一些例子。

        la  t0,sect(.bss)
        la  t1,sectend(.bss)
    @clear:
        sw  zero,0(t0)
        addiu   t0,t0,4
        sltu    at,t0,t1
        bne at,zero,@clear
        nop

....

__text  dw  sect(.text)
__textlen   dw  sectend(.text)-sect(.text)

【问题讨论】:

    标签: assembly mips gnu


    【解决方案1】:

    如果您使用的是运行 ELF 可执行文件的系统,您可能会找到答案 herehere

    【讨论】:

      【解决方案2】:

      我相信您将信息(使用可以在 asm 中作为变量读取的指示符包装该部分)放在链接描述文件中。这就是我看到 .data 部分从闪存复制到 ram 的方式,并且 .bss 被归零......(使用 gnu 工具)。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-05-09
        • 2011-11-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-09-27
        相关资源
        最近更新 更多