Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 11 Dec 2017 05:04:37 +0000
From:      bugzilla-noreply@freebsd.org
To:        freebsd-toolchain@FreeBSD.org
Subject:   [Bug 223415] lang/rust: don't require SSE2 on i386 (at least for binary packages)
Message-ID:  <bug-223415-29464-QCRgJQaMlX@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-223415-29464@https.bugs.freebsd.org/bugzilla/>
References:  <bug-223415-29464@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D223415

--- Comment #13 from Jan Beich <jbeich@FreeBSD.org> ---
(In reply to Bertrand Petit from comment #12)
> $ objdump -d usr/local/bin/rg | grep xmm
[...]

WITH_DEBUG=3D1 port build contains symbol names. It seems xmm registers are=
 used
by __floatdidf and __floatundidf from compiler-rt. Rust compiler always
includes optimized routines on i386 but not always uses them. If my
understanding is correct then the code is dead.

# Rust 1.22.1
https://github.com/rust-lang-nursery/compiler-builtins/blob/0b9844764ea1/bu=
ild.rs#L3977
https://github.com/rust-lang-nursery/compiler-builtins/blob/0b9844764ea1/sr=
c/float/conv.rs#L91
https://github.com/rust-lang-nursery/compiler-builtins/blob/0b9844764ea1/sr=
c/float/conv.rs#L120
https://github.com/rust-lang/compiler-rt/blob/c8a8767c56ad/lib/builtins/i38=
6/floatdidf.S
https://github.com/rust-lang/compiler-rt/blob/c8a8767c56ad/lib/builtins/i38=
6/floatundidf.S

--=20
You are receiving this mail because:
You are on the CC list for the bug.=



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-223415-29464-QCRgJQaMlX>