MDEV-26445 followup: Try to work around GCC 4.8.5 ICE on ARMv8

GCC 4.8.5 would crash when compiling trx_purge_truncate_history().
Let us try to avoid that by disabling optimizations for the function.
This commit is contained in:
Marko Mäkelä 2021-10-05 07:13:14 +03:00
parent ead38354e6
commit df94aa344b

View file

@ -540,6 +540,12 @@ static void trx_purge_cleanse_purge_queue(const fil_space_t& space)
mutex_exit(&purge_sys.pq_mutex);
}
#if defined __GNUC__ && __GNUC__ == 4 && !defined __clang__
# if defined __arm__ || defined __aarch64__
/* Work around an internal compiler error in GCC 4.8.5 */
__attribute__((optimize(0)))
# endif
#endif
/**
Removes unnecessary history data from rollback segments. NOTE that when this
function is called, the caller must not have any latches on undo log pages!