Patchwork [wwwdocs] Document GCC 4.6 Solaris 2 changes

login
register
mail settings
Submitter Rainer Orth
Date Jan. 28, 2011, 4:17 p.m.
Message ID <yddoc7180lb.fsf@manam.CeBiTec.Uni-Bielefeld.DE>
Download mbox | patch
Permalink /patch/80870/
State New
Headers show

Comments

Rainer Orth - Jan. 28, 2011, 4:17 p.m.
Gerald Pfeifer <gerald@pfeifer.com> writes:

> On Wed, 26 Jan 2011, Rainer Orth wrote:
>> Index: htdocs/gcc-4.6/changes.html
>> ===================================================================
>> +<h3 id="solaris">Solaris 2</h3>
>> +  <ul>
>> +    <h4>New Features</h4>
>
> I believe this is the only port which used <h4> to differentiate
> between features and other changes.  It's fine if you really want
> to handle it that way, just wanted to point it out.  An alternative
> would be to say "<em>ABI Changes:</em> ....2

I've tried that, but still think that using <h4> is clearer, especially
since the ABI change (as always) is important enough to get special
emphasis.

>> +      <li>Support symbol versioning with Sun linker.</li>
>
> "the Sun linker"?

Right: I've fixed that throughout.

>> +      <li>Enable full ISO C99 support for C++ on Solaris 10+.</li>
>
> ISO C99 for C++?

libstdc++ can make use of C99 features in libc, but that needs special
enabling.

>> +      <li>Support TLS with Sun as on Solaris 2/x86.</li>
>
> Perhaps say "the Sun assembler"?  At first I was wondering about the
> grammar of this sentence reading the as as the English word as. ;-)

Agreed.

>> +    <h4>ABI Changes</h4>
>> +      <li>Change ABI for returning 8-byte vectors in MMX registers on Solaris
>> +	10+/x86 to match Sun Studio 12.1+ compilers.</li>
>
> "Change the ABI..."
>
> What happens with code (libraries,...) compiled with an earlier version of
> GCC?  Will this break?  If so, a word of caution may be appropirate.

Indeed: I've considerably expanded the section.

> Looks good overall.  Please consider my comments and repost/check in

Here's the version I've checked in.

Thanks for your careful comments.

	Rainer

Patch

Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.6/changes.html,v
retrieving revision 1.98
diff -u -p -r1.98 changes.html
--- changes.html	28 Jan 2011 12:39:59 -0000	1.98
+++ changes.html	28 Jan 2011 16:12:59 -0000
@@ -804,6 +804,32 @@  supported on several Xilinx Spartan and 
       At the moment, Android support is enabled only for ARM.</li>
   </ul>
 
+<h3 id="solaris">Solaris 2</h3>
+  <ul>
+    <h4>New Features</h4>
+      <li>Support symbol versioning with the Sun linker.</li>
+      <li>Enable full ISO C99 support for C++ on Solaris 10+.</li>
+      <li>Support thread-local storage (TLS) with the Sun assembler on
+	Solaris 2/x86.</li>
+      <li>Support TLS on Solaris 8/9 if prerequisites are met.</li>
+      <li>Support COMDAT group with the GNU assembler and recent Sun
+	linker.</li>
+      <li>Support the Sun assembler visibility syntax.</li>
+      <li>Default Solaris 2/x86 to <code>-march=pentium4</code> (Solaris
+	10+) resp. <code>-march=pentiumpro</code> (Solaris 8/9).</li>
+      <li>Don't use SSE on Solaris 8/9 x86 by default.</li>
+      <li>Enable 128-bit long double (<code>__float128</code>) support on
+	Solaris 2/x86.</li>
+    <h4>ABI Change</h4>
+      <li>Change the ABI for returning 8-byte vectors like
+	<code>__m64</code> in MMX registers on Solaris 10+/x86 to match the
+	Sun Studio 12.1+ compilers.  <em>This is an incompatible change.
+	If you use such types, you must either recompile all your code with
+	the new compiler or use the new <code>-mvect8-ret-in-mem</code>
+	option to remain compatible with previous versions of GCC and
+	Sun Studio.</em></li>
+  </ul>
+
 <h3 id="windows">Windows x86/x86_64</h3>
   <ul>
     <li>Initial support for decimal floating point.</li>