Skip to main content

luaur_code_gen/methods/
const_prop_state_invalidate_value_propagation.rs

1impl crate::records::const_prop_state::ConstPropState {
2    pub fn invalidate_value_propagation(&mut self) {
3        self.value_map.clear();
4        self.upvalue_map.clear();
5
6        self.try_num_to_index_cache.clear();
7
8        self.buffer_load_store_info.clear();
9
10        self.hash_value_cache.clear();
11        self.array_value_cache.clear();
12
13        // While other map clears already prevent instValue keys from matching again, this saves memory and map size
14        self.inst_value.clear();
15
16        if luaur_common::FFlag::LuauCodegenExtraTableOpts.get() {
17            self.load_env_idx = crate::records::ir_data::k_invalid_inst_idx;
18        }
19    }
20}