相关疑难解决方法(0)

如何在Apple Silicon(ARM64)上按标签加载数据?

由于Apple对安全性的考虑, LDR无法正常工作,但我如何加载,例如:

.data
.align 4
.mynumber: .quad   0x123456789ABCDEF0
Run Code Online (Sandbox Code Playgroud)

我了解 ADRP,但不确定我是否了解它的工作原理。

我已经这样做了(ADRP、@PAGE、@PAGEOFF 是从其他来源获取的):

.global _start

.text
_start: 
    ADRP    X2, arr1@PAGE
    ADD X2, X2, arr1@PAGEOFF

    mov     X0, #0      // Use 0 return code
    mov     X16, #1     // System call number 1 terminates this program
    svc     #0x80       // Call kernel to terminate the program

.data
.align 4
arr1:   .FILL   10, 4, 0
mynumber:   .quad   0x123456789ABCDEF0
myoctaword: .octa 0x12345678876543211234567887654321
Run Code Online (Sandbox Code Playgroud)

assembly arm arm64

1
推荐指数
1
解决办法
247
查看次数

标签 统计

arm ×1

arm64 ×1

assembly ×1