Должно быть только три двоеточия, а не четыре.
Аргументы, следующие за первым двоеточием, определяют входные данные, затем выходные данные, а затем список сглаживающих символов.
Если у вас есть несколько параметров, вы можете использовать запятую, а не двоеточие.
В вашем примере. Я предполагаю, что temp - это ваш вывод, а treg5, fac5 - ваш ввод.
Вы, вероятно, хотите что-то вроде этого.
__asm__("smlatb %0, %1, %2, %0 \n\t"
: "=r"(Temp)
: "0"(Temp), "r"(treg5), "r"(fac5)
:);
Кстати, в библиотеке vfpmath есть несколько хороших примеров сборки iphone ARM.