Transformations to increase parallelism
Jan Hoogerbrugge
hoogerbrugge@hotmail.com
Mon Jul 21 13:43:00 GMT 2003
Hi,
Are there optimizations in gcc that increase instruction level parallelism?
For example:
void foo(int *p, int a)
{
a += 2;
p[0] = a;
a += 2;
p[1] = a;
}
compiles to
add a, 2 -> tmp1
store p[0], tmp1
add tmp1, 2 -> tmp2
store p[1], tmp2
However, a more parallel translation would be:
add a, 2 -> tmp1
store p[0], tmp1
add a, 4 -> tmp2
store p[1], tmp2
In this case the two adds and the two stores can be executed in parallel.
Jan
_________________________________________________________________
Protect your PC - get McAfee.com VirusScan Online
http://clinic.mcafee.com/clinic/ibuy/campaign.asp?cid=3963
More information about the Gcc
mailing list