Corrected subject to reflect actual release number; content unchanged. Peter
On Mon, Jul 16, 2012 at 3:39 PM, Peter Bigot <big...@acm.org> wrote: > Development release 20120716 of mspgcc is now available. > > This is a development release. It is beta-quality. It provides full > support for 20-bit code and data, with all memory models. So please be > adventurous, download it or checkout the workspace, and try it. > > The sole documentation for 20-bit use is at: > > > https://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=Gcc47:20-Bit_Design > > The page has been updated with this release. > > As of this version, there are no known bugs related to 20-bit mode. All > memory models should work. All optimizations and features intended for this > development phase have been completed. Subsequent changes should be for bug > fixes only. In anticipation of an upcoming LTS release, it is likely that > 20120716 will be made the default for mspgcc download sometime in the next > week. > > The following key fixes have been made since 20120627: > > * Large memory model compilations now disable GCC's induction variable > optimization, because that optimization makes assumptions that are not > satisfied by the memory model. The impact is likely to be relatively > small, as all other optimizations remain enabled. > > * The __even_in_range() intrinsic is now recognized by the compiler. Other > compatibility definitions have been added also, reducing source > incompatibility with IAR and CCS software. > > * Extended-mode instructions are avoided in cases where they are not > necessary to achieve 20-bit support, in particular when manipulating > peripheral registers in applications with -md20. > > * msp430-libc has been extended with basic POSIX-style time management > capabilities. > > * A likely resolution to the issue of Fraunchpad boards claiming an > electronic "fuse blown" problem has been identified and implemented. > > The following known limitations are present: > > * All the 20-bit features were intended to be controlled through type and > declaration attributes, with default settings controlled by compiler > flags. While this is still how it is implemented, gcc is not prepared to > deal with the sort of mixed pointers that individual control enables. > See > > https://sourceforge.net/apps/mediawiki/mspgcc/index.php?title=Gcc47:20-Bit_Design#Warning_about_Mixing_Memory_Models, > and stick to the pre-defined memory models. > > * DWARF2 data for CPUX MCUs now uses 32 bits for addresses instead of 16 > bits. This enables building application with -ggdb when 20-bit addresses > are present. However, gdb has not been updated to recognize this change, > and gdb on CPUX MCUs is probably no longer usable. > > * All testing has been done on toy programs, almost entirely with -Os. > Real applications and other optimization flags may produce errors. > > The patch bundle for 20120716 is available at: > > https://sourceforge.net/projects/mspgcc/files/mspgcc/DEVEL-4.7.x > > The tag workspace/release/20120716 in > git://mspgcc.git.sourceforge.net/gitroot/mspgcc/mspgcc checks out a > workspace configured for this release. The tag workspace/master checks out > a workspace configured for the development series. > > Downstream packagers: If you bundle this, please mark it as experimental. > The stable series remains LTS-20120406. > > As usual, please submit problems as tracker tickets at: > https://sourceforge.net/tracker/?group_id=42303&atid=432701 > > Summary of changes in mspgcc release 20120716 since release 20120627 > > binutils: changes from binutils-2.22-20120627 to binutils-2.22-20120716: > - 9bae3ae [2012-07-16 14:32:05 -0500] Update DEV-PHASE for release > - 1a0ef3d [2012-07-07 17:52:29 -0500] SF 3541237 truncated address in > disassembled jmp > - 0876ac8 [2012-07-02 06:28:15 -0500] Back-port upstream patch. > > gcc: changes from gcc-4.7.0-20120627 to gcc-4.7.0-20120716: > - 58c8933 [2012-07-16 14:31:37 -0500] Update DEV-PHASE for release > - fb2facd [2012-07-16 14:30:41 -0500] Update for release > - b1dc3cd [2012-07-15 06:25:05 -0500] SF 3544338 large memory model > induction variable optimization broken > - 0594213 [2012-07-12 14:32:16 -0500] SF 3540953 fram applications > overwrite bsl/jtag passwords > - 9584b95 [2012-07-09 15:19:38 -0500] Stub __even_in_range intrinsic > - dec1bc2 [2012-07-09 14:36:43 -0500] Pre-check expectations of > MEM_VOLATILE_P > - a7873c4 [2012-07-07 12:39:02 -0500] SF 3541056 inefficient access > through 20-bit pointers > - 3de8c1b [2012-07-07 11:59:25 -0500] Fix region selected for function rodata > - 9e935a26 [2012-07-06 14:10:02 -0500] SF 3539829 long argument > performance degraded compared to mspgcc4 > - dfb6de7 [2012-07-06 10:30:53 -0500] SF 3539033 AND optimization to > BIC not optimal > - 85e86a1 [2012-07-04 13:58:03 -0500] SF 3540458 optimize peripheral > address size > - 5b1196c [2012-07-04 12:12:56 -0500] Detect conflicting type attributes > - e5dce1b [2012-07-04 12:01:26 -0500] Refactor replacement of type > node when attribute added > > gdb: no changes > > msp430-libc: changes from msp430libc-20120627 to msp430libc-20120716: > - 292e920 [2012-07-16 14:32:41 -0500] Regenerate > - d50f4ff [2012-07-16 14:32:41 -0500] Update version number and release notes > - 9a44e06 [2012-07-15 07:44:20 -0500] Regenerate > - eac45cd [2012-07-15 07:44:14 -0500] Separate asctime and > ?ettimeofday from time > - c4b05a8 [2012-07-09 14:50:51 -0500] Regenerate > - 6e9e818 [2012-07-09 13:15:39 -0500] SF 3383730 STDLIB time.h > - 3c72745 [2012-07-09 13:26:40 -0500] Implement gettimeofday/settimeofday > - a120a6b [2012-07-09 12:43:32 -0500] Implement asctime using strftime > - 0964c55 [2012-07-09 12:43:12 -0500] Update to suit msp430-libc needs > - ae749b2 [2012-07-09 11:39:06 -0500] Rip out material inappropriate > for msp430-libc > - 03024b2 [2012-07-09 11:01:17 -0500] Implement time(3p) > - 6803eca [2012-07-09 09:40:53 -0500] Refactor sys/time.h header to > meet msp430-libc needs > - cfda704 [2012-07-09 08:52:57 -0500] Refactor time.h header to meet > msp430-libc needs > - 6620e2b [2012-07-09 12:53:21 -0500] Import time-related functions from BSD > - d54472c [2012-07-09 07:44:53 -0500] Correct definition of NULL > - d30f3c6 [2012-07-06 19:49:41 -0500] Remove unreferenced/outdated include > file > - f4fa0ee [2012-07-03 10:11:00 -0500] SF 3539758 xtoa wastes space > - 75e0304 [2012-07-03 05:29:44 -0500] Regenerate > - e74645d [2012-07-03 05:29:34 -0500] Independently control 20-bit > and 32-bit printf support > > msp430mcu: changes from msp430mcu-20120627 to msp430mcu-20120716: > - 5e7c08c [2012-07-16 14:33:26 -0500] Regenerate > - c2cc549 [2012-07-16 14:33:17 -0500] Update version number and release notes > - 8de3eb5 [2012-07-15 07:23:55 -0500] Regenerate > - 6d53d4c [2012-07-15 07:23:25 -0500] Simplify support for optimized > pointers to peripheral registers > - 78925f9 [2012-07-10 04:55:40 -0500] Regenerate > - 6273ec8 [2012-07-09 15:28:43 -0500] SF 3211744 provide > msp430generic and msp430xgeneric > - ffe34f9 [2012-07-09 15:04:41 -0500] Add aliases for CCS intrinsics > - e418f28 [2012-07-05 16:04:52 -0500] Regenerate > - 1f77abb [2012-07-04 13:59:12 -0500] Add d16 attribute to peripheral > register declaration types ------------------------------------------------------------------------------ Live Security Virtual Conference Exclusive live event will cover all the ways today's security and threat landscape has changed and how IT managers can respond. Discussions will include endpoint security, mobile security and the latest in malware threats. http://www.accelacomm.com/jaw/sfrnl04242012/114/50122263/ _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users