#helper #standalone #assembly #check #test #function #dav1d

checkasm

用于检查独立汇编函数的辅助工具,由dav1d衍生而来

1个不稳定版本

0.1.0 2020年12月30日

#418视频

BSD-2-Clause

97KB
2.5K SLoC

Assembly 2K SLoC // 0.1% comments GNU Style Assembly 562 SLoC // 0.2% comments Rust 141 SLoC // 0.0% comments

rust的checkasm辅助工具

它是将dav1d的checkasm工具包移植到rust。

用法


#[cfg(test)]
mod test {
    use checkasm::declare_fn;
    use std::ffi::c_void;

    extern fn variant_avx2(a: *mut u8, len: usize);
    extern fn variant_avx512(a: *mut u8, len: usize);

    declare_fn { check_variant(a: *mut u8, len: usize) };

    #[test]
    fn variant() {
        let mut buf = vec![0u8; 128];

        check_variant(variant_avx512 as *mut c_void, buf.as_mut_ptr(), buf.len());
    }
}

状态

  • 构建
  • 在stderr中报告错误
  • 正确panic

依赖项

~190KB