Tag: ARM64
¿Las versiones de Android >= 5.0 garantizan algo acerca del acceso no alineado en procesadores ARM64? ¿O al menos hay una garantía implícita basada en cómo está configurado Linux? Sé que ARM de 32 bits no lo permite, pero solo me interesa el de 64 bits. También conozco las limitaciones . . . Read more
Mientras se define una variable en una sección como esta, .section “.__mydebug”, “aw” mydstart: .double 0x123456789abcdef0 myptr: .double 0x8888888899999999 Obtengo el siguiente resultado, arch/arm64/kernel/head.S:994: Error: basura al final de la línea, el primer carácter no reconocido es `a'’ Si cambio 0x123456789abcdef0 a 0x1234567890000000, se compila correctamente. Parece que el compilador . . . Read more
x86_64 tiene una instrucción movdir64b, que según mi entendimiento es una copia no temporal (al menos en la escritura) de 64 bytes (una línea de caché). AArch64 parece tener una instrucción similar llamada st64b, que realiza una escritura atómica del mismo tamaño. Sin embargo, la documentación oficial de ARMv9 no . . . Read more
Estoy tratando de compilar en cruz un ejemplo de código Rust como biblioteca para una plataforma de bare-metal AArch64 en Linux (KDE-Neon). Desafortunadamente, no funciona. Este es mi ejemplo de código Rust (lib.rs): #![no_std] #![no_mangle] pub extern “C” fn double_value(a: u32) -> u32 { a / 2 } Según [1], . . . Read more
En mis aventuras experimentando con la arquitectura ARM de 64 bits, noté una peculiar diferencia de velocidad dependiendo de si se usa “br” o “ret” para regresar de una subrutina. ; Fabricado con fines de aprendizaje/experimentación únicamente, sin ningún uso práctico foo: cmp w0, #0 b.eq .L0 sub w0, w0, . . . Read more