|Profile-driven optimization firstname.lastname@example.org (Tim Frink) (2008-01-29)|
|Re: Profile-driven optimization email@example.com (Gene) (2008-01-31)|
|Re: Profile-driven optimization firstname.lastname@example.org (=?ISO-8859-1?Q?Pertti_Kellom=E4ki?=) (2008-02-01)|
|Re: Profile-driven optimization email@example.com (M Wolfe) (2008-02-02)|
|Re: Profile-driven optimization firstname.lastname@example.org (Pasi Ojala) (2008-02-08)|
|From:||"M Wolfe" <email@example.com>|
|Date:||Sat, 2 Feb 2008 16:35:45 -0800|
|Posted-Date:||04 Feb 2008 13:05:16 EST|
A compiler may choose to prefer inlining functions along the hot path.
If the profile gives hints as to the loop counts, the compiler can
choose whether (or not) to vectorize or unroll a loop.
But even that's only looking at execution frequency profiles. Profile
feedback can include data as well. For instance, at an indirect
function call, the profile can save the function targets called, and
then the compiler can choose to inline one or more of the targets
(appropriately guarded). Or, at an integer divide, the profile may
save whether the divisor usually has the same value. If so, the
compiler can decide to use the reciprocal multiply method, where it
only has to recompute the reciprocal when the value changes.
Return to the
Search the comp.compilers archives again.