arm64

Error: invalid use of vector register at operand 1

给你一囗甜甜゛ 提交于 2019-12-11 04:32:46
问题 I'm learning GCC inline assembler under under ARM on a 64-bit Aarch64 device. I'm seeing an error message I don't quite understand. The error message in from GCC's inline assembler: $ gcc -DNDEBUG -g3 -O1 -march=armv8-a+crc+crypto test.cc -o test.exe /tmp/ccCHOWrn.s: Assembler messages: /tmp/ccCHOWrn.s:19: Error: invalid use of vector register at operand 1 -- `pmull v0,v0,v0' The sample program simply tries to exercise the polynomial multiply: $ cat test.cc #include <arm_neon.h> int main(int

Building OpenSSL FIPS for arm64

﹥>﹥吖頭↗ 提交于 2019-12-11 02:57:51
问题 I've found references for building non-FIPS openssl for arm64 but I need to build the FIPS version. Projects like https://github.com/GotoHack/iOS-openSSL-FIPS build armv7 versions but I can't seem to extend them to arm64. Has anyone successfully done this? I'm using os-x to compile, the target is IOS 回答1: I've found references for building non-FIPS openssl for arm64 but I need to build the FIPS version. You can't at the moment. The platform (iOS, ARM64, A7/A8 chips) has not been validated.

How to perform polynomial multiplication using ARM64?

落爺英雄遲暮 提交于 2019-12-10 23:37:22
问题 Microsoft released their ARM64 build tools recently as part of Visual Studio 15.9. I'm finishing a port to ARM64. I'm having trouble with polynomial multiplication. The problem I am having is, Microsoft does not provide the expected data types like poly64_t , or casts like vreinterpretq_u64_p128 . Also see arm64_neon.h on GitHub. This fails to compile: #include <arm64_neon.h> poly128_t VMULL_P64(const poly64_t a, const poly64_t b) { return vmull_p64(a, b); } And the result: test.cxx(2): error

Cassandra Startup failure on ARM64 machine (java.lang.NoClassDefFoundError: Could not initialize class com.sun.jna.Native)

亡梦爱人 提交于 2019-12-10 19:47:31
问题 When i am trying to start cassandra 3.9 and also 3.7 on ARM64 machine running 64 bit oracle JDK. But it is failing to start with no class def found error. There seems to be issue with JNA. However same is running fine on ARM32 machines. Below is the startup log of cassandra :- pi@DietPi:~/cassandra/apache-cassandra-3.9/conf$ ../bin/cassandra -f CompilerOracle: dontinline org/apache/cassandra/db/Columns$Serializer.deserializeLargeSubset (Lorg/apache/cassandra/io/util/DataInputPlus;Lorg/apache

Undefined symbols issue with GoogleMobileAds

时间秒杀一切 提交于 2019-12-10 19:09:40
问题 I am building dynamic framework in which i am importing GoogleMobileAds framework (i am not linking it as binary) I am simply importing it in the class code while keeping the framework on the project path without linking it in the "Link binary" in the build phases import GoogleMobileAds I am getting this error when trying to build the project: Undefined symbols for architecture arm64: "_OBJC_CLASS_$_GADInterstitial", referenced from: static VeediSDK_admob.VeediUtils.loadNewAdd (VeediSDK_admob

Why/how does gcc compile the undefined behaviour in this signed-overflow test so it works on x86 but not ARM64?

牧云@^-^@ 提交于 2019-12-10 18:01:13
问题 I was self-studying CSAPP and got a strange result when I ran into a strange issue during the run of a assertion test. I'm not sure what to start this question with, so let me get the code first (file name visible in comments): // File: 2.30.c // Author: iBug int tadd_ok(int x, int y) { if ((x ^ y) >> 31) return 1; // A positive number and a negative integer always add without problem if (x < 0) return (x + y) < y; if (x > 0) return (x + y) > y; // x == 0 return 1; } // File: 2.30-test.c //

Porting ARM NEON code to AARCH64, many questions

你说的曾经没有我的故事 提交于 2019-12-10 17:53:55
问题 I'm porting some ARM NEON code to 64-bit ARM-v8, but I can't find a good documentation about it. Many features seems to be gone, and I don't know how to implement the same function without using them. So, the general question is: where can I find a complete reference for the new SIMD implementation, including explanation of how to do the same simple tasks which are explained in the many ARM-NEON tutorials? Some questions about particular features: 1 - How do I load a value in all the lane of

Handling CGFloat with an NSScanner on arm64

孤者浪人 提交于 2019-12-10 14:55:50
问题 Apparently CGFloat is double on arm64: #if defined(__LP64__) && __LP64__ # define CGFLOAT_TYPE double # define CGFLOAT_IS_DOUBLE 1 # define CGFLOAT_MIN DBL_MIN # define CGFLOAT_MAX DBL_MAX #else # define CGFLOAT_TYPE float # define CGFLOAT_IS_DOUBLE 0 # define CGFLOAT_MIN FLT_MIN # define CGFLOAT_MAX FLT_MAX #endif So the code NSScanner *scanner = [NSScanner scannerWithString:string]; CGFloat c[components]; [scanner scanFloat:&c[i]] which was working fine for 32-bit apps, is broken for 64-bit

method_getImplementation crashes on 64-bit iphone 5s

强颜欢笑 提交于 2019-12-10 11:57:49
问题 I have a piece of code in my project - (NSData *)getIvars:(unsigned int *)count from:(id)class_name NS_RETURNS_RETAINED { @synchronized(self) { SEL selector = @selector(copyIvarList:from:); Method grannyMethod = class_getInstanceMethod([class_name class], selector); IMP grannyImp = method_getImplementation(grannyMethod); return grannyImp([class_name class], selector, count, [class_name class]); } } - (NSData *)copyIvarList:(unsigned int *)count from:(id)class_name NS_RETURNS_RETAINED {

MCR and MRC does not exist on AARCH64?

…衆ロ難τιáo~ 提交于 2019-12-08 09:29:07
问题 I am trying to compile "mrc" and "mcr" instruction on AARCH64 based on Board but I am seeing below error message tmp/ccqOHmrK.s: Assembler messages: /tmp/ccqOHmrK.s:43: Error: unknown mnemonic `mrc' -- `mrc p15,0,x0,c14,c3,1' /tmp/ccqOHmrK.s:53: Error: unknown mnemonic `mrc' -- `mrc p15,0,x2,c14,c3,0' I tried looking into the kernel source /arch/arm64 but no where mcr&&mrc has been used without emulation. Is it some syntax issue? 回答1: You should replace these with the appropriate msr