public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [wwwdocs,avr,committed]: Mention avr specific improvments
@ 2013-01-16 20:51 Georg-Johann Lay
  0 siblings, 0 replies; only message in thread
From: Georg-Johann Lay @ 2013-01-16 20:51 UTC (permalink / raw)
  To: gcc-patches

[-- Attachment #1: Type: text/plain, Size: 102 bytes --]

http://gcc.gnu.org/ml/gcc-cvs-wwwdocs/2013/msg00015.html

http://gcc.gnu.org/gcc-4.8/changes.html#avr

[-- Attachment #2: avr-changes.diff --]
[-- Type: text/x-patch, Size: 1899 bytes --]

Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.8/changes.html,v
retrieving revision 1.85
diff -u -p -r1.85 changes.html
--- changes.html	16 Jan 2013 09:38:30 -0000	1.85
+++ changes.html	16 Jan 2013 20:40:40 -0000
@@ -390,6 +390,45 @@ B b(42); // OK
 
 <h2 id="targets">New Targets and Target Specific Improvements</h2>
 
+<h3 id="avr">AVR</h3>
+<ul>
+  <li>
+    Support for the &quot;Embedded&nbsp;C&quot; fixed-point has been
+    added. For details, see the
+    <a href="http://gcc.gnu.org/wiki/avr-gcc#Fixed-Point_Support">
+      GCC wiki</a> and the
+    <a href="http://gcc.gnu.org/onlinedocs/gcc/Fixed_002dPoint.html">
+      user manual</a>.  The support is not complete. 
+  </li>
+  <li>A new print modifier <code>%r</code> for register operands in inline
+  assembler is supported.  It will print the raw register number without the
+    register prefix&nbsp;'<code>r</code>':
+    <pre>
+    /* Return the most significant byte of 'val', a 64-bit value.  */
+
+    unsigned char msb (long long val)
+    {
+      unsigned char c;
+      __asm__ ("mov %0, %r1+7" : "=r" (c) : "r" (val));
+      return c;
+    }</pre>
+    The inline assembler in this example will generate code like
+    <pre>
+    mov r24, 8+7</pre>
+    provided <code>c</code> is allocated to <code>R24</code> and
+    <code>val</code> is allocated to
+    <code>R8</code>&hellip;<code>R15</code>. This works because
+    the GNU assembler accepts plain register numbers without register prefix.
+  </li>
+  <li>
+    Static initializers with 3-byte symbols are supported now:
+    <pre>
+    extern const __memx char foo;
+    const __memx void *pfoo = &amp;foo;</pre>
+    This requires at least Binutils 2.23.
+  </li>
+</ul>
+
 <h3>IA-32/x86-64</h3>
   <ul>
     <li>Allow <code>-mpreferred-stack-boundary=3</code> for the x86-64

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-01-16 20:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-01-16 20:51 [wwwdocs,avr,committed]: Mention avr specific improvments Georg-Johann Lay

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).