Эффективная комплексная арифметика в ассемблере x86

Рассмотрим следующую программу :

for i=1 to 10000000 do
  z <- z*z + c

, где zи c— комплексные числа.

Каковы эффективные реализации этой программы на ассемблере x86 с использованием x87 и SSE, арифметики с одинарной и двойной точностью?

РЕДАКТИРОВАТЬ Я знаю, что могу написать это на другом языке и доверить компилятору создание оптимального машинного кода для меня, но я делаю это, чтобы научиться писать оптимальный ассемблер x86 самостоятельно. Я уже просмотрел код, сгенерированный gcc -O2, и полагаю, что есть много возможностей для улучшения, но я недостаточно сведущ, чтобы написать оптимальный ассемблер x86 вручную, поэтому я прошу помощи здесь.

5
задан harold 30 April 2012 в 18:41
поделиться