Pergunta

Ontem eu soube que em linha de montagem (com a palavra chave __asm) não é suportada no Microsoft Visual C ++ para compilar para alvos AMD64 e Itanium.

Isso está correto? E se assim for, alguém sabe por que eles não iria apoiar em linha de montagem para essas metas? Parece uma bastante grande recurso para apenas gota ...

Foi útil?

Solução

Correto, ele ainda não é suportado em VS 2010 beta 1 . Meu palpite é que em linha de montagem é muito difícil de implementar: a forma como a Microsoft implementou-lo, ele se integra com o código C em torno de modo que os dados podem fluir para dentro e fora do código C e código de cola apropriada é automaticamente injetado. Para isso, o compilador C realmente precisa entender o código assembler; eles simplesmente não têm implementado que para AMD64 e Itanium.

Outras dicas

Parece uma bastante grande recurso para apenas gota ...

É muito fácil para chamar uma função escrito com um montador, contanto que você seguir as convenções C. Este tutorial explica como.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top