Resultados da pesquisa a pedido "inline-assembly"
Digitalize de stdin e imprima para stdout usando montagem embutida no gcc
Como ler do stdin e gravar no stdout no assembly inline gcc, assim como fazemos no NASM: _start: mov ecx, buffer ;buffer is a data word initialised 0h in section .data mov edx, 03 mov eax, 03 ;read mov ebx, 00 ;stdin int 0x80 ;Output the ...
Montagem em linha que derruba a zona vermelha
Estou escrevendo um programa de criptografia, e o núcleo (uma ampla rotina de multiplicação) é escrito no assembly x86-64, tanto para velocidade quanto porque usa extensivamente instruções comoadc que não são facilmente acessíveis a partir de C. ...
assembly embutido clang (LLVM) - várias restrições com vazamentos / recarregamentos inúteis
clang / gcc : Alguns operandos de montagem inline podem ser satisfeitos com várias restrições, por exemplo,
Como ter o GCC combinado “move r10, r3; armazenar r10 "em um" armazenamento r3 "?
Estou trabalhando no Power9 e utilizando a instrução de gerador de número aleatório de hardware chamada DARN. Eu tenho o seguinte assembly embutido: uint64_t val; __asm__ __volatile__ ( "xor 3,3,3 \n" // r3 = 0 "addi 4,3,-1 \n" // r4 = -1, ...
Erro de montagem em linha do gcc "incompatibilidade de tipo de operando para mov"
//quick inline asm statements performing the swap_byte for key_scheduling inline void swap_byte(unsigned char *x, unsigned char *y) { unsigned char t; asm("movl %1, %%eax;" "movl %%eax, %0;" :"=r"(t) :"r"(*x) :"%eax"); asm("movl %1, %%eax;" "movl ...
Existe uma instrução equivalente ao rdtsc no ARM?
Para o meu projetoDevo usar instruções de montagem em linhatal comordtscpara calcular o tempo de execução de algumas instruções C / C ++. O código a seguir parece funcionar na Intel, mas não nos processadores ARM: {unsigned a, d;asm ...
Não é possível ler de volta do MSR
Eu estou escrevendo um módulo de kernel e é sobre ler e escrever MSRs. Eu escrevi um programa simples para testar, mas ainda falha. Tudo o que está fazendo é...
Endereço de etiquetas (MSVC)
Estamos escrevendo um código de bytes para uma linguagem compilada de alto nível e, após alguns perfis e otimizações, ficou claro que a maior sobrecarga de desempenho atual é a instrução switch que estamos usando para ir para os casos de códigos ...