This is the mail archive of the fortran@gcc.gnu.org mailing list for the GNU Fortran project.
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |
| Other format: | [Raw text] | |
Actually, pointers must not escape unless i has the target attribute, and they cannot escape if the dummy argument doesn't have it.
So, the pseudo-code should read
if (optimize && (!has_target_attribute(i) || !has_target_attribute(i_dummy)) && is_gimple_reg_type(i)) { int i_temp; i_temp = i; call foo(&i_temp); if (is_no_active_do_loop_variable(i) && (intent_inout(i_dummy) || intent_out(i_dummy) || intent_unspecified(i_dummy))) i = i_temp;
Sounds reasonable?
Cheers, - Tobi
| Index Nav: | [Date Index] [Subject Index] [Author Index] [Thread Index] | |
|---|---|---|
| Message Nav: | [Date Prev] [Date Next] | [Thread Prev] [Thread Next] |