This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
[Patch,wwwdocs,AVR]: AVR release notes
- From: Georg-Johann Lay <avr at gjlay dot de>
- To: gcc-patches at gcc dot gnu dot org
- Cc: Gerald Pfeifer <gerald at pfeifer dot com>
- Date: Fri, 20 Jan 2012 19:30:19 +0100
- Subject: [Patch,wwwdocs,AVR]: AVR release notes
Adding AVR-specific release notes to wwwdocs/htdocs/gcc-4.7/changes.html
Ok?
Johann
Index: changes.html
===================================================================
RCS file: /cvs/gcc/wwwdocs/htdocs/gcc-4.7/changes.html,v
retrieving revision 1.73
diff -u -r1.73 changes.html
--- changes.html 12 Jan 2012 19:35:29 -0000 1.73
+++ changes.html 20 Jan 2012 18:29:39 -0000
@@ -45,6 +45,11 @@
<code>-compat-bsd</code> compiler option is not recognized any
longer.</li>
+ <li>The AVR port's libgcc has been improved and its multilib structure
+ has been enhanced. As a result, all objects contributing to an
+ application must either be compiled with GCC versions up to 4.6.x or
+ with GCC versions ≥ 4.7.</li>
+
<li>The ARM port's <code>-mwords-little-endian</code> option has
been deprecated. It will be removed in a future release.</li>
@@ -530,6 +535,40 @@
<h2 id="targets">New Targets and Target Specific Improvements</h2>
+<h3 id="avr">AVR</h3>
+ <ul>
+ <li>Support has beed added for instrinsic named address spaces
+ <code>__pgm</code>, <code>__pgm1</code>, …, <code>__pgm5</code>
+ and <code>__pgmx</code>. These address spaces locate read-only data in
+ flash memory and allow reading from flash memory by means of vanilla
+ C instructions, i.e. without the need of (inline) assembler code.</li>
+ <li>Support for AVR-specific built-in functions has beed added.</li>
+ <li>Support has beed added for the built-in, 24-bit, signed and unsigned
+ integer types <code>__int24</code> and <code>__uint24</code>.</li>
+ <li>New command-line options <code>-maccumulate-args</code>,
+ <code>-mbranch-cost=<i>cost</i></code> and <code>-mstrict-X</code>
+ were added to allow better fine-tuning of code optimization.</li>
+ <li>Many optimizations to:
+ <ul>
+ <li>64-bit integer arithmetic</li>
+ <li>Widening multiplication</li>
+ <li>Integer divide-by-constant</li>
+ <li>Generic built-in functions
+ like <code>__builtin_ffs*</code>, <code>__builtin_clz*</code>, etc.</li>
+ <li>If-else decision trees generated by <code>switch</code> instructions</li>
+ <li>Merging of data in <code>.progmem</code></li>
+ <li>Devices with 8-bit wide stack pointer register</li>
+ <li>…</li>
+ </ul>
+ <li>Better documentation:
+ <ul>
+ <li>Handling of <code>EIND</code> and indirect jumps on devices with
+ more than 128 KiB of program memory.</li>
+ <li>AVR-specific built-in macros.</li>
+ </ul>
+ </li>
+ </ul>
+
<h3 id="arm">ARM</h3>
<ul>
<li>GCC now supports the Cortex-A7 processor implementing the