Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 4 Oct 2013 10:23:27 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Mark R V Murray <mark@grondar.org>
Cc:        svn-src-projects@freebsd.org, src-committers@freebsd.org, Mark Murray <markm@FreeBSD.org>
Subject:   Re: svn commit: r256042 - in projects/random_number_generator: share/examples/kld/random_adaptor sys/conf sys/dev/glxsb sys/dev/hifn sys/dev/random sys/dev/rndtest sys/dev/safe sys/dev/syscons sys/dev/...
Message-ID:  <20131004072327.GR41229@kib.kiev.ua>
In-Reply-To: <BD962DAD-3105-4C1A-8509-64ED26F09D81@grondar.org>
References:  <201310040655.r946t6ZR038091@svn.freebsd.org> <20131004070521.GQ41229@kib.kiev.ua> <BD962DAD-3105-4C1A-8509-64ED26F09D81@grondar.org>

next in thread | previous in thread | raw e-mail | index | archive | help

--Lqx35L3UMnwj0UbW
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Oct 04, 2013 at 08:09:48AM +0100, Mark R V Murray wrote:
>=20
> On 4 Oct 2013, at 08:05, Konstantin Belousov <kostikbel@gmail.com> wrote:
>=20
> > On Fri, Oct 04, 2013 at 06:55:06AM +0000, Mark Murray wrote:
> >> #ifdef __amd64__
> >> -	    ".byte\t0x48,0x0f,0xc7,0xf0\n\t" /* rdrand %rax */
> >> +	    "rdrand\t%%rax\n\t"
> >> 	    "jnc\t1f\n\t"
> >> 	    "movq\t%%rax,%1\n\t"
> >> 	    "movl\t$8,%%eax\n"
> >> #else /* i386 */
> >> -	    ".byte\t0x0f,0xc7,0xf0\n\t" /* rdrand %eax */
> >> +	    "rdrand\t%%eax\n\t"
> >> 	    "jnc\t1f\n\t"
> >> 	    "movl\t%%eax,%1\n\t"
> >> 	    "movl\t$4,%%eax\n"
> > This should break the build with the in-tree binutils, i.e. when gcc
> > is used.  The same for the chunks of the VIA asm.
>=20
> This is likely a case of me getting it wrong, but I thought we were heade=
d away from worrying about that? Or is that only in 11-current? If so I'll =
revert that bit.
>=20

I assure you about the infinite stream of complains if the build with the
base gcc is broken on x86.  It is not catched by tinderboxes, but people
are fast to report.

Also, if changing the .byte to mnemonic, it makes sense to loose the
constraints and allow the compiler to generate direct store from rdrand
to the target address.  I.e., do something like this (not tested):
	rdrand	%1
	jnc	1f
	movl	$8,%%eax
1:
=09

--Lqx35L3UMnwj0UbW
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2.0.21 (FreeBSD)

iQIcBAEBAgAGBQJSTmzuAAoJEJDCuSvBvK1BFmAP/31KTzCldstO+erOsChL9S9k
t7WHtzV/ReRurqXWeCfb9/B3b7YsFg5h1TVosrasoO/WsnBD9NOI2HaNFO6IG/Be
ki6IyG5Jfh6oW47NkagCxQ3IGYSP25Xaw8i8azoSedN66xiv+diLy6GemGHCt0AK
m8B2Pg0dtTxar6dR1r6HQwc/J+qYc/b42uSL0CdOEdeA0fVp6+6h4LKrEqwFv+7q
xpppsD9FLrxDth4AhGrqT3s41lrqDimfhyu5+StDjQyLgzWWzC8riV4bp7Hj6pEu
y97XPoXwLEbOmAGYgm8Opi+TqKKx2L/fn+vgW1UEmhizeTpsUA/5NnGRMeKHjVGP
9AhecalXNh/HrI3ARY8FB+AF8TaGWJq/0nUwU4eZArzOdWu67Rel9PbDX4LBrYZo
SlLo5iZEp3KmVA3yOU+gaAD8lolAEUq8W1o3SPBnX6YPd27leEjysOiABBdsB5f/
iDTxcsjQAvfjJdinKG7BhBe9vj5A/oSOFRYfAJN4DFHWVhwuwI7DJSyvSHdIn+Hr
JQIPX9NbKFzb/XXMhTccJoRz/BJCSDVfPho4Lo3jDW+UoQcQ/Ynh5Aqm2FVbm3QD
ELnH6u6mSGsySVWTbXrYXYNBpHN8F7iMJBsHHbYczWxBvlFIDpF8eMPj/B0WZRQu
Z+SoDAlHLE8MEbRHn8Tj
=O/Bo
-----END PGP SIGNATURE-----

--Lqx35L3UMnwj0UbW--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20131004072327.GR41229>