diff mbox

[wwwdocs,committed] SH changes update

Message ID 1418171442.19509.66.camel@yam-132-YW-E178-FTW
State New
Headers show

Commit Message

Oleg Endo Dec. 10, 2014, 12:30 a.m. UTC
Hi,

This mentions the SH changes for GCC 5 that have happened so far.
Committed.

Cheers,
Oleg
diff mbox

Patch

Index: htdocs/gcc-5/changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-5/changes.html,v
retrieving revision 1.49
diff -u -r1.49 changes.html
--- htdocs/gcc-5/changes.html	8 Dec 2014 15:04:50 -0000	1.49
+++ htdocs/gcc-5/changes.html	10 Dec 2014 00:27:08 -0000
@@ -435,6 +435,38 @@ 
 	hot code patching.</li>
   </ul>
 
+<h3 id="sh">SH</h3>
+  <ul>
+    <li>The compiler will now pass the appropriate <code>--isa=</code> option
+    to the assembler.</li>
+
+    <li>The default handling for the <code>GBR</code> has been changed from
+    call clobbered to call preserved.  The old behavior can be reinstated by
+    specifying the option <code>-fcall-used-gbr</code>.</li>
+
+    <li>Support for the SH4A <code>fpchg</code> instruction has been added which
+    will be utilized when switching between single and double precision FPU
+    modes.</li>
+
+    <li>The compiler no longer uses the <code>__fpscr_values</code> array for
+    switching between single and double FPU precision modes on non-SH4A targets.
+    Instead mode switching will now be performed by storing, modifying and
+    reloading the <code>FPSCR</code>, so that other <code>FPSCR</code> bits are
+    preserved across mode switches.   The <code>__fpscr_values</code> array that
+    is defined in libgcc is still present for backwards compatibility, but it
+    will not be referenced by compiler generated code anymore.</li>
+
+    <li>New builtin functions <code>__builtin_sh_get_fpscr</code> and
+    <code>__builtin_sh_set_fpscr</code> have been added.  The
+    <code>__builtin_sh_set_fpscr</code> function will mask the specified bits
+    in such a way that the <code>SZ</code>, <code>PR</code> and <code>FR</code>
+    mode bits will be preserved, while changing the other bits.  These new
+    functions do not reference the <code>__fpscr_values</code> array.  The old
+    functions <code>__set_fpscr</code> and <code>__get_fpscr</code> in libgcc
+    which access the <code>__fpscr_values</code> array are still present for
+    backwards compatibility, but their usage is highly discouraged.</li>
+  </ul>
+
 <h2 id="os">Operating Systems</h2>
 
   <h3 id="dragonfly">DragonFly BSD</h3>