This is required for #46448, and should be implemented so that it gets enabled.
Not targeting to S3_0, as Irrigate and Mine having both targeted and targetless forms there might not work well together with this change, and usually client-side performance issues are not that critical.
activity_type_iterate() loop in calc_activity() does tile_activity_time() & stuff "1 + num_extras * 2" times for every activity, when it could be just 1 for activities that are not about extras, and num_extras for activities that are about them.
It also memset() to zero what it had allocated with fc_calloc(), already giving zeroed memory.