Hans Kratz

Results 38 comments of Hans Kratz

Of course older CPUs like the Pentium 3 do not support it, but one can run 32-bit operating systems on newer CPUs and have access to the SIMD extensions. On...

Simdjson is programmed to use SSE4.2 or AVX2 intrinsics on x86. The `allow-non-simd` feature relies on LLVM translating the intrinsics to machine code compatible with the target CPU. Apparently that...

You could just use [`Option::and_then()`](https://doc.rust-lang.org/rust-by-example/error/option_unwrap/and_then.html): ```rust fn get_c(a: Option) -> Option { a.and_then(|a| a.b).and_then(|b| b.c) } ``` Edit: Even if this function were returning a result and `?` could not...

I can repeatedly reproduce this right now on Mac OS 12.1 ARM64, will investigate. `rustup update` output: ``` $ rustup update info: syncing channel updates for 'stable-aarch64-apple-darwin' info: syncing channel...

@rbtcollins Merging https://github.com/XAMPPRocky/remove_dir_all/pull/36 should fix this particular issue for Mac and other BSDs.

@SparrowLii Shouldn't that work with the `frintts` feature?

I have looked at this a bit and can reproduce this on a Mac M1. Rustc crashes in LLVM codegen: ``` Process 26362 stopped * thread #7, name = 'LTO...

> The alignment should be that of `f32`. This is what clang does for the same intrinsic. In my test clang compiles the load with 64-bit alignment as well (`vld1.32...

As we are directly calling the LLVM intrinsics here without any possibility to specify alignment solution 2) seems to be the only way.

I don't know if the LLVM behavior is intended. For `vld1_f32_x4` they require 256-bit alignment ([clang Godbolt](https://godbolt.org/z/q98rvM8cT)). GCC does not even have the `vld1_*_x*` intrinsics for armv7 ([issue](https://gcc.gnu.org/bugzilla/show_bug.cgi?id=71233)), so we...