[Bug c++/45651] internal compiler error: in import_export_decl, at cp/decl2.c:2344

2010-09-12 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jason at gcc dot gnu dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-12 13:40:14
   date||


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



[Bug fortran/36841] Eliminate gfortran_sum_r8 call for calculation involving multidimensional array multiplication followed by a sum along first dimension

2010-09-12 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-09-12 17:14 ---
This is not a job for the FE.


-- 


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



[Bug fortran/36841] Eliminate gfortran_sum_r8 call for calculation involving multidimensional array multiplication followed by a sum along first dimension

2010-09-12 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-09-12 21:24 ---
OK, I thought you meant that this would be something for a separate Fortran
front end optimization pass.  Expanding SUM differently is a job for the FE,
yes.


-- 


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



[Bug c++/45635] [4.6 regression] Failed to bootstrap on Linux/ia64

2010-09-11 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-09-11 12:58 ---
Created an attachment (id=21776)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21776action=view)
preprocessed source


-- 


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



[Bug c++/45635] [4.6 regression] Failed to bootstrap on Linux/ia64

2010-09-11 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-09-11 12:58:32
   date||


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



[Bug c++/45635] [4.6 regression] Failed to bootstrap on Linux/ia64

2010-09-10 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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



[Bug c/45358] Diagnostic could be issued for old C style a =+ b and similar cases

2010-08-20 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|minor   |enhancement
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
  GCC build triplet|x86_64-linux-gnu|
   GCC host triplet|x86_64-linux-gnu|
 GCC target triplet|x86_64-linux-gnu|
   Keywords||diagnostic
   Last reconfirmed|-00-00 00:00:00 |2010-08-20 19:46:42
   date||
Summary|=+ oddness  |Diagnostic could be issued
   ||for old C style  a =+ b and
   ||similar cases


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



[Bug plugins/45346] hard-reg-set.h needs to be in the plugin include directory

2010-08-19 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-08-19 20:24 ---
Gross.


-- 


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



[Bug plugins/45346] hard-reg-set.h needs to be in the plugin include directory

2010-08-19 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-19 20:28 ---
The proper fix for this is not to just go back to the include everything
everywhere. The proper fix is instead to move struct rtl_data out of
function.h (as I have said before) and into e.g. emit-rtl.h.


-- 


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



[Bug plugins/45348] cp/cp-tree.h in plugin header does not work.

2010-08-19 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-08-19 21:57 ---
Makefile should be changed, the reference to c-family/c-common.h is
intentionally relative to $srcdir.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-19 21:57:24
   date||


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-08-18 Thread steven at gcc dot gnu dot org


--- Comment #23 from steven at gcc dot gnu dot org  2010-08-18 10:50 ---
So the scheduler uses cselib to get a better view of the address, but cselib
doesn't actually give a better address. And the solution is to just give up in
that case? It seems to me that if cselib doesn't give a better address than
XEXP(MEM,0) then the original address should be used.


-- 


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



[Bug middle-end/45325] target attribute doesn't work with -march=i586

2010-08-18 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-08-18 20:58 ---
WONTFIX for an ICE seems a bit odd to me.
Just needs a diagnostic to reject nonsense target attributes, or a sorry. But
not an ICE.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|WONTFIX |


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



[Bug middle-end/37565] __optimize__ attribute doesn't work correctly

2010-08-18 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-18 20:59:09
   date||


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



[Bug middle-end/37734] Missing optimization: gcc fails to reuse flags from already calculated expression for condition check with zero

2010-08-15 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|target  |middle-end
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-15 18:59:54
   date||


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



[Bug middle-end/44569] Debug statements passed to rtx

2010-08-15 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-08-15 19:05 ---
Is this still a problem for you? I can try to help you here, but I need to know
what patch I should apply and to what revision, to reproduce the problem.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |WAITING


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



[Bug middle-end/44569] Debug statements passed to rtx

2010-08-15 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-08-15 20:48 ---
Investigating...


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|WAITING |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-15 20:48:13
   date||


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



[Bug middle-end/45273] [4.4/4.5/4.6 Regression] The compiler depends on the host double (-fprofile-corection only)

2010-08-13 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-08-13 07:22 ---
Should use sreal, then?


-- 


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



[Bug preprocessor/45227] libcpp Makefile does not enable instrumentation

2010-08-13 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-08-13 07:42 ---
Does anyone have a daily autotester for profiled-bootstrap?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||hubicka at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-13 07:42:15
   date||


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



[Bug rtl-optimization/38644] [4.3/4.4/4.5/4.6 Regression] Optimization flag -O1 -fschedule-insns2 causes wrong code

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #19 from steven at gcc dot gnu dot org  2010-08-12 10:00 ---
According to comment#14, a patch from Alexander Monakov introduced this bug,
therefore:

1. this is a regression on a primary platform = priority should be set P1


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org, amonakov at gcc dot gnu
   ||dot org
Summary|Optimization flag -O1 - |[4.3/4.4/4.5/4.6 Regression]
   |fschedule-insns2 causes |Optimization flag -O1 -
   |wrong code  |fschedule-insns2 causes
   ||wrong code


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



[Bug rtl-optimization/38644] [4.3/4.4/4.5/4.6 Regression] Optimization flag -O1 -fschedule-insns2 causes wrong code

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #20 from steven at gcc dot gnu dot org  2010-08-12 10:00 ---
...and
2. Add richi and amonakov to CC:


-- 


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



[Bug rtl-optimization/38644] [4.3/4.4/4.5/4.6 Regression] Optimization flag -O1 -fschedule-insns2 causes wrong code

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #21 from steven at gcc dot gnu dot org  2010-08-12 10:08 ---
Re. comment #14 I am a bit irritated why this bug survived the 4.4.0
and 4.5.0 release.: Yes, well, ARM maintainers have been in the CC-list for
this bug since the beginning, and apparently it was even too much trouble for
them to see if this is a regression or not... :-(

Anyway, many thanks to Sebastian Huber for identifying the revision that
introduced (or exposed) this bug.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

   Last reconfirmed|2009-12-22 11:16:40 |2010-08-12 10:08:35
   date||


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



[Bug rtl-optimization/38644] [4.3/4.4/4.5/4.6 Regression] Optimization flag -O1 -fschedule-insns2 causes wrong code

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #23 from steven at gcc dot gnu dot org  2010-08-12 11:37 ---
The patch from comment #16 only fixes the symptom, and only on ARM. It is not a
proper fix for the generic problem that is apparently also visible on POWER.


-- 


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



[Bug middle-end/45267] [4.5 regression] inlining fails with -m32

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-12 21:07 ---
Re. comment #1: Looks more like that commit made this problem latent on the
trunk.


-- 


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



[Bug middle-end/45267] [4.5 regression] inlining fails with -m32

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-08-12 21:30 ---
I don't think this is a heuristics bug at all. You're not getting an error or a
warning about a missed optimization (inlining).

You get a sorry, and that only happens if GCC tries but fails to inline an
always_inline function. But the reason for the sorry is that the call is
unlikely and code size would grow. That should never be checked for
always_inline functions.

The always_inline attribute is basically an attribute to shut off the inlining
heuristics. A do as I say-attribute. The sorry means that GCC is not doing
what you tell it to do. The heuristics changes in GCC 4.6 just paper over this
problem.

If I'm right, anyway, that this is an always_inline problem.


-- 


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



[Bug c/45268] CPU2006 458.sjeng: type mismatch in array reference with -fwhole-program -combine

2010-08-12 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-12 22:00 ---
Indeed any attempt to fix -combine for checking failures would be a waste of
resources that are better spent on LTO/WHOPR...


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||WONTFIX


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



[Bug tree-optimization/45255] [4.6 regression] internal compiler error: verify_stmts failed with -fwhopr

2010-08-11 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-11 10:17 ---
WHOPR involved, MEM_REF involved... Richi?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org


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



[Bug c++/44172] Compiling never ends

2010-08-11 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-08-11 15:27 ---
I don't see how the compiler can know that this input causes an infinite loop.
This is just the halting problem. Not a bug in the sense that there is anything
to fix.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||WORKSFORME


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



[Bug middle-end/41551] [4.4 Regression] ia64: ICE: in instantiate_virtual_regs_in_insn, at function.c:1630

2010-08-09 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-08-09 17:11 ---
http://gcc.gnu.org/ml/gcc-cvs/2009-11/msg01067.html


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
  Known to fail||4.4.4
  Known to work||4.2.0 4.5.0 4.6.0
 Resolution|FIXED   |
Summary|ia64: ICE: in   |[4.4 Regression] ia64: ICE:
   |instantiate_virtual_regs_in_|in
   |insn, at function.c:1630|instantiate_virtual_regs_in_
   ||insn, at function.c:1630
   Target Milestone|--- |4.4.5


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



[Bug middle-end/41551] [4.4 Regression] ia64: ICE: in instantiate_virtual_regs_in_insn, at function.c:1630

2010-08-09 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-08-09 17:11 ---
Needs fixing in 4.4 still.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-09 17:11:51
   date||


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



[Bug middle-end/17982] stop calling assemble_external before final assembly output time

2010-08-09 Thread steven at gcc dot gnu dot org


--- Comment #34 from steven at gcc dot gnu dot org  2010-08-09 21:13 ---
The FIXME here is this one in varasm.c:

---
/* We delay assemble_external processing until
   the compilation unit is finalized.  This is the best we can do for
   right now (i.e. stage 3 of GCC 4.0) - the right thing is to delay
   it all the way to final.  See PR 17982 for further discussion.  */
static GTY(()) tree pending_assemble_externals;
---

According to http://gcc.gnu.org/ml/gcc-patches/2004-12/msg00491.html:

The *proper* solution to this problem is to remove all calls to
assemble_external from the front ends and even the RTL expander; it
should only be done from final.c and varasm.c as we are emitting
assembly. 

$ grep assemble_external c* */*.[ch] ada/gcc-interface/*.[ch]
calls.c:  assemble_external (fndecl);
calls.c:  assemble_external_libcall (fun);
cp/cp-tree.h:   so that assemble_external will work properly.  So we have this
flag to
objc/objc-act.c:  assemble_external (objc_get_class_decl);
objc/objc-act.c:  assemble_external (func);
objc/objc-act.c:  assemble_external (objc_assign_global_decl);
objc/objc-act.c:  assemble_external (objc_assign_strong_cast_decl);
objc/objc-act.c:  assemble_external (super_class);

I think the ones in calls.c are OK.  So only ObjC still calls
assemble_external. Iain?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||iains at gcc dot gnu dot org


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



[Bug objc/24777] objc needs to use normal builtins for functions it declares

2010-08-09 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-08-09 21:32 ---
This blocks 17982. There are assemble_external calls are for
objc_get_class_decl, objc_assign_global_decl, and objc_assign_strong_cast_decl.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

OtherBugsDependingO||17982
  nThis||
   Last reconfirmed|2007-07-09 05:57:42 |2010-08-09 21:32:01
   date||


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



[Bug rtl-optimization/45223] RTL PRE GCSE pass hoists trapping insn out of loop

2010-08-07 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-07 10:57 ---
Patch of comment #1 loops obviously OK to me. We shouldn't want to move
trapping insns in any case that I can think of.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-07 10:57:54
   date||


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



[Bug fortran/45057] Unneeded temporary / missed bounds violation for PACK

2010-08-06 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-06 21:21:08
   date||
Summary|Unneded temporary / missed  |Unneeded temporary / missed
   |bounds violation for PACK   |bounds violation for PACK


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



[Bug fortran/44235] array temporary with high upper bound

2010-08-06 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-06 21:24 ---
What's the plan with the patch of comment #2?
NB, the result of gfc_dep_compare_expr (l_start, r_start) could be cached
instead of computed twice:

+  ((res = gfc_dep_compare_expr (l_start, r_start)) == 0
+ || res == -1)


-- 


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



[Bug tree-optimization/45218] Mathematical simplification missed at tree-level

2010-08-06 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-06 22:51:00
   date||


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



[Bug tree-optimization/45216] Rotate expressions not recognized at tree level

2010-08-06 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-08-06 23:02 ---
pathetic... :)


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||missed-optimization
   Last reconfirmed|-00-00 00:00:00 |2010-08-06 23:02:11
   date||


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



[Bug tree-optimization/15596] [4.3/4.4/4.5/4.6 Regression] Missed optimization with bitfields with return value

2010-08-06 Thread steven at gcc dot gnu dot org


--- Comment #18 from steven at gcc dot gnu dot org  2010-08-06 23:12 ---
Martin, perhaps a test case you want to watch if you or someone else is going
to play with SRA vs. bitfields.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jamborm at gcc dot gnu dot
   ||org


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



[Bug tree-optimization/45216] Rotate expressions not recognized at tree level

2010-08-06 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-06 23:17 ---
Related to PR17886, where it says that: gcc can detect the (x  y)|(x 
(bitwidth-y)) idiom for rotate and convert it into the machine rotate
instruction. But it only works when y is a constant and is not long long. But
apparently even this case is not detected anymore.


-- 


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



[Bug bootstrap/45154] ICE in calc_dfs_tree, at dominance.c:394

2010-08-01 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-08-01 10:38 ---
Confirmed.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org, jamborm at gcc dot gnu
   ||dot org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-08-01 10:38:43
   date||


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



[Bug tree-optimization/10474] gcc should be able to delay the setup of the frame pointer (patrial outlining)

2010-08-01 Thread steven at gcc dot gnu dot org


--- Comment #7 from steven at gcc dot gnu dot org  2010-08-01 10:40 ---
Isn't this bug description just a request for shrink-wrapping?


-- 


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



[Bug tree-optimization/43940] DOM doesn't propagate constants properly

2010-07-25 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-07-25 10:29 ---
VRP does this with ASSERT_EXPRs.  DOM does not optimize this because bb4 has
two predecessors, and record_equivalences_from_incoming_edge only records from
a single predecessor.

This should probably be handled record_equivalences_from_phis by looking at the
value of the incoming argument, before calling operand_equal_for_phi_arg_p.


-- 


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



[Bug tree-optimization/43940] DOM doesn't propagate constants properly

2010-07-25 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-25 16:25 ---
cprop_into_successor_phis only propagates SSA_NAME_VALUEs, but not conditional
copies/constants. May be a better place to fix this bug.


-- 


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



[Bug middle-end/45035] [4.6 Regression] FAIL: gcc.dg/guality/pr36728-2.c

2010-07-24 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-24 12:38 ---
Subject: Bug 45035

Author: steven
Date: Sat Jul 24 12:37:51 2010
New Revision: 162499

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=162499
Log:
PR middle-end/45035
* alias.c (true_dependence_1): Fix thinko in merge of old
true_dependence and canon_true_dependence.


Modified:
trunk/gcc/ChangeLog
trunk/gcc/alias.c


-- 


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



[Bug middle-end/45035] [4.6 Regression] FAIL: gcc.dg/guality/pr36728-2.c

2010-07-24 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-07-24 12:39 ---
.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug c/44041] [4.5 regression] -combine ICE: verify_gimple failed (invalid conversion in return statement)

2010-07-24 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-24 21:21 ---
IMA (-combine) = WONTFIX?


-- 


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



[Bug c/23104] [4.3/4.4/4.5/4.6 Regression] C does not reject the same function in two different TUs with -combine

2010-07-24 Thread steven at gcc dot gnu dot org


--- Comment #17 from steven at gcc dot gnu dot org  2010-07-24 21:22 ---
IMA (-combine) = WONTFIX?


-- 


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



[Bug tree-optimization/43940] DOM doesn't propagate constants properly

2010-07-24 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-24 22:04 ---
Investigating...


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-07-24 21:44:54 |2010-07-24 22:04:50
   date||


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



[Bug middle-end/45035] [4.6 Regression] FAIL: gcc.dg/guality/pr36728-2.c

2010-07-23 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-07-23 07:42:27 |2010-07-23 08:20:29
   date||


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



[Bug middle-end/45035] [4.6 Regression] FAIL: gcc.dg/guality/pr36728-2.c

2010-07-23 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-07-23 08:58 ---
Somehow managed to make a mistake in the merge for the case that x_addr is
non-NULL.

Index: alias.c
===
--- alias.c (revision 162430)
+++ alias.c (working copy)
@@ -2375,18 +2375,19 @@ true_dependence_1 (const_rtx mem, enum m
 }

   if (! x_addr)
-x_addr = XEXP (x, 0);
-
-  if (!((GET_CODE (x_addr) == VALUE
- GET_CODE (mem_addr) != VALUE
- reg_mentioned_p (x_addr, mem_addr))
-   || (GET_CODE (x_addr) != VALUE
-GET_CODE (mem_addr) == VALUE
-reg_mentioned_p (mem_addr, x_addr
 {
-  x_addr = get_addr (x_addr);
-  if (!mem_canonicalized)
-   mem_addr = get_addr (mem_addr);
+  x_addr = XEXP (x, 0);
+  if (!((GET_CODE (x_addr) == VALUE
+ GET_CODE (mem_addr) != VALUE
+ reg_mentioned_p (x_addr, mem_addr))
+   || (GET_CODE (x_addr) != VALUE
+GET_CODE (mem_addr) == VALUE
+reg_mentioned_p (mem_addr, x_addr
+   {
+ x_addr = get_addr (x_addr);
+ if (! mem_canonicalized)
+   mem_addr = get_addr (mem_addr);
+   }
 }

   base = find_base_term (x_addr);

Will bootstrap+test, and commit if it passes.


-- 


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



[Bug tree-optimization/45032] Missed optimization in ifcvt/crossjump

2010-07-22 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-07-22 20:58 ---
Looks related to bug 20070.


-- 


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #16 from steven at gcc dot gnu dot org  2010-07-21 08:22 ---
OK, I think I finally understand what Alexander tried to explain, and I've
annotated the code. Alexander, does this look right to you?

f1: // vector int f1(vector int t)
.mmi
mov r15 = r12   // 30: r12 = @temp1
mov r14 = r12   // 29: r14 = @temp1
addl r16 = 1, r0// 34: r16 = 1
;;
.mmi
st8 [r15] = r32, 8  // 36: temp1[0:1] = t[0:1], r...@temp[2]
;;
st8 [r15] = r33, -4 // 37: temp1[2:3] = t[2:3], r...@temp[1]
nop 0
.mii
ld8 r8 = [r14], 8   // 21: r8 = temp[0:1]
nop 0
;;
nop 0
.mmb
ld8 r9 = [r14]  // 28: r9 = temp[2:3]
st4 [r15] = r16 //  9: temp[1] = 1
br.ret.sptk.many b0 // 40: return r8:r9
.endp f1#


-- 


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #18 from steven at gcc dot gnu dot org  2010-07-21 09:27 ---
Created an attachment (id=21277)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=21277action=view)
debug log

I think the problem is that fixed_scalar_and_varying_struct_p is called with a
VALUE address, i.e. not expanded. See attached debug log.


-- 


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #19 from steven at gcc dot gnu dot org  2010-07-21 09:33 ---
x_addr is a VALUE that has no locs:

Breakpoint 4, true_dependence (mem=0x205ddf68, mem_mode=VOIDmode,
x=0x205ddfb0, varies=0x20496720) at
../../trunk/gcc/alias.c:2330
2330  if (MEM_VOLATILE_P (x)  MEM_VOLATILE_P (mem))
(gdb) cont
Continuing.

Breakpoint 11, get_addr (x=0x60316e28) at ../../trunk/gcc/alias.c:1726
1726  if (GET_CODE (x) != VALUE)
(gdb) up
#1  0x4036eb50 in true_dependence (mem=0x205ddf68,
mem_mode=SImode, x=0x205ddfb0, varies=0x20496720) at
../../trunk/gcc/alias.c:2367
2367  x_addr = get_addr (x_addr);
(gdb) down
#0  get_addr (x=0x60316e28) at ../../trunk/gcc/alias.c:1726
1726  if (GET_CODE (x) != VALUE)
(gdb) next
1728  v = CSELIB_VAL_PTR (x);
(gdb)
1729  if (v)
(gdb)
1731  for (l = v-locs; l; l = l-next)
(gdb) p v-locs
$72 = (struct elt_loc_list *) 0x0
(gdb) p debug_rtx(x)
(value:DI 10:10 @0x60316e28/0x60316d10)
$73 = void
(gdb)

So get_addr just returns the VALUE.

Is it *ever* OK for get_addr to return a VALUE rtx?  It seems to me this should
never happen, and we should assert that.


-- 


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #20 from steven at gcc dot gnu dot org  2010-07-21 09:49 ---
Since this bug only triggers if cselib is used, the bug affects schedule_ebbs
only. The other schedulers are !use_cselib schedulers.

(Even sel-sched apparently does not use cselib, that's surprising!)

OTOH, this bug can probably be triggered with -fsched2-use-superblocks on any
target.


-- 


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



[Bug rtl-optimization/40552] wrong-code with -fsched2-use-superblocks and exceptions

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-07-21 09:54 ---
Investigating...


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-21 09:54:23
   date||


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



[Bug middle-end/39274] internal compiler error: in check_cfg, at haifa-sched.c, var-tracking

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-07-21 09:58 ---
Look at the ia64 port (and a few others too, e.g. blackfin), they call
compute_bb_for_insn first thing in machine reorg and that works. It is
obviously not ideal, but the only pass between free_cfg and machine_reorg that
can destroy  the CFG is dbr_sched (delay branch scheduling).

Anyway, out-of-tree port = INVALID.

Feel free to re-open this bug report if you can reproduce it with an in-tree
port, of course.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||INVALID


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



[Bug tree-optimization/13745] [tree-ssa] expressions not converted back to array form

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #12 from steven at gcc dot gnu dot org  2010-07-21 20:54 ---
Fixed with MEM_REF.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/13952] [tree-ssa] SRA does not work for structs containing arrays

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-07-21 21:00 ---
Optimizes to an empty function for me with r162374.
Probably thanks to Martin's SRA rewrite.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jamborm at gcc dot gnu dot
   ||org
 Status|NEW |RESOLVED
 Resolution||FIXED
   Target Milestone|--- |4.6.0


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



[Bug target/45026] New: Empty function compiles to many loads and stores

2010-07-21 Thread steven at gcc dot gnu dot org
Consider this test case:
typedef struct teststruct
{
  double d;
  char f1;
  int arr[15];
} teststruct;

void
copystruct5 (teststruct param)
{
  return;
}

The mighty copystruct5 function does absolutely nothing, so I expect this to be
compiled to absolutely nothing. But not so with r162374 at -O2:

.file   t.c
.pred.safe_across_calls p1-p5,p16-p63
.text
.align 16
.align 64
.global copystruct5#
.type   copystruct5#, @function
.proc copystruct5#
copystruct5:
.prologue
.spill 48
.mmi
.fframe 48
adds r12 = -48, r12
[.L2:]  
.body
;;
mov r14 = r12
adds r15 = 16, r12
;;
.mmi
st8 [r14] = r32, 8
st8 [r15] = r34
nop 0
;;
.mmi
st8 [r14] = r33
nop 0
adds r14 = 24, r12
;;
.mmi
st8 [r14] = r35
nop 0
adds r14 = 32, r12
;;
.mmi
st8 [r14] = r36
nop 0
adds r14 = 40, r12
;;
.mmi
st8 [r14] = r37
nop 0
adds r14 = 48, r12
;;
.mmi
st8 [r14] = r38
nop 0
adds r14 = 56, r12
;;
.mib
st8 [r14] = r39
.restore sp
adds r12 = 48, r12
br.ret.sptk.many b0
.endp copystruct5#
.ident  GCC: (GNU) 4.6.0 20100721 (experimental) [trunk revision
162374]

What's that?!


-- 
   Summary: Empty function compiles to many loads and stores
   Product: gcc
   Version: 4.6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: steven at gcc dot gnu dot org
GCC target triplet: ia64-unknown-linux-gnu


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



[Bug tree-optimization/14455] Structs that cannot alias are not SRA'd

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #7 from steven at gcc dot gnu dot org  2010-07-21 21:09 ---
The SRA rewrite for GCC 4.6 probably fixes the SRA part of this bug report (at
last!).
Can someone with a powerpc box have a look?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org, jamborm at gcc dot gnu
   ||dot org
 Status|NEW |WAITING


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



[Bug middle-end/44297] Big spec cpu2006 prefetch regressions on gcc 4.6 on x86

2010-07-21 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-21 21:10:46
   date||
Version|tree-ssa|4.6.0


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



[Bug java/1812] zextract.c cleanup

2010-07-21 Thread steven at gcc dot gnu dot org


--- Comment #7 from steven at gcc dot gnu dot org  2010-07-21 21:53 ---
9 years
0 progress

Tom?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|WAITING


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



[Bug target/44999] and r0, r0, #255 can be replace with uxtb in thumb2

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-07-20 08:37 ---
Note, it's often helpful for us non-ARM-assembly-gurus to explain the pattern
you would like to have, instead of the mnemonic :-)


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-20 08:37:31
   date||


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #10 from steven at gcc dot gnu dot org  2010-07-20 13:20 ---
Re. comment 9: Well, the order of *this* store and *this* load is the
difference between the test case failing or passing. So I do not think the
problem is between this load and another store.

Before sched2 (or actually, .mach on ia64):

vector-2.c.213r.compgotos (notes, NOPs, bundle markers removed):
;; Function f1 (f1)

   30 r15:DI=r12:DI
   29 r14:DI=r12:DI
   35 [r15:DI++]=r32:DI
   36 [post r15:DI+=0xfffc]=r33:DI
9 [r15:DI]=r34:SI
   21 r8:DI=[r14:DI++]
   28 r9:DI=[r14:DI]
   18 use r8:TI
   39 {return;use b0:DI;}

After .sched2:
vector-2.c.215r.mach (notes, NOPs, bundle markers removed):
   30 r15:DI=r12:DI
   29 r14:DI=r12:DI
   35 [r15:DI++]=r32:DI
   36 [post r15:DI+=0xfffc]=r33:DI
   21 r8:DI=[r14:DI++]
   28 r9:DI=[r14:DI]
9 [r15:DI]=r34:SI
   18 use r8:TI
   39 {return;use b0:DI;}

Note that the only real change in the scheduling is that insn 9 is moved after
insn 21 and insn 28. insn 9 is the store [r15:DI]=r34:SI that later expands
to the st4 instruction.


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #11 from steven at gcc dot gnu dot org  2010-07-20 13:22 ---
insn 28 and insn 9 in non-slim form, with assembler output:

//(insn:TI 28 48 9 2 vector-2.c:7 (set (reg:DI 9 r9 [+8 ])
//(mem/c/i:DI (reg/f:DI 14 r14 [351]) [2 t+8 S8 A64]))
//5 {movdi_internal} (expr_list:REG_DEAD (reg/f:DI 14 r14 [351])
//(nil)))
ld8 r9 = [r14]  // 28   movdi_internal/5
//(insn 9 28 18 2 vector-2.c:5 (set (mem/s/j/c:SI (reg/f:DI 15 r15 [343])
//   [2 t+4 S4 A32])
//(reg:SI 114 r34 [ a ])) 4 {movsi_internal}
//(expr_list:REG_DEAD (reg:SI 114 r34 [ a ])
//  (expr_list:REG_DEAD (reg/f:DI 15 r15 [343])
//(nil
st4 [r15] = r34 // 9movsi_internal/6


-- 


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



[Bug target/15087] IA64: Wrong alignment for structure 8 byte

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-20 13:40 ---
We might as well close this as WONTFIX, I don't think anyone is interested in
fixing this. We would have to document this problem in the manual, but then at
least we can close the Bugzilla entry. Thoughts?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |WAITING


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



[Bug target/25372] Aligned args on IA64

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-07-20 13:51 ---
So what's the verdict, 4 years later. Is there a bug here, or can this PR be
closed now?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |WAITING


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



[Bug target/35658] [4.3 Regression] between -funroll-loops -fno-automatic -O2 and common block variable

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #16 from steven at gcc dot gnu dot org  2010-07-20 13:55 ---
May be a dup of 43494, based on comment #7.


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #12 from steven at gcc dot gnu dot org  2010-07-20 13:57 ---
Bug 35658 is another case where a store is scheduled after a load that depends
on the store. It may well be that bug 35658 and this bug are the same issue.


-- 


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



[Bug target/3746] compilation of mips-tfile missing mips/a.out.h

2010-07-20 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|echristo at apple dot com   |unassigned at gcc dot gnu
   ||dot org
 Status|SUSPENDED   |NEW


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



[Bug tree-optimization/17955] Perform associative optimization when it is safe

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-20 14:02 ---
No test case. Nothing to do here.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID


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



[Bug objc/31281] ICE on ObjC try-catch blocks with next runtime

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-07-20 14:03 ---
Patches for this were commited in the last decade.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug target/26262] Named section support should infer segment name

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-20 14:04 ---
This is still a problem. Iain, one for you?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||iains at gcc dot gnu dot org
   Last reconfirmed|2006-02-13 17:22:54 |2010-07-20 14:04:44
   date||


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



[Bug rtl-optimization/20972] Register allocator/reload uses auto-inc register in non-addressing operand

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #14 from steven at gcc dot gnu dot org  2010-07-20 14:06 ---
If it works for Ramana, it works for me.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |RESOLVED
 Resolution||WORKSFORME


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



[Bug target/30254] Need method to determine if AltiVec PIM is available

2010-07-20 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

   Severity|normal  |enhancement


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



[Bug rtl-optimization/43494] Overlooked dependency causes wrong scheduling, wrong code

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #14 from steven at gcc dot gnu dot org  2010-07-20 17:56 ---
The options -O2 -fno-inline is enough to make the test case of comment #5
fail. This bug is not specific to -fpic / -fPIC, inlining of f1 just hides the
bug for the non-PIC case.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

Summary|gcc.c-  |Overlooked dependency causes
   |torture/execute/vector-2.c  |wrong scheduling, wrong code
   |fails with -fpic/-fPIC  |


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



[Bug rtl-optimization/43494] [4.4/4.5/4.6 Regression] Overlooked dependency causes wrong scheduling, wrong code

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #15 from steven at gcc dot gnu dot org  2010-07-20 18:08 ---
Works with gcc-4.3 (Debian 4.3.5-1) 4.3.5, both with -fpic and with
-fno-inline.
That makes this bug a regression.  CC:RM - who happens to know a thing or two
about the alias analysis code also.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org
  Known to work||4.3.5
Summary|Overlooked dependency causes|[4.4/4.5/4.6 Regression]
   |wrong scheduling, wrong code|Overlooked dependency causes
   ||wrong scheduling, wrong code


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



[Bug tree-optimization/31849] [4.3/4.4/4.5/4.6 Regression] Code size increased with PR 31360 (IV-opts not understanding autoincrement)

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #53 from steven at gcc dot gnu dot org  2010-07-20 22:12 ---
Could the OP be so kind to see if this is still a problem?


-- 


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



[Bug web/15669] Usage of bugzilla Known to work and known to fail fields need documentation

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-07-20 22:15 ---
Fixed with patch of comment #2.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||FIXED


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



[Bug middle-end/41639] synchronisation primitives take unsigned as input and output values.

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-20 22:21 ---
Mis-categorized as a treelang bug (?!).

rth, you added these primitive types and the _sync_* builtins... Could you have
a look at this bug and at the patch of comment #1, please?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rth at gcc dot gnu dot org
  Component|treelang|middle-end


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



[Bug translation/32637] Swedish translation error

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-20 22:26 ---
sv.po for gcc 4.5.0 has the fixed translation.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug debug/45006] [4.6 regression] Failed to bootstrap

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-07-20 22:32 ---
I have forwarded this problem to the French team of the Translation Project
(http://translationproject.org/team/fr.html).


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

   Last reconfirmed|2010-07-20 16:09:39 |2010-07-20 22:32:28
   date||


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



[Bug debug/45006] [4.6 regression] Failed to bootstrap

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #7 from steven at gcc dot gnu dot org  2010-07-20 22:33 ---
obviously that latest comment was not for this bug (but for bug 32428), sorry.


-- 


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



[Bug translation/32428] odd french translation of strict aliasing -related warnings

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-20 22:33 ---
I have forwarded this problem to the French team of the Translation Project
(http://translationproject.org/team/fr.html).


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-20 22:33:26
   date||


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



[Bug translation/40884] error messages in .md files not translated

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-07-20 22:37 ---
Why should an .md file call error()? The ones in neon.md look like they should
be internal_error, or something should catch the problem earlier.

Should internal_error messages be translated?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-20 22:37:09
   date||


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



[Bug translation/39544] Grammar error in russian localization

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-20 22:40 ---
Closing as invalid because the bug should be reported to the translation team
for Russian (http://translationproject.org/team/ru.html).


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug translation/38173] Mistake in Russian translation of error text functional cast expression list treated as compound expression

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #1 from steven at gcc dot gnu dot org  2010-07-20 22:43 ---
So, another translation bug that fell through the cracks. 

Unfortunately the GCC project does not maintain its own translations. This is
taken care of by the Translation Project. The translation team for Russian has
a web page here: http://translationproject.org/team/ru.html. Could you please
file the bug there, instead?

The bug is a Translation Project bug, and not a GCC bug, so I'm closing this as
INVALID for GCC. Thanks for the report and sorry for the late reply.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug translation/36958] typos in french translation.

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #4 from steven at gcc dot gnu dot org  2010-07-20 22:44 ---
See http://translationproject.org/team/fr.html. Not a valid GCC bug report.
Please do report the problem to the translation team for French.

We should have some kind of forwarding system for this...


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID


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



[Bug translation/32428] odd french translation of strict aliasing -related warnings

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-07-20 22:45 ---
Not a GCC bug = closing as INVALID for gcc. 


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||INVALID


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



[Bug translation/39873] Wrong translation of output gcc -c -Q -march=core2 --help=target to Russian

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-20 22:46 ---
Not a valid bug for GCC. Please report to the translation team for Russian
instead, see http://translationproject.org/team/ru.html.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||INVALID


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



[Bug rtl-optimization/41188] move_invariant_reg() damages CBRANCH instructions with CLOBBER attribute

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #12 from steven at gcc dot gnu dot org  2010-07-20 22:50 ---
Someone should dust off the patch and submit it for trunk. Joern?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

  Component|regression  |rtl-optimization
   Last reconfirmed|2009-08-31 06:20:14 |2010-07-20 22:50:10
   date||


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



[Bug rtl-optimization/44281] [4.3/4.4/4.5/4.6 Regression] Global Register variable pessimisation

2010-07-20 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
  Component|regression  |rtl-optimization
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-20 22:52:46
   date||
Summary|Global Register variable|[4.3/4.4/4.5/4.6 Regression]
   |pessimisation and regression|Global Register variable
   ||pessimisation


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



[Bug regression/43867] ICE on valid with PGO and -fwhole-program options on small example (istringstream) with gcc 4.5.0 only

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #3 from steven at gcc dot gnu dot org  2010-07-20 22:53 ---
Martin, PGO and IPA-CP -- isn't that your area of interest? :-)


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||jamborm at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Last reconfirmed|-00-00 00:00:00 |2010-07-20 22:53:52
   date||


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



[Bug target/43750] -march unconditionally added to COLLECT_GCC_OPTIONS

2010-07-20 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-07-20 22:56 ---
Uros, what do you think of this bug, as i386 arch maintainer?


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||uros at gcc dot gnu dot org
  Component|regression  |target


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



[Bug middle-end/44982] [4.3/4.4/4.5/4.6 Regression] ICE in get_narrower, at tree.c:7832

2010-07-19 Thread steven at gcc dot gnu dot org


--- Comment #2 from steven at gcc dot gnu dot org  2010-07-19 09:58 ---
Should be easy, this one. I like easy.


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |steven at gcc dot gnu dot
   |dot org |org
 Status|NEW |ASSIGNED
   Last reconfirmed|2010-07-19 09:12:57 |2010-07-19 09:58:25
   date||


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-19 Thread steven at gcc dot gnu dot org


--- Comment #8 from steven at gcc dot gnu dot org  2010-07-19 19:04 ---
Offending insns that are scheduled in the wrong order:

(insn:TI 28 48 9 2 vector-2.c:7 (set (reg:DI 9 r9 [+8 ])
(mem/c/i:DI (reg/f:DI 14 r14 [351]) [2 t+8 S8 A64])) 5 {movdi_internal}
(expr_list:REG_DEAD (reg/f:DI 14 r14 [351])
(nil)))

(insn 9 28 18 2 vector-2.c:5 (set (mem/s/j/c:SI (reg/f:DI 15 r15 [343]) [2 t+4
S4 A32])
(reg:SI 114 r34 [ a ])) 4 {movsi_internal} (expr_list:REG_DEAD (reg:SI
114 r34 [ a ])
(expr_list:REG_DEAD (reg/f:DI 15 r15 [343])
(nil


So the MEMs are:
load from (mem/c/i:DI (reg/f:DI 14 r14 [351]) [2 t+8 S8 A64])
store to  (mem/s/j/c:SI (reg/f:DI 15 r15 [343]) [2 t+4 S4 A32])

There is no dependency of insn 28 on insn 9, even though this is a rather
obvious read-after-write dependency.

;;   ==
;;   -- basic block 2 from 30 to 39 -- after reload
;;   ==

;;   --- forward dependences: 

;;   --- EBB Dependences --- from bb2 to bb2
;;  insn  codebb   dep  prio  cost   reservation
;;    --   ---       ---
;;   30 5 2 0 3 1   2_A : 39 9 36 35
;;   29 5 2 0 2 1   2_A : 39 28 21
;;   35 5 2 1 2 1   2_M_only_um23   : 39 21 9 36
;;   36 5 2 2 1 1   2_M_only_um23   : 39 28 9
;;9 4 2 3 0 1   2_M_only_um23   : 39
;;   21 5 2 2 1 1   2_M_only_um01   : 39 18 28
;;   28 5 2 3 0 1   2_M_only_um01   : 39 18
;;   18-1 2 2 0 0   nothing : 39
;;   39   334 2 8 0 0   2_B :


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-18 Thread steven at gcc dot gnu dot org


--- Comment #5 from steven at gcc dot gnu dot org  2010-07-18 17:21 ---
It looks like a store is scheduled wrong.

Slightly reduced test case:

-- 8 #define vector
__attribute__((vector_size(16) ))

vector int f1(vector int t, int a)
{
 ((int*)t)[1] = a;
 return t;
}
int main(void)
{
  vector int a = {0, 0, 0, 0};
  vector int c = {0, 1, 0, 0};
  vector int a0;
  a0 = f1(a, 1);
  if (memcmp (a0, c, sizeof(a0)))
__builtin_abort ();
  return 0;
}
-- 8 


Compiled at -O2 -fno-inline -fpic this will abort. The assembler output for
f1 is this:

 6  .global f1#
 7  .type   f1#, @function
 8  .proc f1#
 9  f1:
10  .prologue
11  .body
12  .mmi
13  mov r15 = r12
14  nop 0
15  mov r14 = r12
16  ;;
17  .mmi
18  st8 [r15] = r32, 8
19  ;;
20  st8 [r15] = r33, -4
21  nop 0
22  .mii
23  ld8 r8 = [r14], 8
24  nop 0
25  ;;
26  nop 0
27  .mmb
28  ld8 r9 = [r14]
29  st4 [r15] = r34
30  br.ret.sptk.many b0
31  .endp f1#


The store on line 29 looked suspicious because the three stores (lines 18, 20,
and 29) are together in the unscheduled version (i.e. with
-fno-schedule-insns2, lines 15, 17, and 19):

 6  .global f1#
 7  .type   f1#, @function
 8  .proc f1#
 9  f1:
10  .prologue
11  .body
12  mov r15 = r12
13  mov r14 = r12
14  ;;
15  st8 [r15] = r32, 8
16  ;;
17  st8 [r15] = r33, -4
18  ;;
19  st4 [r15] = r34
20  ld8 r8 = [r14], 8
21  ;;
22  ld8 r9 = [r14]
23  br.ret.sptk.many b0
24  ;;
25  .endp f1#


The abort goes away if I hack the assembly manually with an extra bundle to
move the three stores back together:

.global f1# .global f1#
.type   f1#, @function  .type   f1#, @function
.proc f1#   .proc f1#
f1: f1:
.prologue   .prologue
.body   .body   
.mmi.mmi
mov r15 = r12   mov r15 = r12
nop 0   nop 0   
mov r14 = r12   mov r14 = r12
;;  ;;
.mmi.mmi
st8 [r15] = r32, 8  st8 [r15] = r32, 8
;;  ;;
st8 [r15] = r33, -4 st8 [r15] = r33, -4 
nop 0   nop 0   
   ;;  
   .mii
   st4 [r15] = r34
   nop 0   
   nop 0   
.mii.mii
ld8 r8 = [r14], 8   ld8 r8 = [r14], 8
nop 0   nop 0   
;;  ;;
nop 0   nop 0   
.mmb.mmb
ld8 r9 = [r14]  ld8 r9 = [r14] 
st4 [r15] = r34   | nop 0   
br.ret.sptk.many b0 br.ret.sptk.many b0
.endp f1#   .endp f1#


I am not an ia64 expert, but I see no reason why moving the store is a bad
idea. Will have to look at the RTL, and if that doesn't help I'll leave this to
a target specialist.


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-18 Thread steven at gcc dot gnu dot org


--- Comment #6 from steven at gcc dot gnu dot org  2010-07-18 17:29 ---
Smaller hand-changed assembly without new bundle (left aborts, right does not):

.global f1# .global f1#
.type   f1#, @function  .type   f1#, @function
.proc f1#   .proc f1#
f1: f1:
.prologue   .prologue
.body   .body
.mmi.mmi
mov r15 = r12   mov r15 = r12
nop 0   nop 0
mov r14 = r12   mov r14 = r12
;;  ;;
.mmi.mmi
st8 [r15] = r32, 8  st8 [r15] = r32, 8
;;  ;;
st8 [r15] = r33, -4 st8 [r15] = r33, -4
nop 0   nop 0
.mii  | ;;
   .mmb
   st4 [r15] = r34
   ;;
ld8 r8 = [r14], 8   ld8 r8 = [r14], 8
nop 0 
;;  ;;
nop 0   nop 0
.mmb.mmb
ld8 r9 = [r14]  ld8 r9 = [r14]
st4 [r15] = r34   | nop 0
br.ret.sptk.many b0 br.ret.sptk.many b0
.endp f1#   .endp f1#

The only thing that seems to matter, is that st4 [r15] = r34 comes before
ld8 r9 = [r14].


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-18 Thread steven at gcc dot gnu dot org


--- Comment #7 from steven at gcc dot gnu dot org  2010-07-18 17:40 ---
Ah, and since both r14 and r15 are initially copies of r12, they point to the
same memory area (modulo auto-increments/decrements). So indeed an alias thing.


-- 


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



[Bug rtl-optimization/43494] gcc.c-torture/execute/vector-2.c fails with -fpic/-fPIC

2010-07-18 Thread steven at gcc dot gnu dot org


-- 

steven at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|steven at gcc dot gnu dot   |unassigned at gcc dot gnu
   |org |dot org
 Status|ASSIGNED|NEW


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



  1   2   3   4   5   6   7   8   9   10   >