[Bug tree-optimization/27086] PRE looses SMT alias info

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-04-08 20:58 --- SMT.18091 is only ever mentioned in RVUSE_IN/OUT, not for any value handle, D.571521_46 also doesn't have a value handle. Created value VH.4677 for fieldEngineBase_5 Created value VH.4679 for *VH.4677 vuses: (SMT.1

[Bug tree-optimization/19590] IVs with the same evolution not eliminated

2006-04-08 Thread stevenb dot gcc at gmail dot com
--- Comment #10 from stevenb dot gcc at gmail dot com 2006-04-08 21:13 --- Subject: Re: IVs with the same evolution not eliminated > The new SCC value numberer for PRE i'm working on gets this case right (and > this is in fact, one of the advantages of SCC based value numbering). Is

[Bug tree-optimization/27086] PRE loses SMT alias info

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-04-08 21:46 --- This really has nothing to do with PRE except for PRE adding a new variable which contains no aliasing info attached to it so we lose information because our aliasing system sucks. -- http://gcc.gnu.org/bugzilla

[Bug fortran/26017] allocate (a(1:-1)) should yield zero-sized array

2006-04-08 Thread tkoenig at gcc dot gnu dot org
--- Comment #2 from tkoenig at gcc dot gnu dot org 2006-04-08 21:47 --- Checking wether size is negative won't work as a complete fix for this. Consider the following example: $ cat a4.f90 program main real, allocatable:: a(:,:) allocate (a(1:-1,1:-1)) print *,size(a) end program

[Bug tree-optimization/27086] PRE loses SMT alias info

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-04-08 21:54 --- add... may_alias... after... PRE! -- rguenth at gcc dot gnu dot org changed: What|Removed |Added

[Bug tree-optimization/27087] New: [4.1,4.2 regression] ICE in merge_alias_info

2006-04-08 Thread debian-gcc at lists dot debian dot org
[ forwarded from http://bugs.debian.org/361501 ] % cat ice2.c extern int ptbl[16]; extern int ctbl[16]; void doViews(void) { int *p = ptbl, *c = ctbl; while (1) { c++; p++; if (*p && (p != c || *c)) return; } } % gcc-4.0 -c -O2 ice2.c %

[Bug tree-optimization/27088] New: [4.2 regression] Segfault with inlining producing negative shift count

2006-04-08 Thread debian-gcc at lists dot debian dot org
[EMAIL PROTECTED]:/tmp% cat min4.c inline unsigned length() { return 0; } unsigned add_new_phrase() { return 16 / (1 << (length() - 1)); } [EMAIL PROTECTED]:/tmp% gcc -c min4.c [EMAIL PROTECTED]:/tmp% gcc -c -O min4.c min4.c: In function 'add_new_phrase': min4.c:5: internal compi

[Bug c++/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #6 from pinskia at gcc dot gnu dot org 2006-04-08 23:11 --- Here is the patch which fixes this issue for me: Index: cp-objcp-common.c === --- cp-objcp-common.c (revision 112789) +++ cp-objcp-common.c (working

[Bug middle-end/27088] [4.2 regression] Segfault with inlining producing negative shift count

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-04-08 23:13 --- Confirmed, the ICE is in fold-const. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added

[Bug middle-end/27088] [4.2 regression] Segfault with inlining producing negative shift count

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-04-08 23:14 --- in fact when folding 16 / 0 But the 0 has overflowed bit marked so ... -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27088

[Bug tree-optimization/27087] [4.1/4.2 regression] ICE in merge_alias_info

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-04-08 23:16 --- Confirmed, the ICE is during DOM. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added

Re: [Bug tree-optimization/19590] IVs with the same evolution not eliminated

2006-04-08 Thread Daniel Berlin
> --- Comment #10 from stevenb dot gcc at gmail dot com 2006-04-08 21:13 > --- > Subject: Re: IVs with the same evolution not eliminated > > > The new SCC value numberer for PRE i'm working on gets this case right (and > > this is in fact, one of the advantages of SCC based value number

[Bug tree-optimization/19590] IVs with the same evolution not eliminated

2006-04-08 Thread dberlin at dberlin dot org
--- Comment #11 from dberlin at gcc dot gnu dot org 2006-04-08 23:20 --- Subject: Re: IVs with the same evolution not eliminated > --- Comment #10 from stevenb dot gcc at gmail dot com 2006-04-08 21:13 > --- > Subject: Re: IVs with the same evolution not eliminated

[Bug c++/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #7 from pinskia at gcc dot gnu dot org 2006-04-08 23:28 --- I am testing the C++ patch right now. It is always a better idea to fix a pass to do what it should be doing instead of hacking another one to do the same. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27084

[Bug tree-optimization/27087] [4.1/4.2 regression] ICE in merge_alias_info

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-04-09 00:58 --- Here is a testcase making sure that fold does not get in the way: extern int ptbl[4]; extern int ctbl[4]; void doViews(void) { int *c = ctbl, *p = ptbl; while (1) { p++; c++; if (*

[Bug fortran/27089] New: Module procedure with explicit result does not pass type to specification expression.

2006-04-08 Thread pault at gcc dot gnu dot org
This fault occurs in the compilation of tonto-2.2. A fix will be posted to the list in a few minutes. There is still another problem with tonto that I am still investigating. I will post that just as soon as I isolate it. Paul module test publicn_elements_uncommon_with_ interface n_e

[Bug fortran/27089] Module procedure with explicit result does not pass type to specification expression.

2006-04-08 Thread pault at gcc dot gnu dot org
--- Comment #1 from pault at gcc dot gnu dot org 2006-04-09 04:55 --- Duuuh! I forgot a little something... In file test.f90:19 integer(4), dimension(n_elements_uncommon_with_(x)) :: res 1 Error: Expression at (1) must be of INTEGER type In file test.

[Bug libfortran/26890] SIZE parameter interacts with same variable in IO list character length specification.

2006-04-08 Thread jvdelisle at gcc dot gnu dot org
-- jvdelisle at gcc dot gnu dot org changed: What|Removed |Added AssignedTo|unassigned at gcc dot gnu |jvdelisle at gcc dot gnu dot |dot org

[Bug c++/26986] [4.2 Regression] Segfault with iostream code

2006-04-08 Thread falk at debian dot org
--- Comment #2 from falk at debian dot org 2006-04-08 08:06 --- I cannot reproduce this anymore with 4.2.0 20060407, so closing. -- falk at debian dot org changed: What|Removed |Added

[Bug target/8883] Alpha: regalloc too eager to use FP regs on EV6

2006-04-08 Thread falk at debian dot org
--- Comment #4 from falk at debian dot org 2006-04-08 08:25 --- I don't see this problem anymore in 4.2.0 20060407, so closing. -- falk at debian dot org changed: What|Removed |Added -

[Bug c++/27082] New: segfault with virtual class and visibility ("hidden")

2006-04-08 Thread falk at debian dot org
% cat bug.c struct Virtual { virtual ~Virtual() { } } __attribute__ ((visibility ("hidden"))); const void* get_vptr() { return new Virtual(); } const void* p = get_vptr(); % g++ -c bug.c bug.c: In constructor 'Virtual::Virtual()': bug.c:1: internal compiler error: Segmentation fault Pleas

[Bug c++/27082] segfault with virtual class and visibility ("hidden")

2006-04-08 Thread falk at debian dot org
--- Comment #1 from falk at debian dot org 2006-04-08 10:20 --- Here is a backtrace. [EMAIL PROTECTED]:/src/gcc-2006.04.07/build/gcc% gdb cc1plus GNU gdb 6.4-debian Copyright 2005 Free Software Foundation, Inc. GDB is free software, covered by the GNU General Public License, and you are

[Bug c++/27083] New: [4.1,4.2 regression] bit-field value not narrowed

2006-04-08 Thread falk at debian dot org
[EMAIL PROTECTED]:/tmp% cat test.c #ifdef __cplusplus extern "C" #endif void abort(void); __attribute__((noinline)) unsigned long f(const unsigned long x) { struct { unsigned long x : 1; } s; s.x = x; return s.x; } int main() { if (f(3) != 1) abort(); } [EMAIL PROTECTED]:/

[Bug tree-optimization/27084] New: Does not propagate memory load base through useless type conversion

2006-04-08 Thread rguenth at gcc dot gnu dot org
Consider struct Data { int get() const { return value; } int value; }; struct Object { int operator[](int i) const { return data_m->get(); } Data *data_m; }; int foo(Object&o) { return o[0]; } here we have after forwprop int foo(Object&) (o) { struct Object * const this; struct D

[Bug fortran/25031] [4.1 only] Allocatable array can be reallocated.

2006-04-08 Thread tkoenig at gcc dot gnu dot org
--- Comment #6 from tkoenig at gcc dot gnu dot org 2006-04-08 17:05 --- Subject: Bug 25031 Author: tkoenig Date: Sat Apr 8 17:05:52 2006 New Revision: 112783 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=112783 Log: 2006-04-08 Thomas Koenig <[EMAIL PROTECTED]> PR fo

[Bug fortran/25031] [4.1 only] Allocatable array can be reallocated.

2006-04-08 Thread tkoenig at gcc dot gnu dot org
--- Comment #7 from tkoenig at gcc dot gnu dot org 2006-04-08 17:06 --- Fixed on 4.1. Closing. -- tkoenig at gcc dot gnu dot org changed: What|Removed |Added

[Bug tree-optimization/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2006-04-08 17:09 --- Created an attachment (id=11227) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=11227&action=view) prototype patch I have a prototype patch for forwprop that handles this, but somehow messes up virtual operands

[Bug tree-optimization/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2006-04-08 17:21 --- Hm, we have from DCE to forwprop struct cpp_token * D.6254; struct cpp_token * D.6253; # temp_1334 = V_MAY_DEF ; # unsignedp_1335 = V_MAY_DEF ; # op_1336 = V_MAY_DEF ; # SMT.698_1337 = V_MAY

[Bug tree-optimization/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2006-04-08 18:31 --- Of course this is from tramp3d, and I hope fixing it would enable the hoisting of more invariant loads out of the inner loops. -- rguenth at gcc dot gnu dot org changed: What|Removed

[Bug tree-optimization/27085] New: [4.2 regression] ICE in add_virtual_operand

2006-04-08 Thread debian-gcc at lists dot debian dot org
[ forwarded from http://bugs.debian.org/361441 ] % cat ice.c typedef struct { int array_inputs; } TNLcontext; void f(void *); void _tnl_upgrade_client_data (void *swtnl_context) { f(&((TNLcontext *) swtnl_context)->array_inputs); int is_writeable = 0; int *inputs = &((TNLcontext

[Bug c++/27083] [4.1,4.2 regression] bit-field value not narrowed

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2006-04-08 18:56 --- This is a dup of bug 26534. *** This bug has been marked as a duplicate of 26534 *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug c++/26534] [4.1/4.2 Regression] bitfield wrong optimize

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #3 from pinskia at gcc dot gnu dot org 2006-04-08 18:56 --- *** Bug 27083 has been marked as a duplicate of this bug. *** -- pinskia at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug tree-optimization/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread rguenth at gcc dot gnu dot org
--- Comment #4 from rguenth at gcc dot gnu dot org 2006-04-08 18:58 --- hmhm, merge_alias_info seems to fix it -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27084

[Bug target/27082] segfault with virtual class and visibility ("hidden")

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2006-04-08 19:04 --- Looking at the backtrace, this looks like a target specific issue. -- pinskia at gcc dot gnu dot org changed: What|Removed |Added --

[Bug tree-optimization/27085] [4.2 regression] ICE in add_virtual_operand

2006-04-08 Thread pinskia at gcc dot gnu dot org
-- pinskia at gcc dot gnu dot org changed: What|Removed |Added CC||dberlin at gcc dot gnu dot |

[Bug tree-optimization/27084] Does not propagate memory load base through useless type conversion

2006-04-08 Thread pinskia at gcc dot gnu dot org
--- Comment #5 from pinskia at gcc dot gnu dot org 2006-04-08 19:09 --- forwrop when propragating better be using merge_ssa_info anyways, just like copy prop and such. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27084

[Bug tree-optimization/27086] New: PRE looses SMT alias info

2006-04-08 Thread rguenth at gcc dot gnu dot org
Basically, we have before PRE: : # c_92 = PHI ; :; # VUSE ; D.571515_36 = fieldEngineBase_5->stride_m; D.571516_37 = m_104 * D.571515_36; D.571517_38 = c_92 + D.571516_37; # VUSE ; D.571521_46 = fieldEngineBase_5->data_m.blockControllerPtr_m.ptr_m; # VUSE ; D.571523_49 = D.