Hi Lorenzo, > Anyway I opened a bug on the gcc report system; I even devised a two > liner which reproduces the issue, so at least they can look at it > easily.
For which I thank you very much... :-) I have a patch which fixes the problem - at least for the test case you supplied. I am running it through some local regressions tests before submitting it to the FSF, but if you fancy having a go yourself, here it is: Index: stor-layout.c =================================================================== --- stor-layout.c (revision 206241) +++ stor-layout.c (working copy) @@ -2816,7 +2816,8 @@ enum machine_mode target_mode, rtx *mmin, rtx *mmax) { - unsigned size = GET_MODE_BITSIZE (mode); + /* PR 59613: Use the precision of the mode, not its bitsize. */ + unsigned size = GET_MODE_PRECISION (mode); unsigned HOST_WIDE_INT min_val, max_val; gcc_assert (size <= HOST_BITS_PER_WIDE_INT); In my defense I should point out that this is a bug in generic gcc code and not the MSP430 backend. Of course I also should have picked up this problem a long time ago rather than letting it get out into the wilds. Ho Hum. Cheers Nick Clifton PS. For anyone following this thread who wants to see the GCC bug report, it can be found here: http://gcc.gnu.org/bugzilla/show_bug.cgi?id=59613 ------------------------------------------------------------------------------ Rapidly troubleshoot problems before they affect your business. Most IT organizations don't have a clear picture of how application performance affects their revenue. With AppDynamics, you get 100% visibility into your Java,.NET, & PHP application. Start your 15-day FREE TRIAL of AppDynamics Pro! http://pubads.g.doubleclick.net/gampad/clk?id=84349831&iu=/4140/ostg.clktrk _______________________________________________ Mspgcc-users mailing list Mspgcc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/mspgcc-users