extract out shared isl_multi_*_{take,restore}_at
commit62058280f7befe1ab2a8c9dbb38077cdae372e65
authorSven Verdoolaege <sven@cerebras.net>
Thu, 24 Oct 2019 12:16:40 +0000 (24 14:16 +0200)
committerSven Verdoolaege <sven@cerebras.net>
Wed, 11 Aug 2021 16:35:26 +0000 (11 18:35 +0200)
treec9970b8f7a2ea9a66189265e7519235356985f1d
parent95dd4f25b04fd6e94aad3059ef198d51fac633a6
extract out shared isl_multi_*_{take,restore}_at

This reduces the dependence on the internal representation.

In practice, the already available isl_multi_*_restore
can simply be reused as a isl_multi_*_restore_at
to pair off with isl_multi_*_take_at.

Note that the calls to isl_multi_*_cow can be removed
because it is called by isl_multi_*_restore_at when needed.
Conversely, isl_multi_*_coalesce is not converted
to used isl_multi_*_{take,restore}_at because
it should perform its modifications inplace.

Signed-off-by: Sven Verdoolaege <sven@cerebras.net>
isl_aff.c
isl_multi_apply_templ.c
isl_multi_bin_val_templ.c
isl_multi_dims.c
isl_multi_move_dims_templ.c
isl_multi_pw_aff_pullback_templ.c
isl_multi_templ.c
isl_multi_un_op_templ.c