Resultados de la búsqueda a petición "inline-assembly"
¿Mediciones negativas del ciclo de reloj con rdtsc consecutivo?
Estoy escribiendo un código C para medir la cantidad de ciclos de reloj necesarios para adquirir un semáforo. Estoy usando rdtsc, y antes de hacer la medició...
Leyendo un valor de registro en una variable C
Recuerdo haber visto una forma de usar el ensamblaje en línea de gcc extendido para leer un valor de registro y almacenarlo en una variable C. No puedo pensa...
Llamar a printf en ASM en línea extendido
Estoy tratando de generar la misma cadena dos veces en ASM en línea extendido enCCG, en Linux de 64 bits. int main() { const char* test = "test\n"; asm( "movq %[test], %%rdi\n" // Debugger shows rdi = *address of string* "movq $0, %%rax\n" "push ...
Definición de bytes en el ensamblado en línea de GCC en Dev-C ++ (. Ascii en la sintaxis de AT&T en Windows)
El siguiente código solo muestra un cuadro de mensaje en la pantalla. Las direcciones están codificadas para facilitar: int main () { asm("xorl %eax, %eax \n" "xorl %ebx, %ebx \n" "xorl %ecx, %ecx \n" "xorl %edx, %edx \n" "pushl %ecx \n" //$0x0 ...
Etiquetas en el ensamblaje en línea GCC
En mi experimentación en curso con el ensamblaje en línea de GCC, me he encontrado con un nuevo problema con respecto a las etiquetas y el código en línea. Considere el siguiente salto simple: __asm__ ( "jmp out;" "out:;" : : );Esto no hace ...
¿Cómo especificar un registro individual como restricción en el ensamblaje en línea ARM GCC?
en el ensamblaje en línea x86 puedo escribir algo como esto: asm ("cpuid" : "=a" (_eax), "=b" (_ebx), "=c" (_ecx), "=d" (_edx) : "a" (op)); así que en las restricciones de coincidencia en lugar de simplemente escribir "= r" y dejar que el ...
¿Hay una instrucción equivalente a rdtsc en ARM?
Para mi proyectoDebo usar las instrucciones de montaje en líneacomordtscpara calcular el tiempo de ejecución de algunas instrucciones C / C ++. El siguiente código parece funcionar en Intel pero no en procesadores ARM: {unsigned a, d;asm ...
Implementando un matcher para la expresión regular '[ab] [^ r] + r]' en el ensamblaje
Necesito ayuda con mi código de ensamblaje. Necesito usar el código de escritura, que encontrará el rango, que se adapte a mi expresión regex. Mi expresión regular:[ab][^r]+r, así que primero estoy buscando si hay 'a' o 'b' y salto a la sección ...
¿Trabaja el ensamblaje en línea en C para la paridad de bits?
Estoy tratando de calcular elparidad de bitsde una gran cantidad de uint64's. Por paridad de bits me refiero a una función que acepta un uint64 y genera 0 si el número de bits establecidos es par, y 1 en caso contrario. Actualmente estoy usando ...