From: Vladimir 'phcoder' Serbinenko <phcoder@gmail.com>
To: The development of GRUB 2 <grub-devel@gnu.org>
Cc: Colin Watson <cjwatson@debian.org>
Subject: Re: [2637] 2009-10-16 Colin Watson <cjwatson@ubuntu.com>
Date: Sat, 17 Oct 2009 13:40:27 +0200 [thread overview]
Message-ID: <4AD9AD2B.8000604@gmail.com> (raw)
In-Reply-To: <20091017111852.GA30854@thorin>
Robert Millan wrote:
> On Fri, Oct 16, 2009 at 03:38:44PM +0000, Colin Watson wrote:
>
>> Revision: 2637
>> http://svn.sv.gnu.org/viewvc/?view=rev&root=grub&revision=2637
>> Author: cjwatson
>> Date: 2009-10-16 15:38:42 +0000 (Fri, 16 Oct 2009)
>> Log Message:
>> -----------
>> 2009-10-16 Colin Watson <cjwatson@ubuntu.com>
>>
>> * configure.ac (TARGET_CFLAGS): Add -mno-mmx -mno-sse -mno-sse2
>> -mno-3dnow on x86 architectures. Some toolchains enable these
>> features by default, but they rely on registers that aren't enabled
>> in GRUB. Thanks to Vladimir Serbinenko for the suggestion.
>>
>
> Would it be preferable to enable those registers instead?
>
>
They are disabled for following simple reason:
imagine an OS which isn't aware of those registers. Then if user
simultaneously launches two applications which use those registers then
they won't be preserved accross context switches leading to bugs. I
don't know if there is a way to disable these registers again after
enabling them. I don't think grub2 will benefit a lot because of
mmx/sse/sse2/3dnow because we don't use floating point arithmetics. If I
remember correctly sse has some commands for operations on parallel
operations on integers but the only place I see where benefit could be
considerable is decompression and decryption. If it's proven that
decompressing/decrypting with SSE makes it considerably faster then
enabling SSE would be a good thing. Anyhow for now we can just disable
MMX/SSE/SSE2/3dnow and when someone implements handling those registers
he can enable them again
On FreeBSD kernel itself is compiled without MMX, SSE, SSE2 and 3dnow to
avoid to have to handle them on kernel threads switches.
--
Regards
Vladimir 'phcoder' Serbinenko
Personal git repository: http://repo.or.cz/w/grub2/phcoder.git
next prev parent reply other threads:[~2009-10-17 11:40 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <E1MyotA-0005ED-6E@cvs.savannah.gnu.org>
2009-10-17 11:18 ` [2637] 2009-10-16 Colin Watson <cjwatson@ubuntu.com> Robert Millan
2009-10-17 11:40 ` Vladimir 'phcoder' Serbinenko [this message]
2009-10-17 16:09 ` richardvoigt
2009-10-18 15:52 ` Robert Millan
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4AD9AD2B.8000604@gmail.com \
--to=phcoder@gmail.com \
--cc=cjwatson@debian.org \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.