This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: New problems with gcc-2.8.0 based code - NOW FIXED!
- To: kenner at vlsi1 dot ultra dot nyu dot edu, pkoning at xedia dot com
- Subject: Re: New problems with gcc-2.8.0 based code - NOW FIXED!
- From: Richard Stallman <rms at santafe dot edu>
- Date: Wed, 31 Dec 1997 00:00:48 -0700
- Cc: gcc2 at cygnus dot com, egcs at cygnus dot com
- References: <9712302109.AA01369@vlsi1.ultra.nyu.edu> <9712302117.AA21765@kona.>
- Reply-To: rms at gnu dot org
When we consider whether to support a certain optimization, we need to
keep in mind why we want optimizations in the first place.
An optimization is worth having if it gives users a substantial
speedup, substantially often. In that case, it may be worth some
sacrifice to have the optimization. But if the optimization happens
only rarely and provides small benefit, then it is not worth paying
any price for--especially not if the users pay the price.
Perhaps there are some cases of asm without outputs where it is safe
to permit moving the asm. But it is clear that the benefits to be had
by such optimization are little and rare. So given the choice between
permitting this optimization in rare cases, and any other benefit that
really matters, the latter wins hands down.
Therefore it is certain that GCC should do what the manual now says:
an asm with no outputs is treated as volatile.