Side effects on memory access

2009-04-21 Thread Michael Hope
Hi there.  I'm looking at porting GCC to a new architecture which has
a quite small instruction set and I'm afraid I can't figure out how to
represent unintended side effects on instructions.

My current problem is accessing memory.  Reading an aligned 32 bit
word is simple using LOADACC, (X).  Half words and bytes are harder as
the only instruction available is a load byte with post increment
'LOADACC, (X+)'.

How can I tell GCC that loading a byte also increases the pointer
register?  My first version reserved one of the pointer registers and
threw away the modified value but this is inefficient.  I suspect that
some type of clobber or define_expand is required but I can't figure
it out.

Thanks for any help,

-- Michael


Re: [m32c] IRA reload failures in libstdc++

2009-04-21 Thread Joern Rennecke

Any ideas?


This:

Reload 0: reload_in (SI) = (reg/f:SI 25 [ __i1$_M_current ])
A_REGS, RELOAD_FOR_OTHER_ADDRESS (opnum = 0)
reload_in_reg: (reg/f:SI 25 [ __i1$_M_current ])

cannot be satisfied because there is no A_REGS register
acceptable in SImode.

I suggest making reload reload the PSImode subreg instead, and
make the m32c machine description provide for a tertiary
reload so that the value can be loaded  truncated.


Any thoughts on why gcc has so many problems with this chip?


Having BASE_REG_CLASS with only two members is pretty extreme.
Likewise for not being able to reload an address in an integral
mode.
When you labour on keeping this port working, you are on the
bleeding edge of reload limitations.
I remember when DImode additions caused i386 (elf) PIC reload
problems - but compared with m32c, the i386 integer programming
model is compiler-friendly ;-)


[lto] Problems with cgraph_state updating

2009-04-21 Thread Diego Novillo
Jan,

I've run into a problem with cgraph_state that illustrates some of the
issues I have with the cgraph machinery.  We are currently relying on
pass_all_early_optimizations to move cgraph_state from
CGRAPH_STATE_IPA to CGRAPH_STATE_IPA_SSA:

static unsigned int
execute_early_local_optimizations (void)
{
  /* First time we start with early optimization we need to advance
 cgraph state so newly inserted functions are also early optimized.
 However we execute early local optimizations for lately inserted
 functions, in that case don't reset cgraph state back to IPA_SSA.  */
  if (cgraph_state  CGRAPH_STATE_IPA_SSA)
cgraph_state = CGRAPH_STATE_IPA_SSA;
  return 0;
}

The problem is that when lto1 is running, we do not execute this pass
because it is not needed (it was already executed during cc1/cc1plus),
so this state transition never takes place.

I think there are two problematic aspects to this.  First, the very
existence of cgraph_state as a global variable accessible from
anywhere.  This variable is checked during SSA verification, so the
verifiers are context sensitive.  We should, at the very least, hide
this variable from outside of the cgraph machinery.

The other problem is that we are relying on an optimization pass to
set properties for the cgraph, this should be something done by the
pass manager itself or the cgraph routines (maybe via a TODO_*).  I've
replicated this update inside ipa_passes() but this is sub-optimal.

So, there should be a clear state transition in the cgraph and the
transition should be controlled by cgraph/pass-manager code.  Where
could that be?


Thanks.  Diego.


Re: For backend maintainers: changes for C++ compatibility

2009-04-21 Thread Nick Clifton

Hi Ian,


I would like to ask the maintainers for backends which
I did not mention to bootstrap their targets if possible, and/or to
build them with a newly built mainline compiler, to see if there are new
warnings about C++ compatibility.


For the record I have tested the fr30, iq2000, m32r, mcore, v850 and 
xstormy16 backends and they have no problems.


Cheers
  Nick


[plugins] Branch closed

2009-04-21 Thread Diego Novillo
The only patch remaining to move from the plugins branch are the
testsuite changes, which are waiting for review
(http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01238.html).

I am closing the branch for now.  Any new plugin development should be
done on mainline.  However, we may want to reopen the branch if there
is any new development that would not be ready in time for
stage1/stage2.


Diego.


EH tree is invalid

2009-04-21 Thread Piotr Wyderski
On gcc-trunk my project fails with the following ICE. Whatever it means...

/home/piotr.wyderski/topnotch/vm/test/main.cpp: In function 'int
main(int, char**)':
/home/piotr.wyderski/topnotch/vm/test/main.cpp:32: error: Wrong
prev_try pointer in EH region 123
Eh tree:
   100 catch tree_label:L141 may_contain_throw prev: 97 type:
 102 must_not_throw tree_label:L143 may_contain_throw
 101 cleanup tree_label:L142 may_contain_throw
   97 catch tree_label:L137 may_contain_throw prev: 94 next 100
type:struct exception
 99 must_not_throw tree_label:L139 may_contain_throw
 98 cleanup tree_label:L138 may_contain_throw
   94 catch tree_label:L134 may_contain_throw next 97 type:struct rc_ptr
 96 must_not_throw tree_label:L136 may_contain_throw
 95 cleanup tree_label:L135 may_contain_throw
   1 try may_contain_throw catch regions: 94 97 100
 93 must_not_throw tree_label:L132 may_contain_throw
 2 cleanup tree_label:L131 may_contain_throw prev try:1
   92 must_not_throw tree_label:L129 may_contain_throw
   3 cleanup tree_label:L128 may_contain_throw prev try:1
 91 must_not_throw tree_label:L126 may_contain_throw
 4 cleanup tree_label:L125 may_contain_throw prev try:1
   90 must_not_throw tree_label:L123 may_contain_throw
   5 cleanup tree_label:L122 may_contain_throw prev try:1
 89 must_not_throw tree_label:L120 may_contain_throw
 6 cleanup tree_label:L119 may_contain_throw prev try:1
   88 must_not_throw tree_label:L117 may_contain_throw
   7 cleanup tree_label:L116 may_contain_throw prev try:1
 87 must_not_throw tree_label:L114 may_contain_throw
 8 cleanup tree_label:L113 may_contain_throw prev try:1
   86 must_not_throw tree_label:L111 may_contain_throw
   9 cleanup tree_label:L110 may_contain_throw prev try:1
 85 must_not_throw tree_label:L108 may_contain_throw
 10 cleanup tree_label:L107 may_contain_throw prev try:1
   84 must_not_throw tree_label:L105 may_contain_throw
   11 cleanup tree_label:L104 may_contain_throw prev try:1
 83 must_not_throw tree_label:L102 may_contain_throw
 34 cleanup tree_label:L101
may_contain_throw prev try:1
   82 must_not_throw tree_label:L99 may_contain_throw
   37 cleanup tree_label:L98
may_contain_throw prev try:1
 81 must_not_throw tree_label:L96
may_contain_throw
 40 cleanup tree_label:L95
may_contain_throw prev try:1
   80 must_not_throw tree_label:L93
may_contain_throw
   43 cleanup tree_label:L92
may_contain_throw prev try:1
 79 must_not_throw tree_label:L90
may_contain_throw
 46 cleanup tree_label:L89
may_contain_throw prev try:1
   78 must_not_throw tree_label:L87
may_contain_throw
   49 cleanup tree_label:L86
may_contain_throw prev try:1
 77 must_not_throw
tree_label:L84 may_contain_throw
 52 cleanup tree_label:L83
may_contain_throw prev try:1
   76 must_not_throw
tree_label:L81 may_contain_throw
   55 cleanup tree_label:L80
may_contain_throw prev try:1
 75 must_not_throw
 56 cleanup tree_label:L78
may_contain_throw prev try:1
   74 must_not_throw
tree_label:L76 may_contain_throw
   57 cleanup tree_label:L75
may_contain_throw prev try:1
 73 must_not_throw
tree_label:L73 may_contain_throw
 58 cleanup
tree_label:L72 may_contain_throw prev try:1
   72 must_not_throw
tree_label:L70 may_contain_throw
   59 cleanup
tree_label:L69 may_contain_throw prev try:1
 71 must_not_throw
tree_label:L67 may_contain_throw
 60 cleanup
tree_label:L66 may_contain_throw prev try:1
   70 must_not_throw
tree_label:L64 may_contain_throw
   61 cleanup
tree_label:L63 may_contain_throw prev try:1
 69 must_not_throw
tree_label:L61 may_contain_throw
 62 cleanup
tree_label:L60 may_contain_throw prev try:1
  

Re: EH tree is invalid

2009-04-21 Thread Richard Guenther
On Tue, Apr 21, 2009 at 3:56 PM, Piotr Wyderski
piotr.wyder...@gmail.com wrote:
 On gcc-trunk my project fails with the following ICE. Whatever it means...

 /home/piotr.wyderski/topnotch/vm/test/main.cpp: In function 'int
 main(int, char**)':
 /home/piotr.wyderski/topnotch/vm/test/main.cpp:32: error: Wrong
 prev_try pointer in EH region 123
 Eh tree:
   100 catch tree_label:L141 may_contain_throw prev: 97 type:
     102 must_not_throw tree_label:L143 may_contain_throw
     101 cleanup tree_label:L142 may_contain_throw
   97 catch tree_label:L137 may_contain_throw prev: 94 next 100
 type:struct exception
     99 must_not_throw tree_label:L139 may_contain_throw
     98 cleanup tree_label:L138 may_contain_throw
   94 catch tree_label:L134 may_contain_throw next 97 type:struct rc_ptr
     96 must_not_throw tree_label:L136 may_contain_throw
     95 cleanup tree_label:L135 may_contain_throw
   1 try may_contain_throw catch regions: 94 97 100
     93 must_not_throw tree_label:L132 may_contain_throw
     2 cleanup tree_label:L131 may_contain_throw prev try:1
       92 must_not_throw tree_label:L129 may_contain_throw
       3 cleanup tree_label:L128 may_contain_throw prev try:1
         91 must_not_throw tree_label:L126 may_contain_throw
         4 cleanup tree_label:L125 may_contain_throw prev try:1
           90 must_not_throw tree_label:L123 may_contain_throw
           5 cleanup tree_label:L122 may_contain_throw prev try:1
             89 must_not_throw tree_label:L120 may_contain_throw
             6 cleanup tree_label:L119 may_contain_throw prev try:1
               88 must_not_throw tree_label:L117 may_contain_throw
               7 cleanup tree_label:L116 may_contain_throw prev try:1
                 87 must_not_throw tree_label:L114 may_contain_throw
                 8 cleanup tree_label:L113 may_contain_throw prev try:1
                   86 must_not_throw tree_label:L111 may_contain_throw
                   9 cleanup tree_label:L110 may_contain_throw prev try:1
                     85 must_not_throw tree_label:L108 may_contain_throw
                     10 cleanup tree_label:L107 may_contain_throw prev try:1
                       84 must_not_throw tree_label:L105 may_contain_throw
                       11 cleanup tree_label:L104 may_contain_throw prev 
 try:1
                         83 must_not_throw tree_label:L102 may_contain_throw
                         34 cleanup tree_label:L101
 may_contain_throw prev try:1
                           82 must_not_throw tree_label:L99 may_contain_throw
                           37 cleanup tree_label:L98
 may_contain_throw prev try:1
                             81 must_not_throw tree_label:L96
 may_contain_throw
                             40 cleanup tree_label:L95
 may_contain_throw prev try:1
                               80 must_not_throw tree_label:L93
 may_contain_throw
                               43 cleanup tree_label:L92
 may_contain_throw prev try:1
                                 79 must_not_throw tree_label:L90
 may_contain_throw
                                 46 cleanup tree_label:L89
 may_contain_throw prev try:1
                                   78 must_not_throw tree_label:L87
 may_contain_throw
                                   49 cleanup tree_label:L86
 may_contain_throw prev try:1
                                     77 must_not_throw
 tree_label:L84 may_contain_throw
                                     52 cleanup tree_label:L83
 may_contain_throw prev try:1
                                       76 must_not_throw
 tree_label:L81 may_contain_throw
                                       55 cleanup tree_label:L80
 may_contain_throw prev try:1
                                         75 must_not_throw
                                         56 cleanup tree_label:L78
 may_contain_throw prev try:1
                                           74 must_not_throw
 tree_label:L76 may_contain_throw
                                           57 cleanup tree_label:L75
 may_contain_throw prev try:1
                                             73 must_not_throw
 tree_label:L73 may_contain_throw
                                             58 cleanup
 tree_label:L72 may_contain_throw prev try:1
                                               72 must_not_throw
 tree_label:L70 may_contain_throw
                                               59 cleanup
 tree_label:L69 may_contain_throw prev try:1
                                                 71 must_not_throw
 tree_label:L67 may_contain_throw
                                                 60 cleanup
 tree_label:L66 may_contain_throw prev try:1
                                                   70 must_not_throw
 tree_label:L64 may_contain_throw
                                                   61 cleanup
 tree_label:L63 may_contain_throw prev try:1
                                                     69 must_not_throw
 tree_label:L61 may_contain_throw
                                               

Re: EH tree is invalid

2009-04-21 Thread Piotr Wyderski
Richard Guenther wrote:

 Please file a bugreport in bugzilla and attach preprocessed source.

Impossible, the source code is proprietary. But perhaps
I can try to prepare a simplified testcase though...

Best regards
Piotr Wyderski


Re: EH tree is invalid

2009-04-21 Thread Dave Korn
Piotr Wyderski wrote:
 On gcc-trunk my project fails with the following ICE. Whatever it means...

  Are you using SJLJ or DW2 exceptions?  If SJLJ, does the patch at

http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01628.html

help the problem?

cheers,
  DaveK



Re: EH tree is invalid

2009-04-21 Thread Piotr Wyderski
Dave Korn wrote:

  Are you using SJLJ or DW2 exceptions?

SJLJ only -- DW2 doesn't work on Windows if the exception
handling scope crosses DLL boundaries.

  If SJLJ, does the patch at

    http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01628.html

 help the problem?

Hm, it seems that rev 146517 does not build on Cygwin,
so I am unable to check it right now. But I'll try the patch
ASAB (as soon as buildable :D)

make[3]: Entering directory `/home/piotr.wyderski/build/gcc-trunk/objdir/gcc'
/home/piotr.wyderski/build/gcc-trunk/objdir/./prev-gcc/xgcc -B/home/piotr.wyders
ki/build/gcc-trunk/objdir/./prev-gcc/ -B/opt/gcc-4.5-trunk/i686-pc-cygwin/bin/ -
c  -g -O2 -DIN_GCC   -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prot
otypes -Wcast-qual -Wold-style-definition -Wc++-compat -Wmissing-format-attribut
e -pedantic -Wno-long-long -Wno-variadic-macros -Wno-overlength-strings -Werror
-fno-common  -DHAVE_CONFIG_H -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/../in
clude -I../../gcc/../libcpp/include  -I../../gcc/../libdecnumber -I../../gcc/../
libdecnumber/dpd -I../libdecnumber../../gcc/sdbout.c -o sdbout.o
cc1: warnings being treated as errors
../../gcc/sdbout.c: In function 'sdbout_symbol':
../../gcc/sdbout.c:773: error: enum conversion when passing argument 2 of 'elimi
nate_regs' is invalid in C++
../../gcc/reload.h:346: note: expected 'enum machine_mode' but argument is of ty
pe 'int'
../../gcc/sdbout.c: In function 'sdbout_parms':
../../gcc/sdbout.c:1274: error: enum conversion when passing argument 2 of 'elim
inate_regs' is invalid in C++
../../gcc/reload.h:346: note: expected 'enum machine_mode' but argument is of ty
pe 'int'

Best regards
Piotr Wyderski


Re: Side effects on memory access

2009-04-21 Thread Ian Lance Taylor
Michael Hope micha...@juju.net.nz writes:

 Hi there.  I'm looking at porting GCC to a new architecture which has
 a quite small instruction set and I'm afraid I can't figure out how to
 represent unintended side effects on instructions.

 My current problem is accessing memory.  Reading an aligned 32 bit
 word is simple using LOADACC, (X).  Half words and bytes are harder as
 the only instruction available is a load byte with post increment
 'LOADACC, (X+)'.

Wow.

 How can I tell GCC that loading a byte also increases the pointer
 register?  My first version reserved one of the pointer registers and
 threw away the modified value but this is inefficient.  I suspect that
 some type of clobber or define_expand is required but I can't figure
 it out.

Well, you can use a define_expand to generate the move in the first
place.  If can_create_pseudo_p() returns true, then you can call
copy_to_reg (addr) to get the address into a register, and you can
generate the post increment.

(define_expand movhi
  ...
  if (can_create_pseudo_p ()  MEM_P (operands[1]))
{
  rtx reg = copy_to_reg (XEXP (operands[1], 0));
  emit_insn (gen_movhi_insn (operands[0], reg));
  DONE;
}
  ...
)

(define_insn movhi_insn
  [(set (match_operand:HI 0 ...)
(mem:HI (post_inc:P (match_operand:P 1 register_operand ...]
  ...
)

The difficulties are going to come in reload.  Reload will want to load
and store 16-bit values in order to spill registers.  You will need a
scratch register to dothis, and that means that you need to implement
TARGET_SECONDARY_RELOAD.  This is complicated:read the docs carefully
and look at the existing examples.

Ian


Re: GCC 4.3.2 bug (was: Illegal subtraction in tmp-dive_1.s)

2009-04-21 Thread Vincent Lefevre
On 2009-04-20 15:17:44 +0200, Vincent Lefevre wrote:
 On 2009-04-17 12:09:42 -0500, Gabriel Dos Reis wrote:
  At least, let's get it archived on GCC mailing lists.
 
 Is it a bug that has been identified?

FYI, this has been fixed in the 4.3 branch in r143494.
This was PR tree-optimization/36765.

-- 
Vincent Lefèvre vinc...@vinc17.org - Web: http://www.vinc17.org/
100% accessible validated (X)HTML - Blog: http://www.vinc17.org/blog/
Work: CR INRIA - computer arithmetic / Arenaire project (LIP, ENS-Lyon)


Re: EH tree is invalid

2009-04-21 Thread Dave Korn
Piotr Wyderski wrote:
 Dave Korn wrote:
 
  Are you using SJLJ or DW2 exceptions?
 
 SJLJ only -- DW2 doesn't work on Windows if the exception
 handling scope crosses DLL boundaries.

  It does these days as long as you're using shared libraries, but that's a
separate issue.

  If SJLJ, does the patch at

http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01628.html

 help the problem?
 
 Hm, it seems that rev 146517 does not build on Cygwin,
 so I am unable to check it right now. But I'll try the patch
 ASAB (as soon as buildable :D)

  I just ran into this problem as well, try the attached.

cheers,
  DaveK
Index: gcc/sdbout.c
===
--- gcc/sdbout.c	(revision 146515)
+++ gcc/sdbout.c	(working copy)
@@ -771,7 +771,7 @@
 	return;
 
   SET_DECL_RTL (decl,
-		eliminate_regs (DECL_RTL (decl), 0, NULL_RTX));
+		eliminate_regs (DECL_RTL (decl), VOIDmode, NULL_RTX));
 #ifdef LEAF_REG_REMAP
   if (current_function_uses_only_leaf_regs)
 	leaf_renumber_regs_insn (DECL_RTL (decl));
@@ -1271,9 +1271,9 @@
 	/* Perform any necessary register eliminations on the parameter's rtl,
 	   so that the debugging output will be accurate.  */
 	DECL_INCOMING_RTL (parms)
-	  = eliminate_regs (DECL_INCOMING_RTL (parms), 0, NULL_RTX);
+	  = eliminate_regs (DECL_INCOMING_RTL (parms), VOIDmode, NULL_RTX);
 	SET_DECL_RTL (parms,
-		  eliminate_regs (DECL_RTL (parms), 0, NULL_RTX));
+		  eliminate_regs (DECL_RTL (parms), VOIDmode, NULL_RTX));
 
 	if (PARM_PASSED_IN_MEMORY (parms))
 	  {


GCC 4.4.1 Status Report (2009-04-21)

2009-04-21 Thread Joseph S. Myers
Status
==

GCC 4.4.0 has been built and uploaded today and 4.4 branch is open
under release branch rules for regression and documentation fixes
leading to the 4.4.1 release; the release will be announced once time
has been allowed for mirrors to pick up the files.  It is likely that
4.4.1 will be released in about two months' time.

Quality Data


Priority  # Change from Last Report
--- ---
P10 +- 0
P2   75 -  2
P39 +  8
--- ---
Total84 +  6

Previous Report
===

http://gcc.gnu.org/ml/gcc/2009-04/msg00406.html

The next report for 4.4.1 will be sent by Mark.

-- 
Joseph S. Myers
jos...@codesourcery.com


GCC 4.5.0 Status Report (2009-04-21)

2009-04-21 Thread Joseph S. Myers
Status
==

Trunk is in Stage 1.  It is expected that Stage 1 will last at least
four months (so ending no earlier than 27 July) and will be followed
by Stage 3 (bug-fix-only mode); whether it ends on 27 July may depend
on whether there remain unmerged features at that date that we wish to
merge for 4.5 and that seem sufficiently close to being ready to merge
to make it worth delaying the end of Stage 1.

Branches merged to trunk so far include alias-improvements,
c-4_5-branch and plugins.  Various changes have merged from gcc-in-cxx
and lto that are prerequisites for the main objects of those branches.

Quality Data


(Figures for changes are relative to today's 4.4 report as there have
been no previous 4.5 reports.)

Priority  # Change from Last Report
--- ---
P10 +- 0
P2   73 -  2
P3   15 +  6
--- ---
Total88 +  4

Previous Report
===

http://gcc.gnu.org/ml/gcc/2009-04/msg00564.html (4.4 report)

The next report for 4.5.0 will be sent by Mark.

-- 
Joseph S. Myers
jos...@codesourcery.com


http://gcc.gnu.org/gcc-4.4/changes.html

2009-04-21 Thread Jack Howarth
   A couple changes in gcc 4.4.0 were omitted for
the darwin target. The gcc 4.4.0 release now supports
a full multilib build on the x86_64-apple-darwin9 and
x86_64-apple-darwin10 targets. The gfortran compiler
is now capable of generating binaries linked against
the static libgfortran library using the compiler option
-static-libgfortran. FYI.
  Jack


Enable Ada when there is an Ada compiler? (Was: [PATCH] Simplified switch conversion in simple cases)

2009-04-21 Thread Laurent GUERBY
Hi,

What about enabling Ada build in 4.5 when configure finds out a suitable
Ada compiler?

Laurent

On Tue, 2009-04-21 at 22:28 +0200, Eric Botcazou wrote:
 This breaks Ada on x86:





Inefficient loads in certain loops depending on data declaration

2009-04-21 Thread Jean Christophe Beyler
Dear all,

As I work through handling load multiples and store multiples for my
target architecture, I came in front of this scenario:

int foo(int data[10240])
{
int w0, w1;
int part = 0,i ;

for (i=0; i1;i+=2){
w0 = data[i];
w1 = data[i+1];
part += w0 + w1 ;
}

return part;
}


int bar(void)
{
int w0, w1;
int part = 0,i ;
int data[10240];

fillit (data);

for (i=0; i1;i+=2){
w0 = data[i];
w1 = data[i+1];
part += w0 + w1 ;
}

return part;
}


In the case where data is defined as a parameter, I get two separate
loads with no offsets. GCC handles both loads separately. This means
more register pressure and more instructions in the loop. In essence I
get:

ld r1, (0)r5
ld r2, (0)r6

Instead of :

ld r1, (0)r5
ld r2, (8)r6

which I do get if the array is declared in the function.

I have written the address_cost function to handle this case and tell
the compiler that it is better to use the offsets but in this
scenario, the compiler is not calling the address cost function before
already getting those two different registers. So I don't why it's
already expanding those loads before getting to that call

Any ideas, thanks?
Jc


Re: Reserving a number of consecutive registers

2009-04-21 Thread Jean Christophe Beyler
Ok, I've been working at this and have actually made a bit of progress.

- I now have a framework that finds the group of loads (let's assume
they stay together).

- With the DF framework, I'm able to figure out which registers are
being used and which are free to be used.

- I've pretty much got it to change the registers to the ones I want
but there are still some corner cases where it seems to be badly
handling that and actually changing the semantics of the program.

I'll look into that, thanks,
Jc

On Mon, Apr 20, 2009 at 3:01 PM, Eric Botcazou ebotca...@adacore.com wrote:
 Ok, I'll try to look at that. Is there an area where I can see how to
 initialize the framework and get information about which registers are
 free?

 The API is in df.h, see for example ifcvt.c.

 --
 Eric Botcazou



gcc-4.4-20090421 is now available

2009-04-21 Thread gccadmin
Snapshot gcc-4.4-20090421 is now available on
  ftp://gcc.gnu.org/pub/gcc/snapshots/4.4-20090421/
and on various mirrors, see http://gcc.gnu.org/mirrors.html for details.

This snapshot has been generated from the GCC 4.4 SVN branch
with the following options: svn://gcc.gnu.org/svn/gcc/branches/gcc-4_4-branch 
revision 146539

You'll find:

gcc-4.4-20090421.tar.bz2  Complete GCC (includes all of below)

gcc-core-4.4-20090421.tar.bz2 C front end and core compiler

gcc-ada-4.4-20090421.tar.bz2  Ada front end and runtime

gcc-fortran-4.4-20090421.tar.bz2  Fortran front end and runtime

gcc-g++-4.4-20090421.tar.bz2  C++ front end and runtime

gcc-java-4.4-20090421.tar.bz2 Java front end and runtime

gcc-objc-4.4-20090421.tar.bz2 Objective-C front end and runtime

gcc-testsuite-4.4-20090421.tar.bz2The GCC testsuite

Diffs from 4.4-20090414 are available in the diffs/ subdirectory.

When a particular snapshot is ready for public consumption the LATEST-4.4
link is updated and a message is sent to the gcc list.  Please do not use
a snapshot before it has been announced that way.


[Bug c/16202] The -Wsequence-point warning misses many important instances

2009-04-21 Thread manu at gcc dot gnu dot org


--- Comment #12 from manu at gcc dot gnu dot org  2009-04-21 07:47 ---
Subject: Bug 16202

Author: manu
Date: Tue Apr 21 07:47:13 2009
New Revision: 146472

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146472
Log:
2009-04-21  Manuel López-Ibáñez  m...@gcc.gnu.org

PR 16202
* c-typeck.c (lvalue_p): Move declaration ...
* c-common.h (lvalue_p): ... to here.
* c-common.c (candidate_equal_p): New.
(add_tlist): Use it.
(merge_tlist): Use it.
(warn_for_collisions_1): Likewise.
(warning_candidate_p): Accept more candidates.
(verify_tree): A warning candidate can be an expression. Use
candidate_equal_p.
cp/
* tree.c (lvalue_p_1): Use const_tree.
Use CONST_CAST_TREE to avoid warning.
(lvalue_p): Returns bool, receives const_tree.
testsuite/
* gcc.dg/sequence-pt-1.c: Remove XFAILs.
* gcc.dg/sequence-pt-2.c: New.
* gcc.dg/sequence-pt-3.c: New.
* g++.dg/warn/sequence-pt-1.C: Remove XFAILs.
* g++.dg/warn/sequence-pt-2.c: New.
* g++.dg/warn/sequence-pt-3.c: New.

Added:
trunk/gcc/testsuite/g++.dg/warn/sequence-pt-2.C
trunk/gcc/testsuite/g++.dg/warn/sequence-pt-3.C
trunk/gcc/testsuite/gcc.dg/sequence-pt-2.c
trunk/gcc/testsuite/gcc.dg/sequence-pt-3.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/c-common.c
trunk/gcc/c-common.h
trunk/gcc/c-typeck.c
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/cp-tree.h
trunk/gcc/cp/tree.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/warn/sequence-pt-1.C
trunk/gcc/testsuite/gcc.dg/sequence-pt-1.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16202



[Bug c/16202] The -Wsequence-point warning misses many important instances

2009-04-21 Thread manu at gcc dot gnu dot org


--- Comment #13 from manu at gcc dot gnu dot org  2009-04-21 07:48 ---
FIXED in GCC 4.5


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16202



[Bug middle-end/39827] [4.5 Regression] ICE (segfault) when compiling gcc/varasm.c (in notice_global_symbol)

2009-04-21 Thread burnus at gcc dot gnu dot org


--- Comment #2 from burnus at gcc dot gnu dot org  2009-04-21 07:56 ---
Caused by http://gcc.gnu.org/ml/gcc-patches/2009-04/msg01558.html

r146425 | rguenth | 2009-04-20 16:01:52 +0200 (Mon, 20 Apr 2009) | 10 lines
Changed paths:
   M /trunk/gcc/ChangeLog
   M /trunk/gcc/basic-block.h
   M /trunk/gcc/dominance.c
   M /trunk/gcc/tree-cfg.c
   M /trunk/gcc/tree-ssa-phiprop.c

2009-04-20  Richard Guenther  rguent...@suse.de

* basic-block.h (get_all_dominated_blocks): Declare.
* dominance.c (get_all_dominated_blocks): New function.
* tree-cfg.c (get_all_dominated_blocks): Remove.
(remove_edge_and_dominated_blocks): Adjust.
* tree-ssa-phiprop.c (tree_ssa_phiprop_1): Fold in ...
(tree_ssa_phiprop): ... here.  Use get_all_dominated_blocks
instead of recursing.


-- 

burnus at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39827



[Bug target/37121] g++ create global symbol for inline function, which make link failed with multiple definitions

2009-04-21 Thread ktietz at gcc dot gnu dot org


--- Comment #16 from ktietz at gcc dot gnu dot org  2009-04-21 08:27 ---
(In reply to comment #15)
 (In reply to comment #14)
  or remove the ordinary  C library function in
  lib64_libmingwex_a-wininterlocked.o and just keep the inline function ?
  
 That would be my first experiment.  What depends on 
 lib64_libmingwex_a-wininterlocked.o 
 Danny

we implemented int wininterlocked.c file the common interlocked symbols,
because some of them should be inlined for performance reasons. To remove the
inline version seems to be the best solution for me here. Because otherwise we
would disallow a function pointer reference to it.
Possibly we could make als define those symbols in wininterlocked.c as weak,
does this help?

Kai


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37121



[Bug tree-optimization/39829] [4.5 Regression] ICE with some code that produces VCE

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2009-04-21 08:36 ---
Mine.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |rguenth at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 08:36:55
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39829



[Bug testsuite/39830] gcc.dg/torture/pr39678.c fails if char type is unsigned

2009-04-21 Thread jakub at gcc dot gnu dot org


--- Comment #6 from jakub at gcc dot gnu dot org  2009-04-21 08:39 ---
I've fixed this:
http://gcc.gnu.org/viewcvs?root=gccview=revrev=146470
http://gcc.gnu.org/viewcvs?root=gccview=revrev=146471 (4.4)
and only afterwards Andrew Pinski pointed me at this PR.

Sorry for not checking bugzilla first.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39830



[Bug c/39834] New: verify_cgraph_node failed with -O3 -Winline

2009-04-21 Thread dcb314 at hotmail dot com
I just tried to compile the Suse Linux package mined-2000.14-88.34
with the GNU gcc version 4.5 snapshot 20090416.

The compiler said

textfile.c:3154: error: edge EXFILE-bottom_line has no corresponding call_stmt
# .MEM = VDEF .MEM
bottom_line (1, Already at last file[0], 0B, 0B, 0, [0]);

EXFILE/101(101) [0x2b066b8f9400]: availability:available 44 insns (100 after
inlining) needed body externally_visible finalized inlinable
  called by:
  calls: edit_nth_file/91 (nested in 29 loops) bottom_line/105 (nested in 86
loops) quit_mined/90 (nested in 86 loops) edit_nth_file/91 (nested in 142
loops) quit_mined/90 (0.54 per call) write_text/75 (0.29 per call)
textfile.c:3154: internal compiler error: verify_cgraph_node failed
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

Preprocessed source code attached. Flags -O3 -Winline required.


-- 
   Summary: verify_cgraph_node failed with -O3 -Winline
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: dcb314 at hotmail dot com
  GCC host triplet: x86_64-suse-linux


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39834



[Bug c/39834] verify_cgraph_node failed with -O3 -Winline

2009-04-21 Thread dcb314 at hotmail dot com


--- Comment #1 from dcb314 at hotmail dot com  2009-04-21 09:46 ---
Created an attachment (id=17662)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17662action=view)
C source code


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39834



[Bug middle-end/39824] [4.5 Regression] ice in fold-const.c

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-21 10:18 ---
Confirmed.

static const double internalEndianMagic = 7.949928895127363e-275;
static const unsigned char ieee_754_mantissa_mask[] = { 0x00, 0x0F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF };
static inline int 
trio_isnan (double number)
{
  int has_mantissa = 0;
  unsigned int i;
  unsigned char current;
  for (i = 0; i  (unsigned int)sizeof(double); i++)
{
  current = ((unsigned char *)number)[(((unsigned char
*)internalEndianMagic)[7-(i)])];
  has_mantissa |= (current  ieee_754_mantissa_mask[i]);
}
  return has_mantissa;
}
void
xmlXPathEqualNodeSetFloat(int nodeNr, double v)
{
  int i;
  for (i=0; inodeNr; i++)
if (!trio_isnan(v))
  break;
}


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  Known to work||4.4.0
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 10:18:27
   date||
Summary|ice in fold-const.c |[4.5 Regression] ice in
   ||fold-const.c
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39824



[Bug testsuite/39831] gcc.target/i386/excess-precision-*.c assume the default -mfp-math does not include SSE

2009-04-21 Thread joseph at codesourcery dot com


--- Comment #1 from joseph at codesourcery dot com  2009-04-21 10:20 ---
Subject: Re:   New: gcc.target/i386/excess-precision-*.c
 assume the default -mfp-math does not include SSE

Probably all six excess precision tests should have explicit -mfpmath=387.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39831



[Bug bootstrap/12022] arm-coff build is broken: dies on crtstuff.c with #error

2009-04-21 Thread jsm28 at gcc dot gnu dot org


--- Comment #7 from jsm28 at gcc dot gnu dot org  2009-04-21 10:23 ---
Yes, closing since this target has been removed for 4.5.


-- 

jsm28 at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WONTFIX


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=12022



[Bug middle-end/39834] [4.5 Regression] verify_cgraph_node failed with -O3 -Winline

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-21 10:31 ---
Confirmed.  The following fails at -O -Winline.

void quit_mined ();
void bottom_line ();
typedef enum { False, True } FLAG;
inline void
nextfile (FLAG exitiflast)
{
  if (exitiflast) 
quit_mined ();
  else 
bottom_line ();
  nextfile (True);
}


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
  Component|c   |middle-end
 Ever Confirmed|0   |1
   Keywords||ice-on-valid-code
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 10:31:24
   date||
Summary|verify_cgraph_node failed   |[4.5 Regression]
   |with -O3 -Winline   |verify_cgraph_node failed
   ||with -O3 -Winline
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39834



[Bug libstdc++/39835] Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected �,� or �...� before numeric constant

2009-04-21 Thread ubizjak at gmail dot com


--- Comment #1 from ubizjak at gmail dot com  2009-04-21 10:33 ---
We have a symbol name clash:

This is from libstdc++:

explicit
param_type(_RealType __alpha = _RealType(1),
   _RealType __beta = _RealType(1))
: _M_alpha(__alpha), _M_beta(__beta)

And this from alpha config:

#define TARGET_CPU_CPP_BUILTINS()   \
  do\
{   \
builtin_define (__alpha); \
builtin_define (__alpha__);   \

Can libstdc++ define symbol name to something else instead of __alpha?


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39835



[Bug libstdc++/39835] Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected �,� or �...� before numeric constant

2009-04-21 Thread paolo dot carlini at oracle dot com


--- Comment #2 from paolo dot carlini at oracle dot com  2009-04-21 11:15 
---
Sure, this is an annoying recurring issue, I'll fix it momentarily.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |paolo dot carlini at oracle
   |dot org |dot com
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 11:15:00
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39835



[Bug middle-end/39824] ice in fold-const.c

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2009-04-21 09:53 ---
Reducing.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39824



[Bug c/39834] verify_cgraph_node failed with -O3 -Winline

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2009-04-21 10:19 ---
Reducing.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39834



[Bug middle-end/39827] [4.5 Regression] ICE (segfault) when compiling gcc/varasm.c (in notice_global_symbol)

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2009-04-21 09:58 ---
Fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39827



[Bug libstdc++/39835] Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected �,� or �...� before numeric constant

2009-04-21 Thread paolo at gcc dot gnu dot org


--- Comment #3 from paolo at gcc dot gnu dot org  2009-04-21 11:43 ---
Subject: Bug 39835

Author: paolo
Date: Tue Apr 21 11:42:51 2009
New Revision: 146516

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146516
Log:
2009-04-21  Paolo Carlini  paolo.carl...@oracle.com

PR libstdc++/39835
* include/bits/random.h: Avoid the badname __alpha (and, for
consistency, __beta too).
* include/bits/random.tcc: Likewise.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/bits/random.h
trunk/libstdc++-v3/include/bits/random.tcc


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39835



[Bug libstdc++/39835] Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected �,� or �...� before numeric constant

2009-04-21 Thread paolo dot carlini at oracle dot com


--- Comment #4 from paolo dot carlini at oracle dot com  2009-04-21 11:44 
---
Fixed.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39835



[Bug c++/39823] GCC 4.4.0 produces bad code for libstdc++

2009-04-21 Thread d dot g dot gorbachev at gmail dot com


--- Comment #5 from d dot g dot gorbachev at gmail dot com  2009-04-21 
12:24 ---
(In reply to comment #4)

Sorry, my mistake. The problem indeed was in the caller because of different
compiler flags.


-- 

d dot g dot gorbachev at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39823



[Bug middle-end/39827] [4.5 Regression] ICE (segfault) when compiling gcc/varasm.c (in notice_global_symbol)

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2009-04-21 09:58 ---
Subject: Bug 39827

Author: rguenth
Date: Tue Apr 21 09:58:38 2009
New Revision: 146515

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146515
Log:
2009-04-21  Richard Guenther  rguent...@suse.de

PR tree-optimization/39827
* tree-ssa-phiprop.c (propagate_with_phi): Check SSA_NAME
is in range.
(tree_ssa_phiprop): Pass the correct array size.

Modified:
trunk/gcc/ChangeLog
trunk/gcc/tree-ssa-phiprop.c


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39827



[Bug libstdc++/39835] New: Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected �,� or �...� before numeric constant

2009-04-21 Thread ubizjak at gmail dot com
Bootstrap on alpha fails in libstdc++ with:

/home/uros/gcc-build/./gcc/xgcc -shared-libgcc -B/home/uros/gcc-build/./gcc
-nostdinc++ -L/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/src
-L/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/src/.libs
-B/usr/local/alphaev56-unknown-linux-gnu/bin/
-B/usr/local/alphaev56-unknown-linux-gnu/lib/ -isystem
/usr/local/alphaev56-unknown-linux-gnu/include -isystem
/usr/local/alphaev56-unknown-linux-gnu/sys-include -Winvalid-pch -x c++-header
-g -O2   -D_GNU_SOURCE -mieee  
-I/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/alphaev56-unknown-linux-gnu
-I/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include
-I/home/uros/gcc-svn/gcc/libstdc++-v3/libsupc++ -O2 -g -std=gnu++0x
/home/uros/gcc-svn/gcc/libstdc++-v3/include/precompiled/stdc++.h \
-o alphaev56-unknown-linux-gnu/bits/stdc++.h.gch/O2ggnu++0x.gch
In file included from
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/random:50,
 from
/home/uros/gcc-svn/gcc/libstdc++-v3/include/precompiled/stdc++.h:102:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:3630:
error: expected â,â or â...â before numeric constant
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:3663:
error: expected â,â or â...â before numeric constant
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:
In constructor
âstd::gamma_distribution_RealType::param_type::param_type(_RealType)â:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:3632:
error: â__betaâ was not declared in this scope
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:
In constructor
âstd::gamma_distribution_RealType::gamma_distribution(_RealType)â:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.h:3665:
error: â__betaâ was not declared in this scope
In file included from
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/random:53,
 from
/home/uros/gcc-svn/gcc/libstdc++-v3/include/precompiled/stdc++.h:102:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:
In member function âresult_type
std::gamma_distribution_RealType::operator()(_UniformRandomNumberGenerator,
const std::gamma_distribution_RealType::param_type)â:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:1924:
error: expected unqualified-id before numeric constant
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:
In function âstd::basic_istream_CharT, _Traits
std::operator(std::basic_istream_CharT, _Traits,
std::gamma_distribution_RealType)â:
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:2008:
error: expected unqualified-id before numeric constant
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include/bits/random.tcc:2009:
error: â__betaâ was not declared in this scope
make[4]: *** [alphaev56-unknown-linux-gnu/bits/stdc++.h.gch/O2ggnu++0x.gch]
Erreur 1
make[4]: quittant le répertoire «
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3/include »
make[3]: *** [all-recursive] Erreur 1
make[3]: quittant le répertoire «
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3 »
make[2]: *** [all] Erreur 2
make[2]: quittant le répertoire «
/home/uros/gcc-build/alphaev56-unknown-linux-gnu/libstdc++-v3 »
make[1]: *** [all-target-libstdc++-v3] Erreur 2
make[1]: quittant le répertoire « /home/uros/gcc-build »
make: *** [all] Erreur 2


-- 
   Summary: Bootstrap failure: libstdc++-
v3/include/bits/random.h:3630: error: expected â,â or
â...â before numeric constant
   Product: gcc
   Version: 4.5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ubizjak at gmail dot com
 GCC build triplet: alphaev56-unknown-linux-gnu
  GCC host triplet: alphaev56-unknown-linux-gnu
GCC target triplet: alphaev56-unknown-linux-gnu


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39835



[Bug rtl-optimization/39580] [4.5 regression] Revision 145204 caused libgomp.c++/collapse-2.C

2009-04-21 Thread abel at gcc dot gnu dot org


--- Comment #3 from abel at gcc dot gnu dot org  2009-04-21 11:47 ---
Confirmed.  I will take a look.


-- 

abel at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||abel at ispras dot ru
 AssignedTo|unassigned at gcc dot gnu   |abel at gcc dot gnu dot org
   |dot org |
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 11:47:05
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39580



[Bug tree-optimization/21485] [4.3/4.4/4.5 Regression] missed load PRE, PRE makes i?86 suck

2009-04-21 Thread rob1weld at aol dot com


--- Comment #40 from rob1weld at aol dot com  2009-04-21 12:30 ---
(In reply to comment #0)
 I've found a major performance regression in gcc 4.0.0's optimization ...

(In reply to comment #11)
 We need more analysis on these kinds of issues.
 So, we're doing a worse job on register allocation.  Is that because 
 the register allocator got worse, or because we're giving it a harder 
 problem to solve?

(In reply to comment #12)
 It is the latter and the pass which is responsible ...

(In reply to comment #13)
 Tough, there is really not much that can be done about this ...


Is this of any use ?

Register Allocation by Puzzle Solving
http://compilers.cs.ucla.edu/fernando/projects/puzzles/


This project consists in developing a new model for register allocation that
has fast compilation time, produces code of good quality, is able to address
the many irregularities found in common computer architectures and is intuitive
enough to be easily understood.

Our implementation produces Pentium code that is of similar quality to the
code produced by the slower, state-of-the-art iterated register coalescing
algorithm of George and Appel augmented with extensions by Smith, Ramsey, and
Holloway.


YT,
Rob


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21485



[Bug tree-optimization/39829] [4.5 Regression] ICE with some code that produces VCE

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #4 from rguenth at gcc dot gnu dot org  2009-04-21 12:42 ---
Fixed.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39829



[Bug tree-optimization/39829] [4.5 Regression] ICE with some code that produces VCE

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-21 12:42 ---
Subject: Bug 39829

Author: rguenth
Date: Tue Apr 21 12:42:24 2009
New Revision: 146521

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=146521
Log:
2009-04-21  Richard Guenther  rguent...@suse.de

PR middle-end/39829
* gimple.c (walk_stmt_load_store_addr_ops): Catch addresses
inside VIEW_CONVERT_EXPRs.

* gcc.dg/torture/pr39829.c: New testcase.

Added:
trunk/gcc/testsuite/gcc.dg/torture/pr39829.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimple.c
trunk/gcc/testsuite/ChangeLog


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39829



[Bug middle-end/39825] sigsegv compiling ffmpeg svn

2009-04-21 Thread sergio dot roa at dfki dot de


--- Comment #2 from sergio dot roa at dfki dot de  2009-04-21 12:47 ---
Created an attachment (id=17663)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=17663action=view)
preprocessed source file


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39825



[Bug middle-end/39825] sigsegv compiling ffmpeg svn

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2009-04-21 12:57 ---
Reducing.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39825



[Bug middle-end/39825] sigsegv compiling ffmpeg svn

2009-04-21 Thread sergio dot roa at dfki dot de


--- Comment #4 from sergio dot roa at dfki dot de  2009-04-21 13:23 ---
I compiled again disabling Altivec optimizations and it worked :)

$./configure --disable-altivec
[...]
$make
[...]

$ ./ffmpeg
FFmpeg version SVN-r18634, Copyright (c) 2000-2009 Fabrice Bellard, et al.
  configuration: --enable-gpl --enable-postproc --enable-pthreads
--enable-libfaac --enable-libfaad --enable-libmp3lame --enable-libtheora
--enable-libxvid --disable-altivec
  libavutil 50. 3. 0 / 50. 3. 0
  libavcodec52.27. 0 / 52.27. 0
  libavformat   52.32. 0 / 52.32. 0
  libavdevice   52. 2. 0 / 52. 2. 0
  libswscale 0. 7. 1 /  0. 7. 1
  libpostproc   51. 2. 0 / 51. 2. 0
  built on Apr 21 2009 15:16:50, gcc: 4.3.2
At least one output file must be specified

I hope there are not so much optimization issues by using this ffmpeg...
Anyway, I guess this bug should be solved...


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39825



[Bug tree-optimization/21485] [4.3/4.4/4.5 Regression] missed load PRE, PRE makes i?86 suck

2009-04-21 Thread dberlin at dberlin dot org


--- Comment #41 from dberlin at gcc dot gnu dot org  2009-04-21 13:24 
---
Subject: Re:  [4.3/4.4/4.5 Regression] missed 
load PRE, PRE makes i?86 suck

Fernando was an intern of mine, and while his algorithm is a great
algorithm, AFAIK he hasn't gotten better code out of it than we get
with IRA right now.
I'll check with him again and see if this has changed.

On Tue, Apr 21, 2009 at 8:31 AM, rob1weld at aol dot com
gcc-bugzi...@gcc.gnu.org wrote:


 Is this of any use ?

 Register Allocation by Puzzle Solving
 http://compilers.cs.ucla.edu/fernando/projects/puzzles/


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21485



[Bug target/27859] Bug in generation of interrupt function code for ARM processor

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2009-04-21 13:52 ---
(In reply to comment #1)
 Created an attachment (id=14957)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=14957action=view) [edit]
 Patch to fix interrupt handling on entry/exit for ARM
 
 The arm backend already decrement the PC by 4 when entering an interrupt
 routine, so it does not need to have a specific handling for the return of the
 function, it can be treated as an exception return.
 The attached patch fixes this
 
 Regards
 
 Francois
 

This no longer appears on 4.3 , 4.4 or trunk . Hence closing this one out.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.4


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27859



[Bug middle-end/39825] sigsegv compiling ffmpeg svn

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2009-04-21 13:55 ---
Reducing very slowly ... which makes it sound like a GC issue.

But, confirmed with the original testcase and a cross-compiler.  Fails on
the 4.3 branch with -O3 -fno-math-errno -maltivec -mabi=altivec -g, works
for me on the trunk.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  Known to fail||4.3.3
  Known to work||4.5.0
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 13:55:45
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39825



[Bug rtl-optimization/29294] 4.1, 4.2 (possibly 4.0?) not finding postmodify address mode on ARM

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #8 from ramana at gcc dot gnu dot org  2009-04-21 14:09 ---
Confirmed with trunk.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 14:09:43
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=29294



[Bug rtl-optimization/39580] [4.5 regression] Revision 145204 caused libgomp.c++/collapse-2.C

2009-04-21 Thread abel at gcc dot gnu dot org


--- Comment #4 from abel at gcc dot gnu dot org  2009-04-21 14:16 ---
What happens in the test is that when pipelining, after several consecutive
substitutions we end up with moving expressions r64=r16-r16 and r64=r16-r51
through r16=r51, after which both expressions become r64=r51-r51, as a result
of substitution.  When merging these expressions, we hit an assert in
insert_in_history_vect.  

This assert tries to describe the situations when earlier different, and now
same expressions would have similar entries in their history of changes vector,
i.e. somewhere on their way up they were transformed on the same insn.  The
main thing in the assert is that both expressions are supposed to be equal
before this transformation was recorded.  Now we have a test case when this is
not the case.  I presume that we didn't hit this before because the situations
like ' b = c; a = b - c; ' are quite rare.

We have two choices: either to extend the assert to cover this case or to
remove it completely.  If we'd extend it, then the assert becomes not very
useful, as it basically says that all variations in the above situation are
possible.  So I'm inclined just to remove it.  This would not hurt correctness,
only in extreme rare situations like this we'd not be able to find both
expressions to move them up, but only the one, as history vector has a single
entry per uid, and thus we'd be unable to perform unification.  

So I will bootstrap/regtest the below patch.

Index: gcc/sel-sched-ir.c
===
*** gcc/sel-sched-ir.c  (revision 146520)
--- gcc/sel-sched-ir.c  (working copy)
*** insert_in_history_vect (VEC (expr_histor
*** 1512,1525 
  {
expr_history_def *phist = VEC_index (expr_history_def, vect, ind);

-   /* When merging, either old vinsns are the *same* or, if not, both
-  old and new vinsns are different pointers.  In the latter case,
-  though, new vinsns should be equal.  */
-   gcc_assert (phist-old_expr_vinsn == old_expr_vinsn
-   || (phist-new_expr_vinsn != new_expr_vinsn
-(vinsn_equal_p
-   (phist-old_expr_vinsn, old_expr_vinsn;
-
/* It is possible that speculation types of expressions that were
   propagated through different paths will be different here.  In this
   case, merge the status to get the correct check later.  */


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39580



[Bug target/33036] LINUX_DYNAMIC_LINKER undefined in gcc-4.2.1/gcc/config/arm/linux-elf.h

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #1 from ramana at gcc dot gnu dot org  2009-04-21 14:28 ---
LINUX_DYNAMIC_LINKER et al are defined in gcc/config/linux.h and the correct
definition must reach this case. Looking at the config parameters for --host
and --build , I can spot a typo of linuc-gnu instead of linux-gnu. That might
be one reason why the build isn't working for you . 

arm-linux-gnueabi is a standard build and I bootstrap it regularly and many
folks use crosstool to build such a cross configuration. You might consider
using this for your purposes. 

Can you check with a 4.3 toolchain or a compiler of recent vintage with the
correct parameters to --build , --host . Please also indicate the host platform
on which you were trying this.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33036



[Bug target/19599] function pointer prevents tail-call optimization on arm

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2009-04-21 14:29 ---
Mine.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |ramana at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2006-01-21 03:09:22 |2009-04-21 14:29:50
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19599



[Bug libstdc++/39491] [4.4/4.5 regression] symbol __signb...@glibcxx_3.4 in libstdc++ not exported anymore

2009-04-21 Thread doko at ubuntu dot com


--- Comment #8 from doko at ubuntu dot com  2009-04-21 14:36 ---
- config/abi/pre/gnu.ver needs the __signbitl symbol mentioned as well.
- the patch has an empty #ifdef/#endif at the end

with this change the symbol is found in the library. checked with a native
build on hppa-linux.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39491



[Bug c++/39754] [4.5 Regression] ICE: tree check: accessed elt 2 of tree_vec with 1 elts in tsubst, at cp/pt.c:9248

2009-04-21 Thread dodji at gcc dot gnu dot org


--- Comment #6 from dodji at gcc dot gnu dot org  2009-04-21 14:40 ---
In this test case (the last one), the short description of the problem is that
we fail at getting canonical types of template arguments when said arguments
have composed types.

Let me give the longer description as well, so that I don't forget :)

1/  During the instantiation of Eint, we try to instantiate the default
argument AT of the template B with T=int*.

2/ At that point, lookup_template_class selects the AX* specialization that
was first seen in struct D. There, X was a typedef of W, W being a template
parameter of struct D.

3/In the context of 1/, we try to tsubst  AT with T=int* - actually we try to
tsubst the AX* specialization of AT.  In tsubst, we then try to reuse the
typedef declaration of T, if T is a typedef.

A problem arises in 3/ because T is seen as a typedef of W (remember 2/) but W
doesn't have any meaning in the context of 1/, hence the crash.

Normally, template arguments are converted to their canonical type variant
before the stubst-ing process starts. The canonical type variant of a typedef
type variant is basically its qualified main type variant.
E.g. in typedef const int Foo, the canonical type variant of Foo is const int.
The function doing that conversion is canonical_type_variant.

The root cause of the problem is that canonical_type_variant doesn't give us
canonical variants of composed types.
E.g. in typedef int Foo; The canoniacl type variant of Foo* should be int*.
The current implementation of canonical_type_variant returns Foo* instead of
int* in that case.

So I am testing some patches that change the implementation of
canonical_type_variant atm.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39754



[Bug target/36209] arm-*-linux-gnueabi-gcc (4.3.0) segment fault during build of procps-3.2.7

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #6 from ramana at gcc dot gnu dot org  2009-04-21 14:41 ---
This is now fixed as per the last comment.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.3.4


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36209



[Bug target/36409] Additional instructions in prologue and epilogue.

2009-04-21 Thread ramana at gcc dot gnu dot org


--- Comment #2 from ramana at gcc dot gnu dot org  2009-04-21 14:42 ---
confirmed.


-- 

ramana at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2009-04-21 14:42:20
   date||


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36409



[Bug middle-end/39825] sigsegv compiling ffmpeg svn

2009-04-21 Thread rguenth at gcc dot gnu dot org


--- Comment #6 from rguenth at gcc dot gnu dot org  2009-04-21 14:52 ---
Indeed.  Fails with --param ggc-min-expand=100 --param ggc-min-heapsize=131072,
works with --param ggc-min-expand=100 --param ggc-min-heapsize=0.

Didn't we have a ppc GC problem somewhere?  With always-collect we get

./cc1  -quiet -o /dev/null bmp.i -O3 -fno-math-errno -maltivec -mabi=altivec -g
--param ggc-min-expand=0 --param ggc-min-heapsize=0
libavcodec/bmp.c: In function 'bmp_decode_frame':
libavcodec/bmp.c:307: internal compiler error: in tree_node_structure, at
tree.c:2241
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

during collecting of

#17 0x005b8f9c in gt_ggc_mx_VEC_rtx_gc (x_p=0x736fa000)
at gtype-desc.c:786
786   gt_ggc_m_7rtx_def ((*x).base.vec[i0]);


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Keywords||GC


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39825



[Bug regression/39836] New: [4.4 regression] unoptimal code generated

2009-04-21 Thread alexvod at google dot com
Very simple code:

int* func();
int func2(long long);
void test (int unused, int idx, char tag, long long value)
{
  int *p = func() + idx;
  switch (tag) {
case 1:
  *p = (int) value;
case 2:
  *p = func2(value);
}
}

is compiled to 46 bytes by GCC 4.3.1 and to 48 bytes by GCC 4.4.0. Bisection
shows that it was changed by
http://gcc.gnu.org/viewcvs?view=revrevision=139949:

Code generated by 139948:
test:
push{r3, r4, r5, r6, r7, lr}
mov r4, r1
mov r5, r2
ldr r6, [sp, #24]
ldr r7, [sp, #28]
bl  func
lsl r4, r4, #2
add r4, r0, r4
cmp r5, #1
beq .L3
cmp r5, #2
bne .L5
b   .L4
.L3:
str r6, [r4]
.L4:
mov r0, r6
mov r1, r7
bl  func2
str r0, [r4]
.L5:
@ sp needed for prologue
pop {r3, r4, r5, r6, r7, pc}

Code generated by 139949:
test:
push{r4, r5, r6, r7, lr}
sub sp, sp, #12
mov r5, r1
ldr r1, [sp, #36]
mov r6, r2
ldr r7, [sp, #32]
str r1, [sp, #4]
bl  func
lsl r4, r5, #2
add r4, r0, r4
ldr r1, [sp, #4]
cmp r6, #1
beq .L3
cmp r6, #2
bne .L5
b   .L4
.L3:
str r7, [r4]
.L4:
mov r0, r7
bl  func2
str r0, [r4]
.L5:
add sp, sp, #12
@ sp needed for prologue
pop {r4, r5, r6, r7, pc}

Temporary variable was spilled on the stack [sp+4].

BTW, this function is compiled by GCC 4.2.1 to 42 (which is event better!).


-- 
   Summary: [4.4 regression] unoptimal code generated
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: regression
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: alexvod at google dot com
 GCC build triplet: x86_64-unknown-linux-gnu
  GCC host triplet: x86_64-unknown-linux-gnu
GCC target triplet: arm-eabi


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39836



[Bug rtl-optimization/39836] [4.4/4.5 regression] unoptimal code generated

2009-04-21 Thread pinskia at gcc dot gnu dot org


-- 

pinskia at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|regression  |rtl-optimization
   Keywords||missed-optimization, ra
Summary|[4.4 regression] unoptimal  |[4.4/4.5 regression]
   |code generated  |unoptimal code generated
   Target Milestone|--- |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39836



[Bug target/36851] [4.4/4.5 regression] cc1plus SEGV compiling strstream.cc on Tru64 UNIX

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36851



[Bug libstdc++/28125] Cannot build cross compiler for Solaris: configure: error: Link tests are not allowed after GCC_NO_EXECUTABLES

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=28125



[Bug libstdc++/39491] [4.4/4.5 regression] symbol __signb...@glibcxx_3.4 in libstdc++ not exported anymore

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39491



[Bug debug/39372] [4.3 Regression] Missing DW_AT_location for constructor static variable

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39372



[Bug libgcj/38251] [4.4/4.5 Regression] tools.zip doesn't build on systems with short command lines

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38251



[Bug debug/39412] [4.2/4.3 Regression] ICE in gen_tagged_type_instantiation_die

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39412



[Bug middle-end/38934] [4.3 Regression] ICE in set_value_range, at tree-vrp.c:398

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38934



[Bug testsuite/39807] [4.3/4.4/4.5 Regression] Reporting of testsuite failures are messed up when using -j

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39807



[Bug c++/4926] C++ ABI needs clarification on mangling of complex expressions

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=4926



[Bug libstdc++/38678] [DR XXX] istream::read() calls streambuf::sgetn()

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38678



[Bug c++/33979] support for char16_t, char32_t

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33979



[Bug testsuite/39297] [4.4/4.5 Regression] gcc.dg/tree-ssa/loop-31.c

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39297



[Bug tree-optimization/39612] [4.4/4.5 Regression] Incorrect warning issued Re variable *is* used uninitialized in this function

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=39612



[Bug c++/22488] [4.2/4.3/4.4/4.5 Regression] push_fields_onto_fieldstack calculates offset incorrectly

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22488



[Bug middle-end/36143] [4.4/4.5 Regression]: FAIL: g++.dg/tree-ssa/pr19637.C

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36143



[Bug tree-optimization/38156] gcc.dg/tree-ssa/update-unswitch-1.c fails when compiled with -ftree-parallelize-loops=4

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38156



[Bug c++/33492] [4.2/4.3 regression] Broken diagnostic: 'must_not_throw_expr' not supported by dump_expr

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=33492



[Bug fortran/34199] segfault for TRANSFER integer to TYPE(C_PTR)

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=34199



[Bug tree-optimization/35629] [4.4/4.5 Regression] gcc.dg/tree-ssa/loop-25.c scan-tree-dump-times profile fails

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35629



[Bug debug/37022] internal compiler error: in compute_barrier_args_size

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37022



[Bug middle-end/37165] [4.4/4.5 Regression] FAIL: gcc.dg/matrix/matrix-1.c scan-ipa-dump-times matrix-reorg Flattened 3 dimensions 1

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37165



[Bug middle-end/36201] [4.4 Regression] NVR in the front-end causes missed optimization later on (retval thought to alias arguments)

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36201



[Bug rtl-optimization/37272] [4.4/4.5 Regression] IRA has caused ppc64-double-1.c to fail

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37272



[Bug rtl-optimization/37273] [4.4/4.5 Regression] IRA does not re-materializes addresses (loads from the TOC)

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37273



[Bug bootstrap/37304] [4.4/4.5 Regression]: in-tree-binutils gcc configure tests fail because of unexpanded $(objdir)

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37304



[Bug target/37367] [4.4/4.5 Regression] gcc-4.4/4.5 speed regression

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37367



[Bug ada/37430] [4.4/4.5 Regression] C974013 gives exception

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37430



[Bug rtl-optimization/37534] [4.4/4.5 Regression] IRA causes 17% degradation in 187.facerec benchmark

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37534



[Bug rtl-optimization/37490] [4.4/4.5 Regression] IRA causes FP code to have more spills

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37490



[Bug target/37633] [4.4/4.5 Regression] wrong register use on sh64

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37633



[Bug ada/37440] [4.4/4.5 Regression] GNAT Bug Box a-ngcefu.adb:397

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37440



[Bug libfortran/37754] [4.4 Regression] READ I/O Performance regression from 4.3 to 4.4/4.5

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37754



[Bug target/37942] [4.4/4.5 Regression] FAIL: gcc.c-torture/compile/930618-1.c

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37942



[Bug testsuite/38036] [4.4/4.5 Regression][AVR] FAIL: gcc.c-torture/execute/pr37573.c execution

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38036



[Bug target/38134] [4.4/4.5 Regression] speed regression with many loop invariants

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38134



[Bug middle-end/38059] [4.4/4.5 Regression] Compile time regression for gcc.dg/20020425-1.c

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38059



[Bug target/38293] [4.4/4.5 regression] libgfortran build failure on spu-elf

2009-04-21 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|4.4.0   |4.4.1


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38293



  1   2   >