Compilação condicional no código assembler (.s) para iPhone - como?
Eu tenho algumas linhas de código de braço assembler em um arquivo. Apenas algumas rotinas que eu preciso ligar. Ele funciona bem ao construir para o dispositivo, no entanto, quando eu mudo para o iPhone Simulator eu recebo "sem tais instruções" erros. Eu tentei compilar partes do arquivo .s condicionalmente com o que eu sei:
#if !TARGET_IPHONE_SIMULATOR
Mas o montador não reconhece essas diretivas pré-processador (é claro) e nenhuma das técnicas de compilação condicional para o assembler que eu conseguia lembrar ou achava funcionava, então estou coçando a cabeça agora sobre como evitar a compilação desse código montador ao construir para o simulador. Eu também não vejo uma opção de projeto no Xcode que me permita compilar o arquivo ou não, dependendo da plataforma de destino.
RESOLVIDO:
Tudo o que eu estava faltando era o #import apropriado no arquivo assembler. Eu não pensei em adicioná-lo porque a sintaxe do Xcode destacou qualquer diretiva de pré-processador em verde (comentário), o que me fez supor que esses comandos não são reconhecidos quando, na verdade, funcionam muito bem.
Isso funciona:
#import "TargetConditionals.h"
#if !TARGET_IPHONE_SIMULATOR
... asm code here ...
#endif