aboutsummaryrefslogtreecommitdiff
path: root/gcc/fortran/st.cc
diff options
context:
space:
mode:
authorMikael Morin <mikael@gcc.gnu.org>2023-07-17 14:14:18 +0200
committerMikael Morin <mikael@gcc.gnu.org>2023-07-17 14:14:18 +0200
commit1a46400e5ac0f21eead74b10752f69ebc7a8be27 (patch)
tree3c4bddd01951e1d3b4b24a6269ee01e9b2521269 /gcc/fortran/st.cc
parentf60231e35d8d3f84f2ab6b3c19c254faa9519cf4 (diff)
downloadgcc-1a46400e5ac0f21eead74b10752f69ebc7a8be27.zip
gcc-1a46400e5ac0f21eead74b10752f69ebc7a8be27.tar.gz
gcc-1a46400e5ac0f21eead74b10752f69ebc7a8be27.tar.bz2
fortran: Use pre-evaluated class container if available [PR110618]
Add the possibility to provide a pre-evaluated class container argument to gfc_add_finalizer to avoid repeatedly evaluating data reference expressions in the generated code. PR fortran/110618 gcc/fortran/ChangeLog: * trans.h (gfc_add_finalizer_call): Add class container argument. * trans.cc (gfc_add_finalizer_call): Ditto. Pass down new argument to get_final_proc_ref, get_elem_size, get_var_desc, and get_vptr. (get_elem_size): Add class container argument. Use provided class container if it's available. (get_var_descr): Same. (get_vptr): Same. (get_final_proc_ref): Same. Add boolean telling the class container argument is used. Set it. Don't try to use final_wrapper if class container argument was used.
Diffstat (limited to 'gcc/fortran/st.cc')
0 files changed, 0 insertions, 0 deletions