As explained at http://gcc.gnu.org/ml/fortran/2010-09/msg00120.html the transpose change committed at http://gcc.gnu.org/viewcvs?view=revision&revision=164205 introduces unnecessary temporaries for transpose calls as actual argument.
-- Summary: [4.6 regression] Unnecessary temporary for transpose calls as actual argument. Product: gcc Version: 4.6.0 Status: UNCONFIRMED Keywords: missed-optimization Severity: normal Priority: P3 Component: fortran AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: mikael at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45648