I disagree with the "default cpu should 95% of what is currently on sale" argument.
The default affects naive users most strongly, so it should "just work" on as many processors as is reasonable, not be as fast as possible on most of the majority of the processors currently on sale. Naive users might have anything. As an example of the results of that kind of thinking, we've had years of pain and wasted time in the ARM world due to the default architecture being armv5t instead of armv4t. The results are that user after user, making their first steps compiling a cross toolchain, turns up on the mailing lists having got "illegal instruction" after days of work, and that almost all the distributions are forced to carry an "unbreak armv4t" patch to GCC. Lord, someone was even compelled to try and get Android working on their Openmoko, while it was binary-only, by emulating the few trivial instructions in the kernel. Ubuntu, similarly, excludes the lower end by leaving the default unchanged. When users get interested in maximal speed, the first thing they do is go for -mcpu=xyz, which doesn't require them to recompile the compiler and is educational, while software distributions who build their own compilers make their own choices about the minimum processors they want to support. Of course, most GCC developers and 95% of the people they know probably do all have big new PCs using processors that are currently in production, so to their eyes it might seem that all the world has SSE2. However most people in the world cherish anything that works at all; why make life harder for them? We don't see the bottom end in the various usage stats because most people using them don't have the internet (or a landline phone, come to that). The time-honoured policy of having the default settings work on as wide a range hardware as possible is a socially inclusive one. Some manifestos chisel the "low bar" into their constitutions (Debian for example); it would be nice for GCC to do so too. Cheers M "You can't buy a computer these days with less that a gigabyte." -- A.S.Tanenbaum, trying to defend Minix's fixed-size kernel arrays at FOSDEM 2010