Цикл препроцессора '#rep #endrep' не работает на Xcode? - PullRequest
3 голосов
/ 21 декабря 2011

Я хочу повторить часть кода сборки кронштейна, как это делает препроцессор nasm:

 #rep 4
 .......
 vadd.u8 q0,q2
 .......
 #endrep

Он проходит компиляцию, но на самом деле не работает. Есть идеи? Спасибо!

1 Ответ

3 голосов
/ 21 декабря 2011

Использовать .rept

.rept 4
  ……
  vadd.u8 q0, q2
  ……
.endr

Редактировать: ОК, оказалось, что iPhone SDK использует древнюю версию GNU как (1.38), поэтому .reptне может быть использован.Вы можете использовать макрос для имитации этого, например,

.macro dummy_macro_ahjd
 .if $0
  vadd.u8 q0, q2
  dummy_macro_ahjd ($0-1)
 .endif
.endmacro

main:
 dummy_macro_ahjd 4
...