Я хочу написать некоторую встроенную сборку ARM в моем коде на C. Для этого кода мне нужно использовать регистр или два больше, чем только те, которые объявлены как входы и выходы функции. Я знаю, как использовать список clobber, чтобы сообщить GCC, что я буду использовать несколько дополнительных регистров для выполнения своих вычислений.
Однако я уверен, что GCC может свободно выбирать, какие регистры и для чего используются при оптимизации. То есть я чувствую, что использовать фиксированный регистр для моих вычислений - плохая идея.
Как лучше всего использовать дополнительный регистр, который не является ни входом, ни выходом моей встроенной сборки, без использования фиксированного регистра?
P.S. Я думал, что использование фиктивной выходной переменной может помочь, но я не уверен, какие еще странные эффекты будут иметь ...