Version 2.14 (MD5(binutils-2.14.tar.gz)= ba665d0ddcc88313384b79e293ecbbab) _has_ the fix but it applies the fix only to some MSP430 architectures and not all. I think I put the files in the wrong order. + marks which have been removed and - marks new lines. I apologize for not following conventions. Attached is a new diff file with - marking old lines and + marking new.
I also downloaded the weekly snapshot of binutils (last updated Tuesday, July 29 2003) and the tc-msp430.c files were the same as the file in 2.14 except the following was added around line 186. @@ -186,6 +186,8 @@ " msp430x1101 msp430x1111\n" " msp430x1121 msp430x1122 msp430x1132\n" " msp430x122 msp430x123\n" + " msp430x1222 msp430x1232\n" + " msp430x133 msp430x135\n" " msp430x1331 msp430x1351\n" " msp430x147 msp430x148 msp430x149\n" " msp430x155 msp430x156 msp430x157\n" I apologize for any confusion this may have caused. -Chris Takahashi DIFF: > cat binutils-msp430.diff --- binutils-2.14/gas/config/tc-msp430.c.old 2003-07-30 16:35:44.000000000 -0700 +++ binutils-2.14/gas/config/tc-msp430.c 2003-07-30 16:49:21.000000000 -0700 @@ -979,11 +979,7 @@ else if (x == 4) { #ifdef PUSH_1X_WORKAROUND - if (bin == 0x1200 - && (msp430_mcu->isa == MSP430_ISA_11 - || msp430_mcu->isa == MSP430_ISA_12 - || msp430_mcu->isa == MSP430_ISA_13 - || msp430_mcu->isa == MSP430_ISA_14)) + if (bin == 0x1200) { /* Remove warning as confusing. as_warn(_("Hardware push bug workaround")); */ @@ -1000,11 +996,7 @@ else if (x == 8) { #ifdef PUSH_1X_WORKAROUND - if (bin == 0x1200 - && (msp430_mcu->isa == MSP430_ISA_11 - || msp430_mcu->isa == MSP430_ISA_12 - || msp430_mcu->isa == MSP430_ISA_13 - || msp430_mcu->isa == MSP430_ISA_14)) + if (bin == 0x1200) { /* Remove warning as confusing. as_warn(_("Hardware push bug workaround")); */ -----Original Message----- From: Dmitry [mailto:di...@mail.ru] Sent: Thursday, July 31, 2003 2:13 AM To: mspgcc-users@lists.sourceforge.net Subject: Re: [Mspgcc-users] MSP430 binutils bug. looks like you're missing something -- 2.14 has this bug workaround. ~d On Thursday 31 July 2003 04:06, Takahashi, Chris wrote: > The work around for the constant generator bug in the link below was still > generating incorrect code. The problem was that the bug was present in all > versions of the msp430 but the work around was only applied to some > versions. > > Attached is a diff -u of a fixed version of > binutils-2.14/gas/config/tc-msp430.c with the original. > > Also attached is some simple code that will generate the faulty code in the > msp430x448 (and others). If you look at an asm listing you will see a push > #4 which generates the opcode 62 12 which is buggy (so is 72 12). > > Bug: > http://www.ti.com/cgi-bin/sc/buglist.cgi?bug=CPU4 > > -Chris Takahashi -- /***************************************************************** ("`-''-/").___..--''"`-._ (\ Dimmy the Wild UA1ACZ `6_ 6 ) `-. ( ).`-.__.`) State Polytechnical Univ. (_Y_.)' ._ ) `._ `. ``-..-' Radio-Physics Departament _..`--'_..-_/ /--'_.' ,' Saint Petersburg, Russia (il),-'' (li),' ((!.-' +7 (812) 5403923, 5585314 *****************************************************************/ ------------------------------------------------------- This SF.Net email sponsored by: Free pre-built ASP.NET sites including Data Reports, E-commerce, Portals, and Forums are available now. Download today and enter to win an XBOX or Visual Studio .NET. http://aspnet.click-url.com/go/psa00100003ave/direct;at.aspnet_072303_01/01 _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users
binutils-msp430.diff
Description: Binary data