1

现在Apple的平台终于做出了架构的决定,我开始在Darwin上学习arm64汇编,在.data部分我没有找到任何关于如何加载地址的信息。

在 Linux 上,这有效:

ldr X1, =symbol

.data
symbol:      .ascii  "foo"

Apple 有一篇文章为什么这不适用于 Mach-O 二进制文件,以及它是如何在 x86上完成的@GOTPCREL,但这并没有告诉我 Clang 汇编程序如何在 Apple Silicon 上处理这个问题。(将数据放入 .text 部分没有帮助,因为我需要它是可写的)

任何信息表示赞赏!

4

1 回答 1

0

看来我需要使用ADRP Rx, symbol@GOTPAGE. 尽管如此,任何更多的见解都值得赞赏

于 2020-07-06T12:29:54.367 回答