MCPcopy Create free account
hub / github.com/bytecodealliance/wasmtime / map_mem_flags

Method map_mem_flags

cranelift/codegen/src/inline.rs:1028–1047  ·  view source on GitHub ↗
(&mut self, flags: ir::MemFlags)

Source from the content-addressed store, hash-verified

1026 self.entity_map.inlined_immediate(immediate)
1027 }
1028 fn map_mem_flags(&mut self, flags: ir::MemFlags) -> ir::MemFlags {
1029 let mut flags_data = self.callee.dfg.mem_flags[flags];
1030 // Remap the alias region entity from callee to caller.
1031 if let Some(callee_region) = flags_data.alias_region() {
1032 let region_data = self.callee.dfg.alias_regions[callee_region].clone();
1033 let caller_region = self.func.dfg.alias_regions.insert(region_data);
1034 flags_data.set_alias_region(Some(caller_region));
1035 }
1036 match self.func.dfg.mem_flags.insert(flags_data) {
1037 Ok(flags) => flags,
1038 Err(_) => {
1039 self.error = Some(crate::result::CodegenError::ImplLimitExceeded);
1040 self.func
1041 .dfg
1042 .mem_flags
1043 .insert(ir::MemFlagsData::trusted())
1044 .unwrap()
1045 }
1046 }
1047 }
1048}
1049
1050/// Inline the callee's layout into the caller's layout.

Callers

nothing calls this directly

Calls 5

set_alias_regionMethod · 0.80
alias_regionMethod · 0.45
cloneMethod · 0.45
insertMethod · 0.45
unwrapMethod · 0.45

Tested by

no test coverage detected