I have the following function:
inline int f(int &x, int y, int z) {
    /* does stuff and changed the value of x at the end */
}
inline int f_p(int * const x, int y, int z) {
    /* exactly the same as f, except replace x with *x */
}
Is there any case in which gcc 4.9 will be able to optimize better a loop that calls f over and over again better than the same loop with a call to f_p instead?
