arm64相关内容
我有一个函数原型 int Palindrome(const char *c_style_string); 在ARM v8汇编中,我相信参数存储在寄存器w0中.但是,这不也是ret输出值的寄存器吗? 如果是这样,我需要做什么才能使值不被覆盖?我在我的代码开头考虑了类似 mov w0, w1 的东西,这样每当我解析它时我都会将 c_style_string 称为 w1,然后编辑 w0 来存
..
我正在尝试从 Android Studio 3.4.2 为 aarch64 运行一些内联汇编代码,但出现编译错误 错误:尚不知道如何处理约束 'r' 的间接寄存器输入. 我的代码片段如下 std::string system_file = "/system/bin/sh";std::int64_t file_descriptor = -1;#ifdef __aarch64____asm
..
我试图在 x86_64 和 aarch64/arm64 上运行的应用程序之间完全匹配行为.但是,当浮点数超出可能的整数范围时,它们的不同之处在于它们如何将浮点数转换为整数. 考虑以下示例: #include #include 无效转换(浮点值){printf("uint32_t(%.2f) = %u\n", value, uint32_t(value));}int main() {演员 (
..
我有一个具有 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 位)
..
根据将于 8 月生效的新 Play 商店政策 * 我需要确保我的应用不仅提供 32 位版本,还提供 64 位版本,但是当我尝试生成该版本时通过 NDK,我总是得到相同的库.经过反复尝试,我刚刚收到一个没有任何“lib"文件夹的apk. 我尝试在 gradle 上使用 abiFilters 设置 NDK,但没有任何更改... defaultConfig {applicationId "com
..
我正在 64 位 Aarch64 设备上的 ARM 下学习 GCC 内联汇编器.我看到一条我不太明白的错误消息.GCC 内联汇编器中的错误消息: $ gcc -DNDEBUG -g3 -O1 -march=armv8-a+crc+crypto test.cc -o test.exe/tmp/ccCHOWrn.s:汇编程序消息:/tmp/ccCHOWrn.s:19: 错误:在操作数 1 处无效使用
..
我保存&使用以下方法检索字典中的 BOOL 值. [userData setObject:@YES forKey:@"IS_AGENT"];(BOOL) [userData objectForKey:@"IS_AGENT"]; 在上面的代码中,在重试字典中的 bool 值时,我在以下设备 iPhone5s、iPhone5c、iPhone6、iPhone6+ 中总是出错,它们具有 iOS 8.1
..
代码在 armv7 上运行良好,但针对 arm64 进行编译时会抛出此“必须在需要之前从模块‘Darwin.POSIX.sys.xattr’导入‘setxattr’声明"错误. u_int8_t b = 1;setxattr([路径文件系统表示],"com.apple.MobileBackup", &b, 1, 0, 0); 有什么帮助吗? 解决方案 我找到了解决方案.在类中包含#in
..
我正在尝试在具有 64GB 内存的 ARM64 机器上保留 512MB 的 CMA 内存,并且在 linux 启动期间我会收到“cma:无法保留 512MiB"错误消息.保留 384MB 工作正常.如果您需要更多信息,请告诉我.我很感激任何帮助. [ESL_Start_OS]:[644L] 开始跳转Linux内核在物理 CPU 0x10000 上启动 Linux初始化 cgroup subsys
..
我面临以下情况: 32 位设备 + 应用 armv7 + 动态库 armv7 arm64 =工作 64 位设备 + 应用 armv7 + 动态库 armv7 arm64 =不起作用 不起作用 - 应用在加载时崩溃并出现以下错误: dyld 错误消息库未加载原因未找到合适的图像 有什么解释吗? 解决方案 说明:加载到 64 位设备上的 32 位二进制文件无法执行
..
我面临以下情况: 32 位设备 + 应用 armv7 + 动态库 armv7 arm64 =工作 64 位设备 + 应用 armv7 + 动态库 armv7 arm64 =不起作用 不起作用 - 应用在加载时崩溃并出现以下错误: dyld 错误消息库未加载原因未找到合适的图像 有什么解释吗? 解决方案 说明:加载到 64 位设备上的 32 位二进制文件无法执行
..
我的应用程序中有以下设置来支持 64 位架构,但是当我提交到应用程序商店进行 Beta 测试时,它给我一个错误,表明您的应用程序不支持 64 位.原因可能是什么? 解决方案 再试一次 1-清洁(第一次)2-构建(第二)3-存档(第三) 这可能是解决方案!
..
我已经能够让两种很棒的技术独立工作. Skaffold BuildX 很遗憾我不知道如何同时使用它们. 我目前正在我的笔记本电脑 (amd) 上构建和测试,然后部署到运行 Kubernetes 的 Raspberri Pi 4 (arm64). 为了让它工作,我使用了类似的东西: docker buildx build --platform linux/amd64,li
..
在 Ubuntu 17.04 上,安装 aarch64-linux-gnu-as,编译以下汇编代码: # code.s_开始:x0 女士,icc_igrpen0_el1 与 aarch64-linux-gnu-as code.s 给出以下错误: as.s: 汇编消息:as.s:3: 错误:操作数 2 处的系统寄存器名称未知或丢失——`mrs x0,icc_igrpen0_el1'
..
我在 锆石内核启动.S str x0, [tmp, #:lo12:zbi_paddr] 用于 ARM64.我还发现 zbi_paddr 是在 C++ 中定义的: extern paddr_t zbi_paddr; 所以我开始研究 #:lo12: 是什么意思. 我发现 https://stackoverflow.com/a/38608738/6655884 看起来不错,但是它没有解释最
..
我正在编译我的第一个项目并启用 64 位支持.我遇到了一堆关于隐式转换为浮点数的编译器警告.发生这种情况是因为我正在使用 fabsf() 并将结果分配给一个 CGFloat(在新的 64 位架构上这是一个双精度值,而不是浮点值). 根据这个问题的答案: 基于 CGFloat 的数学函数? 我只需要#include 来解决这个问题,并且可能将fabsf 更改为fabs.我至少有一个
..
Microsoft 最近发布了他们的 ARM64 构建工具,作为 Visual Studio 15.9 的一部分.我正在完成对 ARM64 的移植.多项式乘法有问题. 我遇到的问题是,Microsoft 没有提供像 poly64_t 这样的预期数据类型,或者像 vreinterpretq_u64_p128 这样的转换.另请参阅 arm64_neon.h 在 GitHub 上. 编译失败
..
查看反汇编代码,我看到如下指令: adrp x8,l066@PAGE添加 x8,x8,l066@PAGEOFF 它们是在某处定义的偏移标签吗?以及如何找到它们的价值? 解决方案 @page 和 @pageoff 是汇编指令,用于计算链接时的偏移量.@page 取符号的位置无关的 4k 页偏移量,并使用 PC 将其转换为绝对页地址.@pageoff 给出符号所在页面的偏移量.它们一起能够
..
我找到了为 arm64 构建非 FIPS openssl 的参考,但我需要构建 FIPS 版本. https://github.com/GotoHack/iOS-openSSL-FIPS 构建 armv7 版本,但我似乎无法将它们扩展到 arm64.有没有人成功做到这一点? 我是用os-x编译的,目标是IOS 解决方案 我找到了为 arm64 构建非 FIPS openss
..
test.c(裸机) #include int add1(int a, int b){国际 c;c = a + b;返回 c;}int main(){整数 x, y, z;x = 3;y = 4;z = add1(x,y);printf("z = %d\n", z);} 我做 aarch64-none-elf-gcc test.c -specs=rdimon.specs 并得到 a.out.我
..