arm64相关内容
我需要 libcrypto.a 和 libssl.a 用于 iOS 7 中 arm64 位架构的静态库来构建和运行项目. 解决方案 您可以使用以下构建脚本从源代码构建它:https://github.com/x2on/OpenSSL-for-iPhone
..
Xcode 10.1 提到了对 arm64e 的支持(预览版).任何人都对 arm64e 有任何想法.arm64 和 arm64e 之间的任何区别. https://developer.apple.com/documentation/xcode_release_notes/xcode_10_1_beta_2_release_notes?语言=对象 我搜索了 arm64e.但找不到合适的
..
在使用 Podfile 使用 Xcode5 开发 iOS 7 应用程序时,我们总是遇到这个问题. 经过一番搜索,似乎没有来自 CocoaPods 的最终解决方案?也许你看到这个的时候就解决了. 现在如何解决此类问题? 问题是:Pods 被拒绝作为“libPods.a"的隐式依赖项,因为其架构“armv7 armv7s"不包含所有必需的架构“armv7 armv7s arm64"
..
ARMv8 是否没有 64 位堆栈的能力?我知道 AArch64 上没有推送和弹出指令,因此堆栈管理是否留给 AArch32 进行参数传递等?我们如何传递 48 位地址?我对在 AArch64 中运行时函数调用的工作方式感到困惑. 解决方案 很像 32 位*,SP 是 任何加载/存储指令,所以机制并没有什么不同.不同的是,SP 不再是一个通用寄存器,你可以随心所欲,不再有变量加载/存储多个
..
我目前正在尝试为新的 arm64 架构编译我的库.我有一堆 NEON 程序集,对于所有这些程序集,我都收到错误 asm 中未知的寄存器名称“q0". 即使我写得这么简单: asm (“"::: "q0", "q1", "q2", "q3"); 我认为 arm64 支持 NEON.我错过了什么吗? 解决方案 “v0": scanon$ cat bar.cint foo(vo
..
我需要将 32 位绝对地址放入 AArch64 上的寄存器中.(例如,MMIO 地址,与 PC 无关). 在 ARM32 上可以使用 lower16 &upper16 将地址加载到寄存器中 movw r0, #:lower16:my_addrmovt r0, #:upper16:my_addr 有没有办法在 AArch64 上使用 movk 做类似的事情? 如果代码重定位,我还是要
..
AArch64 本身是否支持非对齐访问?我问是因为目前 ocamlopt 假设“不". 解决方案 提供用于严格对齐检查的硬件位没有打开(这在 x86 上,没有通用操作系统实际上会这样做),AArch64 做了允许使用常规加载/存储指令对普通(而非设备)内存进行未对齐的数据访问. 然而,编译器仍然希望维护对齐数据的原因有几个: 读取和写入的原子性:自然对齐的加载和存储保证是原子的
..
我正在使用 aarch64-linux-gnu-objdump 反汇编部分 ARM v8 程序.它适用于 V8 64 位指令,但在模式更改为 V7 指令集(A32)时失败 - 代码作为 V8 指令集启动,切换到 A32(AArch32 执行状态),然后切换到 T32 - 拇指指令集.如何反汇编A32和T32指令?当模式切换时,我是否需要将代码分解成部分,以便我有单独的指令模式块? 任何帮助将
..
更新我的 Xcode 后出现重复符号错误.(找到代码)有人也得到这个吗?以及如何解决? 我试图从“其他链接器标志"部分删除 -ObjC 链接器标志,在导入 .m 而不是 .h 后检查, 将“No Common Blocks"编译器设置切换为 NO,我去了 Targets ->构建阶段 ->编译源代码,没有重复,尝试了所有没有结果. 还有其他想法吗? 重复符号 _space 在:/
..
我下载了新的 iOS Parse API (1.6.4) 并尝试构建我的项目.当我这样做时,我收到此错误: 架构 arm64 的未定义符号""_BFTaskMultipleExceptionsException",引用自:___53+[PFObject(Private) deleteAllAsync:withSessionToken:]_block_invoke214 in Parse(PFOb
..
几天前我创建了 static-library(通用),它与 Xcode5.0 SDK7 一起工作正常.使用 SDK7.1 更新 Xcode5.1 后,如果我选择模拟器 iPhone Retina(4-inch 64-bit),则不起作用.然后我将使用 Bellow 设置更改更新我的库. 我对三个目标做同样的事情:- 对于运动模拟器和设备,我放置了通用库,并在其中运行脚本:- 在此
..
我是 ARMv8 架构的新手.我有以下几个基本问题: 我如何知道当前的执行模式是 AArch32 还是 AArch64?我应该阅读 CPSR 还是 SPSR 来确定这一点? 当前的异常级别是什么,EL0/1/2/3? 一旦出现异常,我是否可以读取任何寄存器来确定我是否在 Serror/Synchronous/IRQ/FIQ 异常处理程序中. TIA. 解决方案
..
最近开始搞乱 AArch64 程序集,我注意到它有一个严格分配给 zero 的寄存器,而(大多数)其他架构你只会 xor var, var. 我正在阅读有关 zr 的网站将其解释为 零的参考点,这听起来很像我在直流电子中定义接地的方式.而且因为 ARM 被业余爱好者使用,所以在代码中将电路中的接地连接到零对我来说有点意义. 我敢肯定它比这复杂得多,但这是一个安全的类比吗?与其他获得“0
..
对于在原子数据类型的对象上执行的存储(例如,std::atomic),GCC 生成: MOV 指令在 release-store (std::memory_order_release) 的情况下, XCHG 指令,用于sequential-consistent-store (std::memory_order_seq_cst). 当目标架构是 x86_64 时.但是,当是ARM64(
..
我正在学习更多关于 shellcode 和在 iOS 设备上使用 arm64 进行系统调用的知识.我正在测试的设备是 iPhone 6S. 我从这个链接 (https://github.com/radare/radare2/blob/master/libr/include/sflib/darwin-arm-64/ios-syscalls.txt).> 我从这里了解到 x8 用于放置 arm
..
我已经下载了最新的 qemu Windows 版本,然后在下面一行运行 qemu-system-aarch64 -M virt,gic_version=3 -cpu cortex-a53 -smp 2 -nographic-m 2048 -kernel mybaremetal.axf -s -S 模拟一个双核cortex-a53,我可以用aarch64 gdb客户端连接它,在mybaremet
..
我正在使用 arm64 汇编代码,我想使用 svc 指令实现系统调用.我在网上找不到任何可用的 arm64 系统调用实现.另外,我找不到 arm64 的系统调用列表.还解释了实现. 解决方案 可以将x0中的六个参数传递给x5,返回值保存在x0. 为了给出汇编代码片段,这是来自 Android Bionic 的 libc 实现.write 的三个参数已经在 x0-x2 中.系统调用号在
..
我看过几个脚本来为 armv7、7s 和 i386 构建 FFmpeg API,但找不到任何也适用于 armv64 的脚本.本论坛其他线程上的一些答案建议为 arm64 准备一个单独的库,但它不适用于其他体系结构.因此,我需要一个脚本,它可以适用于所有支持的 iOS 架构,包括 armv7、armv7s、armv64 和 i386. 解决方案 我使用以下脚本为 arm64 构建 FFmpe
..
ADRP 相对于 PC 偏移的 4KB 页地址. ADRL 将与 PC 相关的地址加载到寄存器中.它类似于 ADR操作说明.ADRL 可以加载比 ADR 更广泛的地址范围,因为它生成两个数据处理指令. 具体来说, ADRL 汇编为两条指令,一条 ADRP 后跟 ADD.如果汇编器不能用两条指令构造地址,它产生重定位.然后链接器生成正确的偏移量.ADRL 产生与位置无关
..
为了将我的应用程序转换为 64 位,我将架构构建设置更改为: ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; 应用程序运行良好,只是有些图像没有显示(空白).为什么会发生?有什么线索吗? 解决方案 答案在这里: https://devforums.apple.com/message/922989#922989 我找到了原因
..