Suggestion: Use -pipe by default

Michael Meissner meissner@cygnus.com
Tue Oct 10 12:47:00 GMT 2000


On Sat, Oct 07, 2000 at 12:42:27AM +0200, Niels Möller wrote:
> Bourne-again Superuser <toor@dyson.jdyson.com> writes:
> 
> > Another argument for -pipe (implied by another contributor to this thread), is
> > to minimize the use of the /tmp or /var/tmp for minor security
> > improvement...
> 
> That was actually what I had in mind when I asked about this. I'm not
> going to claim that it is a big security problem (it seems gcc opens
> the files with mode 0600 and O_EXCL, which I think should at least
> stop symlink-attacks). But if it is reasonable painless to avoid using
> /tmp, that's something that should be done. So far it seems that the
> arguments for not making -pipe default are:
> 
> 1. Not all assemblers can read input from a pipe.
> 
> 2. It is a significant performance hit on machines with small amounts
>    of memory (I would imagine that the amount of memory needed by as
>    is typically very small compared to that used by cc1, but I haven't
>    tried to verify that).

I have run into situations in the past where the assembler actually took more
memory resources than the compiler.  While I believe that particular instance
is fixed, it is a data point counter to the conventional wisdon (if you are
curious, the problem was in compiling inlined code for debugging -- every time
the assembler read a stab, it would close off the current frag, and allocate a
new frag to process the stab section, and then allocate a frag for the next
instruction, and each of the frags only had a few bytes in them).

Also, people are still resucing old 486's and pentium-I's with small amounts of
memory to run Linux (or *bsd) on them.

-- 
Michael Meissner, Red Hat, Inc.
PMB 198, 174 Littleton Road #3, Westford, Massachusetts 01886, USA
Work:	  meissner@redhat.com		phone: +1 978-486-9304
Non-work: meissner@spectacle-pond.org	fax:   +1 978-692-4482


More information about the Gcc-bugs mailing list