Please read this before reporting a bug:
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
https://wiki.archlinux.org/title/Bug_reporting_guidelines
Do NOT report bugs when a package is just outdated, or it is in the AUR. Use the 'flag out of date' link on the package page, or the Mailing List.
REPEAT: Do NOT report bugs for outdated packages!
FS#55329 - [ripgrep] compiled without SIMD support
Attached to Project:
Community Packages
Opened by Dror Levin (spatz) - Tuesday, 29 August 2017, 10:35 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Wednesday, 22 August 2018, 15:53 GMT
Opened by Dror Levin (spatz) - Tuesday, 29 August 2017, 10:35 GMT
Last edited by Sven-Hendrik Haase (Svenstaro) - Wednesday, 22 August 2018, 15:53 GMT
|
DetailsThe upstream package is built with:
RUSTFLAGS="-C target-feature=+ssse3" cargo build --target $TARGET --release --features simd-accel source: https://github.com/BurntSushi/ripgrep/blob/master/ci/before_deploy.sh Bug the Arch package is built only with cargo build --release, which means that SIMD optimizations are disabled. |
This task depends upon
Closed by Sven-Hendrik Haase (Svenstaro)
Wednesday, 22 August 2018, 15:53 GMT
Reason for closing: Fixed
Wednesday, 22 August 2018, 15:53 GMT
Reason for closing: Fixed
$ rg --version
ripgrep 0.9.0
-SIMD -AVX
Regex crate extensively used by ripgrep has runtime feature detection and it seems to work. There are also bytecount and encoding_rs crates which don't support runtime detection.
Building ripgrep with hardcoded SIMD/AVX would cause to generate SIGILL on the systems without those specific instructions and that's why GitHub release also shows -SIMD -AVX.
You can see instructions the binary contains:
Arch Linux:
$ rg --version
ripgrep 0.9.0
-SIMD -AVX
$ elfx86exts /usr/bin/rg
MODE64 (call)
CMOV (cmovb)
SSE1 (movups)
SSE2 (movdqu)
AVX (vxorps)
AVX2 (vpcmpeqd)
SSSE3 (pshufb)
GitHub:
$ Pulpit/rg --version
ripgrep 0.9.0 (rev 6799dcfc0e)
-SIMD -AVX
$ elfx86exts Pulpit/rg
MODE64 (push)
CMOV (cmovb)
SSE1 (movups)
SSE2 (movdqu)
AVX (vxorps)
AVX2 (vpcmpeqd)
SSSE3 (pshufb)