arm64相关内容
我正在尝试在aarch64 Linux docker容器中编译一个rust应用程序,以便在raspberry pi 4上运行。除了包不是纯粹的rust并使用c库之外,我还有其他工作要做。ring crate就是这样的一个例子,当我尝试在不设置ENV TARGET_CC=something的情况下构建环库时,它失败了,错误如下: #18 32.35 Compiling ring v0.1
..
为了将我的应用程序转换为 64 位,我将架构构建设置更改为: ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; 应用程序运行良好,只是某些图像未显示(空白).为什么会发生?有什么线索吗? 解决方案 答案就在这里: https://devforums.apple.com/message/922989#922989 我找到了原因
..
来自 android 开发者网站,https://developer.android.com/distribute/best-practices/develop/64-bit 很明显,从 2019 年 8 月 1 日开始,在 Google Play 上发布的应用程序将需要支持 64 位架构. 我们当前的应用具有 armeabi-v7a、arm64-v8a、x86 ABI 的本机库,但没有 x
..
我需要将 32 位绝对地址放入 AArch64 上的寄存器中.(例如,MMIO 地址,不是 PC 相关的). 在 ARM32 上可以使用 lower16 &upper16 将地址加载到寄存器中 movw r0, #:lower16:my_addrmovt r0, #:upper16:my_addr 有没有办法通过使用 movk 在 AArch64 上做类似的事情? 如果代码重定位,
..
我已经下载了最新的 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 客户端连接到它,在 mybare
..
ADRP PC 相对偏移处的 4KB 页面地址. ADRL 将相对于 PC 的地址加载到寄存器中.它类似于 ADR操作说明.ADRL 可以加载比 ADR 更广泛的地址,因为它会生成两条数据处理指令. 具体来说, ADRL 汇编成两条指令,一条是 ADRP,然后是 ADD.如果汇编器不能用两条指令构造地址,它产生重定位.然后链接器生成正确的偏移量.ADRL 产生与位置无
..
我有一个具有 32 位本机库的应用程序.当我使用 64 位库重新安装同一个应用程序时,无法创建存在于 data/data/application-package-name 中的 lib 软链接. 这个 lib 软链接映射到 data/app/app-package-name-hash/arm(32 位)或 data/app/app-package-name-hash/arm64(64 位)
..
实际上,我的原始代码在 Xcode 5.0.2 上运行良好,也非常适合发送到 App Store: objc_msgSend(self.target, self.successAction, category); 此行导致 Xcode5.1 beta5 崩溃.我找到了解决崩溃的解决方案:SudzC ARC 版本 -objc_msgSend 调用导致 EXC_BAD_ACCESS 使用 64 位
..
这是我的汇编代码和我的主要子程序.这是我的宏和常量: .textfmt: .string "x \t\t ln(x)\n"sfmt: .string "%.10lf \t %.10lf\n"错误:.string“错误"文件名:.string "input.bin".数据LIM:.double 0r1.0E-13零:.double 0r0.0一:.double 0r1.0一半:.double 0
..
ARMv8 是否没有 64 位堆栈的能力?我知道 AArch64 上没有推送和弹出指令,因此堆栈管理是否留给 AArch32 进行参数传递等?我们如何传递 48 位地址?我对在 AArch64 中运行时函数调用的工作方式感到困惑. 解决方案 很像 32 位*,SP 是 任何加载/存储指令,所以机制并没有什么不同.不同的是,SP 不再是一个通用寄存器,你可以随心所欲,不再有变量加载/存储多个
..
为了将我的应用程序转换为 64 位,我将架构构建设置更改为: ARCHS = "$(ARCHS_STANDARD_INCLUDING_64_BIT)"; 应用程序运行良好,只是有些图像没有显示(空白).为什么会发生?有什么线索吗? 解决方案 答案在这里: https://devforums.apple.com/message/922989#922989 我找到了原因
..
我在 NSLog/NSAssert 等调用中有相当数量的字符串格式说明符,它们使用 %d 和 %u 和 NSInteger (= int on 32bit) 和 NSUInteger (= unsigned int on 32bit) 类型分别. 当将应用程序转换为 64 位时,这会发出警告(当然),因为 %ld %lu 预计现在变成了 long 和 unsigned长类型. 简单地转
..
有谁知道如何为 ARM64 发布 .NET Core 3.0 应用程序?我只能选择“linux-arm"而不能选择“linux-arm64".将 linux-arm 与 x64 结合设置也不起作用.它说设置不兼容. 正如此处所述,它应该已经得到支持:https://github.com/dotnet/core/blob/master/release-notes/3.0/3.0-support
..
我有一个在 Windows 操作系统中运行良好的项目,但是当我更换笔记本电脑并在 MacBook Pro M1 中打开一个现有项目时.我无法在 MacBook pro M1 中运行现有的 android 项目.首先我得到了 任务“:app:kaptDevDebugKotlin"的执行失败.>失败执行时发生org.jetbrains.kotlin.gradle.internal.KaptExe
..
如果您最近使用这些软件为 iOS(armv7、arm64)构建了应用程序,请注意分享:您使用了哪些版本的 unity、vuforia、xcode. 解决方案 注意:本回答基于问题评论中的信息. iOS 64 位要求 自 2015 年 2 月 1 日起,Apple 强制 iOS 开发者在向 App Store 提交新应用时提供 64 位二进制文件. 来源:https:/
..
如果我从 Xcode 的构建设置中删除 arm64 架构,而在我的应用中只保留 armv7 和 arm7s,会发生什么? 可能会出现哪些问题? 我的应用可以在所有 iOS 设备上运行吗? 解决方案 您的应用应该继续工作.但是,截至 2015 年 6 月 1 日,所有上传到 Apple App Store 的应用都必须包含 arm64 切片.
..
我对在 aarch64 汇编器上实现“switch"运算符的方法很感兴趣.在 arm32 平台上,我使用了类似 ldr pc, [pc, ta, LSL#2]nop//对齐.int .L.case1.int .L.case2....int .L.caseN 但由于 64 位版本对 'pc' 寄存器的使用有很多限制,这样的实现不再起作用. 似乎最简单的方法是使用对比较和分支操作,如 c
..
在为 iOS-ARM64 构建 libetpan 时, 我在 libetpan for mac 项目的准备脚本中添加了日志记录功能.Xcode 失败并出现奇怪的错误,仅在构建 ARM64 目标期间.这是下面的 xcode 日志: 配置运行 prepare-cyrus-sasl.sh准备资源修补文件 lib/client.c建筑工具正确生成 makemd5i386为 iPhoneOS 构建
..
Cortex-A35 处理器,AArch64 模式.在设置 MMU 和 GIC 之前,我正在尝试从 EL3 转到非安全 EL1: msr VTTBR_EL2, xzrmov x0, SCR_EL3.RES1 或 SCR_EL3.NS 或 SCR_EL3.RW 或 SCR_EL3.STmsr SCR_EL3, x0mov x1, SPSR.M.AArch64_EL1h 或 SPSR_EL3.A
..
出于学术原因,我将在 AArch64 上测试 sqrt 函数的性能.单浮点sqrtf函数的代码: fsqrt s0, s0退 双浮点sqrt函数的代码: fsqrt d0, d0退 我指的是此处 FSQRT 的理论延迟:http://infocenter.arm.com/help/topic/com.arm.doc.uan0015b/Cortex_A57_Software_Optimiza
..