cranelift_codegen/ir/
table.rs1use crate::ir::immediates::Uimm64;
4use crate::ir::{GlobalValue, Type};
5use core::fmt;
6
7#[cfg(feature = "enable-serde")]
8use serde::{Deserialize, Serialize};
9
10#[derive(Clone, PartialEq, Hash)]
12#[cfg_attr(feature = "enable-serde", derive(Serialize, Deserialize))]
13pub struct TableData {
14 pub base_gv: GlobalValue,
16
17 pub min_size: Uimm64,
20
21 pub bound_gv: GlobalValue,
23
24 pub element_size: Uimm64,
26
27 pub index_type: Type,
29}
30
31impl fmt::Display for TableData {
32 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
33 f.write_str("dynamic")?;
34 write!(
35 f,
36 " {}, min {}, bound {}, element_size {}, index_type {}",
37 self.base_gv, self.min_size, self.bound_gv, self.element_size, self.index_type
38 )
39 }
40}