Module 13: INTRODUCTION TO COMPILERS FOR HIGH PERFORMANCE COMPUTERS
  Lecture 26: SIMD Architecture
 


Example 1

unsigned int fib(m)
unsigned intm;
{
unsigned int f0 = 1, f1 = 1, f2, i;
if(m <= 1){
returnm;
}
else{
for(i = 2; i <= m; i + +){
f2 = f0 + f1;
f0 = f1;
f1 = f2;
}
return f2;
}
}

Example 1 Continued...

receive m
f0 ← 0
f1 ← 1
if m <= 1 got L3
i ← 2
L1: if i <= m goto L2
return f2
L2: f2 ← f0 + f1
f0 ← f1
f1 ← f2
i ← i + 1
goto L1
L3: return m