Consider the program below which uses
six temporary variables a, b, c, d, e, and f.
a = 1
b = 10
c = 20
d = a + b
e = c + d
f = c + e
b = c + e
e = b + f
d = 5 + e
return d + f
Assuming that all the above operations take their operands from registers, the minimum number of registers needed to execute this program without spilling is