llvm-scratch 0.1.15

Free Standing library in Rust
Documentation
#[cfg(test)]
mod target_datalayout_tests {
    use crate::core::target_datalayout as td;

    #[test]
    fn test_target_datalayout_display() {
        let layout = td::TargetDataLayout {
            endian: Some(td::Endian::LITTLE),
            mangling: Some(td::Mangling::ELF),
            integer_alignment: Some(td::IntegerAlignment {
                size: 64,
                abi: 64,
                pref: None,
            }),
            float_alignment: Some(td::FloatAlignment {
                size: td::FloatAlignmentSize::LONGDOUBLE80,
                abi: 128,
                pref: None,
            }),
            native_integer_width: Some(td::NativeIntegerWidth {
                sizes: vec![8, 16, 32, 64],
            }),
        };

        assert_eq!(
            "e-m:e-i64:64-f80:128-n8:16:32:64",
            format!("{}", layout).as_str()
        );
    }
}