Resultados da pesquisa a pedido "inline-assembly"

4 a resposta

Existe uma maneira de inserir código de montagem em

Lembro-me de antigamente com o antigo compilador borland DOS, você poderia fazer algo assim: asm { mov ax,ex etc etc... } Existe uma maneira independente de semi-plataforma para fazer isso agora? Eu preciso fazer uma chamada de BIOS, portanto, ...

5 a resposta

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. ...

3 a resposta

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 ...

5 a resposta

Como especificar números de ponto flutuante imediatos com montagem em linha?

Quando tento compilar este código: #include <stdio.h> main(int argc, char *argv[]) { double y = 0; __asm__ ("fldl $150;" "fsqrt;" "fstl %0;" : : "g" (y) ); printf("%f\n", y); return 0; }Eu recebo este erro: sqrt.c: Assembler messages: sqrt.c:6: ...

3 a resposta

Maneira correta de agrupar CMPXCHG8B no conjunto embutido do GCC, 32 bits

Estou tentando escrever asm inline do GCC para CMPXCHG8B para ia32. Não, não consigo usar__sync_bool_compare_and_swap. Tem que trabalhar com e sem -fPIC. Até agora, o melhor que eu tenho EDITA: não funciona, afinal, veja minha própria resposta ...

1 a resposta

Chamar uma função no assembly in-line do gcc

Digo, eu quero chamar uma função com a seguinte assinatura no assembly embutido do gcc. Como eu posso fazer isso int some_function( void * arg );

2 a resposta

omo escrever códigos de montagem em linha sobre LOOP no Xcode LLV

Estou estudando sobre montagem em linha. Quero escrever uma rotina simples no iPhone no Xcode 4 LLVM 3.0 Compiler. Consigo escrever códigos básicos de montagem em linh example: int sub(int a, int b) { int c; asm ("sub %0, %1, %2" : "=r" (c) : ...

3 a resposta

Como usar uma variável global na montagem em linha do gcc

Estou tentando usar o assembly embutido como este, para uma variável global, mas o compilador apresenta um erro dizendo uma referência indefinida a saved_sp. __asm__ __volatile__ ( "movq saved_sp, %rsp\n\t" ); saved_sp é declarado comostatic ...

6 a resposta

Visual C ++ x64 adicionar com carry

Como não parece ser intrínseco ao ADC e não posso usar o assembler inline para arquitetura x64 com o Visual C ++, o que devo fazer se quiser escrever uma função usando add with carry, mas incluí-la em um namespace C ++ ? (Emular com operadores ...

4 a resposta

Posso usar a sintaxe Intel da montagem x86 com o GC

Quero escrever um pequeno programa de baixo nível. Para algumas partes, precisarei usar a linguagem assembly, mas o restante do código será escrito em C / C + Então, se vou usar o GCC para misturar C / C ++ com código de montagem, preciso usar ...