Re: why GCC does implicit promotion to unsigned char?

2012-01-27 Thread Richard Guenther
On Thu, Jan 26, 2012 at 4:58 PM, David Brown wrote: > On 26/01/2012 12:53, Konstantin Vladimirov wrote: >> >> Hi, >> >> If I know what I am doing, and my code itself guarantees, that there >> will be no overflows and UB here, can I switch off this signed char to >> unsigned char expansion in favor

Re: why GCC does implicit promotion to unsigned char?

2012-01-27 Thread David Brown
On 27/01/2012 10:02, Richard Guenther wrote: On Thu, Jan 26, 2012 at 4:58 PM, David Brown wrote: On 26/01/2012 12:53, Konstantin Vladimirov wrote: Hi, If I know what I am doing, and my code itself guarantees, that there will be no overflows and UB here, can I switch off this signed char to u

Re: why GCC does implicit promotion to unsigned char?

2012-01-27 Thread Richard Guenther
On Fri, Jan 27, 2012 at 10:40 AM, David Brown wrote: > On 27/01/2012 10:02, Richard Guenther wrote: >> >> On Thu, Jan 26, 2012 at 4:58 PM, David Brown >>  wrote: >>> >>> On 26/01/2012 12:53, Konstantin Vladimirov wrote: Hi, If I know what I am doing, and my code itself gua

RE: ICE building compiler

2012-01-27 Thread Henderson, Stuart
Hi, Whilst investigating an ICE with the Blackfin compiler, I bumped in to a bit of code which seems questionable: in reload1.c:reload() we call select_reload_regs() and then check if failure was set. However, looking at find_reload_regs() (called via select_reload_regs()), the only time we se

Re: why GCC does implicit promotion to unsigned char?

2012-01-27 Thread David Brown
On 27/01/2012 10:56, Richard Guenther wrote: On Fri, Jan 27, 2012 at 10:40 AM, David Brown wrote: On 27/01/2012 10:02, Richard Guenther wrote: On Thu, Jan 26, 2012 at 4:58 PM, David Brown wrote: On 26/01/2012 12:53, Konstantin Vladimirov wrote: Hi, If I know what I am doing, and my co

GCC 4.7.0 Status Report (2012-01-27)

2012-01-27 Thread Jakub Jelinek
Status == GCC is now in stage4, only regression and documentation fixes are being accepted. The trunk will remain in this state until it is sufficiently stable for release. Then we will create the 4.7 branch and do a first release candidate. The overall status looks nice, please keep up the

ANNOUNCE: MELT plugin 0.9.3 release for GCC 4.6 (& probably 4.7)

2012-01-27 Thread Basile Starynkevitch
Hello All, It is my pleasure to announce the release of MELT plugin 0.9.3 for GCC 4.6 (& 4.7 when available) Please download the gzipped tar archive from http://gcc-melt.org/melt-0.9.3-plugin-for-gcc-4.6.tgz (file of 4233531 bytes and md5sum 8df30ba643b11a78a607cde67cdcb073) [w.r.t. previous

Recovering REG_EXPR information after temporary expression replacement

2012-01-27 Thread William J. Schmidt
A member of our team was working on some switch statement optimizations, and ran into a situation that seems a little curious on the face of it. Consider these two test variants: int test_switch_1 (unsigned int *index, int i)

Construction Management Question

2012-01-27 Thread Chuck Lorrell
Hi Webmaster, I created my own Construction Management education site called http://www.constructionmanagementdegree.com, a personal project that I've finally gotten to a stage that is "presentable". I would like to submit my website for your review and inclusion in the resource section of yo

Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andreas Krebbel
Hi, while debugging the java failure Divide_1 on s390 I stumbled over some weird behaviour in the unwinding code. In the testcase a divide by zero is triggered intentionally. So that the java sigfpe handler is invoked in __divdi3: Divide_1::probe_1() -> __divdi3 |SIGFP

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Dave Korn
On 27/01/2012 16:46, Andreas Krebbel wrote: > Divide_1::probe_1() -> __divdi3 >|SIGFPE >V > catch_fpe -> _Jv_Throw > > After doing the instruction parsing in order to figure out whether > it's actually the INT_MIN/-

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andrew Haley
On 01/27/2012 04:46 PM, Andreas Krebbel wrote: > while debugging the java failure Divide_1 on s390 I stumbled over > some weird behaviour in the unwinding code. > > In the testcase a divide by zero is triggered intentionally. So that > the java sigfpe handler is invoked in __divdi3: > > Divide_1::p

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Dave Korn
On 27/01/2012 16:58, Dave Korn wrote: > On 27/01/2012 16:46, Andreas Krebbel wrote: >> So the CFAs of __divdi3 and probe_1 are the same! >> >> This triggers the assertion in _Unwind_RaiseException_Phase2 which >> assumes that it is about to pass the frame with the handler without >> actually findi

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Eric Botcazou
> To my understanding this can only happen if there is control flow from > a leaf function which in turn should only occur with signals. Perhaps > we could modify the CFA "a bit" for the frame where the signal > occurred? There is already a hack in uw_identify_context which does > this for the si

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Dave Korn
On 27/01/2012 17:01, Andrew Haley wrote: > On 01/27/2012 04:46 PM, Andreas Krebbel wrote: >> Starting with this IRA patch: >> http://gcc.gnu.org/ml/gcc-patches/2011-10/msg00028.html >> __divdi3 does *not* need a stack frame at all. >> >> So the CFAs of __divdi3 and probe_1 are the same! > > I'm c

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andrew Haley
On 01/27/2012 05:14 PM, Dave Korn wrote: > On 27/01/2012 17:01, Andrew Haley wrote: >> On 01/27/2012 04:46 PM, Andreas Krebbel wrote: > >>> Starting with this IRA patch: >>> http://gcc.gnu.org/ml/gcc-patches/2011-10/msg00028.html >>> __divdi3 does *not* need a stack frame at all. >>> >>> So the CF

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Dave Korn
On 27/01/2012 17:16, Andrew Haley wrote: > On 01/27/2012 05:14 PM, Dave Korn wrote: >> On 27/01/2012 17:01, Andrew Haley wrote: >>> On 01/27/2012 04:46 PM, Andreas Krebbel wrote: Starting with this IRA patch: http://gcc.gnu.org/ml/gcc-patches/2011-10/msg00028.html __divdi3 does *not*

Re: Recovering REG_EXPR information after temporary expression replacement

2012-01-27 Thread Michael Matz
Hi, On Fri, 27 Jan 2012, William J. Schmidt wrote: > > int > test_switch_1 (unsigned int *index, int i) > { > switch (*index) ... > However, for the first case, temporary expression replacement has > effectively removed th

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andrew Haley
On 01/27/2012 05:18 PM, Dave Korn wrote: > On 27/01/2012 17:16, Andrew Haley wrote: >> On 01/27/2012 05:14 PM, Dave Korn wrote: >>> On 27/01/2012 17:01, Andrew Haley wrote: On 01/27/2012 04:46 PM, Andreas Krebbel wrote: > Starting with this IRA patch: > http://gcc.gnu.org/ml/gcc-patche

[GCC steering committee] TILEPro/TILE-Gx port maintainership

2012-01-27 Thread Walter Lee
I would like to propose myself as the maintainer for the TILEPro and TILE-Gx gcc ports. The gcc ports are currently under review, with the corresponding binutils available in the lastest binutils release (2.22), and the corresponding glibc port has been accepted. I am the primary author of both

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Eric Botcazou
[answering to self...] > Why does this "hack" not work? It was precisely devised for this purpose. Probably because you don't set fs->signal_frame in the fallback routine: /* SIGILL, SIGFPE and SIGTRAP are delivered with psw_addr after the faulting instruction rather than before it.

Re: [GCC steering committee] TILEPro/TILE-Gx port maintainership

2012-01-27 Thread Gerald Pfeifer
I'm raising this on the steering committee, Walter. Gerald

Re: [GCC steering committee] TILEPro/TILE-Gx port maintainership

2012-01-27 Thread Walter Lee
Great. Thanks! Walter On 1/27/2012 1:31 PM, Gerald Pfeifer wrote: I'm raising this on the steering committee, Walter. Gerald

Re: Recovering REG_EXPR information after temporary expression replacement

2012-01-27 Thread William J. Schmidt
Great, thanks! Results are good on this specific test case. Seems like a nice thing to add in 4.8. On Fri, 2012-01-27 at 18:40 +0100, Michael Matz wrote: > Hi, > > On Fri, 27 Jan 2012, William J. Schmidt wrote: > > > > >

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andreas Krebbel
On Fri, Jan 27, 2012 at 06:08:23PM +0100, Eric Botcazou wrote: > > To my understanding this can only happen if there is control flow from > > a leaf function which in turn should only occur with signals. Perhaps > > we could modify the CFA "a bit" for the frame where the signal > > occurred? Ther

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Andreas Krebbel
On 01/27/2012 06:16 PM, Andrew Haley wrote: > On 01/27/2012 05:14 PM, Dave Korn wrote: >> On 27/01/2012 17:01, Andrew Haley wrote: >>> On 01/27/2012 04:46 PM, Andreas Krebbel wrote: >> Starting with this IRA patch: http://gcc.gnu.org/ml/gcc-patches/2011-10/msg00028.html __divdi3 does

Re: Divide_1 testsuite fail due to a problem in the unwinding code

2012-01-27 Thread Eric Botcazou
> Mmmh. But actually it is the stack frame of _divdi3 and not the signal > frame which gets the wrong cfa assigned from here. Not sure though, > perhaps it's time to draw a picture ;) The restored context inherits the signal flag set in the frame description and its CFA points to within _divdi3.

Re: Recovering REG_EXPR information after temporary expression replacement

2012-01-27 Thread Peter Bergner
On Fri, 2012-01-27 at 18:40 +0100, Michael Matz wrote: > The hack below works in this specific situation (TERed into a switch), and > adds a REG_EXPR when an TERed SSA name ever expanded into a pseudo (i.e. > also for some more generic situations). FYI, I bootstrapped and regtested your patch on

gcc-4.6-20120127 is now available

2012-01-27 Thread gccadmin
Snapshot gcc-4.6-20120127 is now available on ftp://gcc.gnu.org/pub/gcc/snapshots/4.6-20120127/ and on various mirrors, see http://gcc.gnu.org/mirrors.html for details. This snapshot has been generated from the GCC 4.6 SVN branch with the following options: svn://gcc.gnu.org/svn/gcc/branches