[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread reichelt at gcc dot gnu dot org


--- Comment #10 from reichelt at gcc dot gnu dot org  2008-08-12 06:45 
---
The bug is still present on the 4.3 branch as of 2008-08-11 (with both the C
and C++ frontend).


-- 


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



[Bug c/35746] [4.3 regression] ICE with undefined variables

2008-08-12 Thread reichelt at gcc dot gnu dot org


--- Comment #8 from reichelt at gcc dot gnu dot org  2008-08-12 06:48 
---
As Andrew Pinski pointed out, we suppress ICEs after regular errors.
You have to configure the compiler with --enable-checking to see the real ICE.


-- 


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



[Bug c++/36688] [4.3/4.4 Regression] Incorrect struct assignments with nested const initializers

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2008-08-12 08:09 ---
Subject: Bug 36688

Author: jakub
Date: Tue Aug 12 08:07:57 2008
New Revision: 139004

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139004
Log:
PR c++/36688
* gimplify.c (gimplify_modify_expr_rhs): Test TREE_READONLY
on the VAR_DECL instead of TYPE_READONLY on its type.

* g++.dg/init/const6.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/init/const6.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/gimplify.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug c++/36688] [4.3/4.4 Regression] Incorrect struct assignments with nested const initializers

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2008-08-12 08:32 ---
Subject: Bug 36688

Author: jakub
Date: Tue Aug 12 08:31:15 2008
New Revision: 139006

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139006
Log:
PR c++/36688
* gimplify.c (gimplify_modify_expr_rhs): Test TREE_READONLY
on the VAR_DECL instead of TYPE_READONLY on its type.

* g++.dg/init/const6.C: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/g++.dg/init/const6.C
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/gimplify.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug tree-optimization/37084] [4.4 regression] ICE in gimple_assign_rhs1

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2008-08-12 08:39 ---
Confirmed.

#3  0x006c360a in copy_bb (id=0x7fffd920, bb=0x7759c300, 
frequency_scale=0, count_scale=1)
at /space/rguenther/src/svn/trunk/gcc/tree-inline.c:1269
1269  new_rhs = force_gimple_operand_gsi (copy_gsi,
(gdb) l
1264 gimple_assign_rhs_code (stmt) == NOP_EXPR
1265 !is_gimple_val (gimple_assign_rhs1 (stmt)))
1266  || id-regimplify)
1267{
1268  tree new_rhs;
1269  new_rhs = force_gimple_operand_gsi (copy_gsi,
1270  gimple_assign_rhs1
(stmt),
1271  true, NULL, true,
GSI_SAME_STMT);
1272  gimple_assign_set_rhs1 (stmt, new_rhs);
1273}


we have id-regimplify set but do not expect to need to deal with a call here.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||rguenth at gcc dot gnu dot
   ||org
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Priority|P3  |P1
   Last reconfirmed|-00-00 00:00:00 |2008-08-12 08:39:51
   date||


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



[Bug bootstrap/37086] Cross-compilers built with GCC 3.4 do not work

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #2 from rguenth at gcc dot gnu dot org  2008-08-12 08:41 ---
As this is a bug in GCC 3.4 let's close this as invalid (can't we do a
C only host bootstrap for building cross-compilers to work around issues
with host compilers?)


-- 


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



[Bug c++/36688] [4.3/4.4 Regression] Incorrect struct assignments with nested const initializers

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #5 from jakub at gcc dot gnu dot org  2008-08-12 08:42 ---
Fixed.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug bootstrap/37091] Rev 138207 causes ICE using bootstrap for crt for win64

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #5 from rguenth at gcc dot gnu dot org  2008-08-12 08:42 ---


*** This bug has been marked as a duplicate of 37086 ***


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution||DUPLICATE


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



[Bug bootstrap/37086] Cross-compilers built with GCC 3.4 do not work

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2008-08-12 08:42 ---
*** Bug 37091 has been marked as a duplicate of this bug. ***


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||nightstrike at gmail dot com


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



[Bug tree-optimization/37084] [4.4 regression] ICE in gimple_assign_rhs1

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #3 from jakub at gcc dot gnu dot org  2008-08-12 08:46 ---
  /* With return slot optimization we can end up with
 non-gimple (foo *)this-m, fix that here.  */
  if ((is_gimple_assign (stmt)
 gimple_assign_rhs_code (stmt) == NOP_EXPR
 !is_gimple_val (gimple_assign_rhs1 (stmt)))
  || id-regimplify)
{
  tree new_rhs;
  new_rhs = force_gimple_operand_gsi (copy_gsi,
  gimple_assign_rhs1 (stmt),
  true, NULL, true, GSI_SAME_STMT);
  gimple_assign_set_rhs1 (stmt, new_rhs);
}
  else if (id-regimplify)
gimple_regimplify_operands (stmt, copy_gsi);

IMNSHO we just need to kill the || id-regimplify from the first if condition,
the then body isn't able to deal with it and the correct
gimple_regimplify_operands call never triggers.


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-08-12 08:39:51 |2008-08-12 08:46:30
   date||


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



[Bug middle-end/37090] optimization breaks code in manually unrolled loop

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #3 from rguenth at gcc dot gnu dot org  2008-08-12 08:48 ---
I can confirm this with 4.3.1 but it works for me on the current 4.3 branch,
so this seems to be fixed.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
   Keywords||wrong-code
  Known to fail||4.3.1
  Known to work||4.3.2
 Resolution||FIXED
   Target Milestone|--- |4.3.2


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



[Bug debug/37058] [4.4 Regression] profiling testcases fail with .cfi_endproc without corresponding .cfi_startproc

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #2 from jakub at gcc dot gnu dot org  2008-08-12 09:46 ---
-freorder-blocks-and-partition never really worked with EH, whether you get
assembler errors as with the .cfi_* directives or whether it just silently
generates bogus unwind info is unimportant.  GCC isn't able to track the unwind
info for two separate sections ATM.


-- 


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



[Bug c/36849] IMA rejects to merge (function)decls with va_args

2008-08-12 Thread aldot at gcc dot gnu dot org


--- Comment #2 from aldot at gcc dot gnu dot org  2008-08-12 09:54 ---
(In reply to comment #1)
 The error message is correct as the function types are not compatible.  If in
 fact this is invalid C even though we don't currently diagnostic it without
 -combine.
 
 Closing as invalid as -combine is doing the correct job of rejecting this.
 
  Ideally the __VA_ARGS__ would be dealt with as any or none param decl, so 
  the
  function(s) above would be considered equal.
 
 No, that is not what the C/C++ standard says about compatible function types.
 
 Yes we could enable this and have -pedantic-error reject it but I don't see 
 why
 we should allow this as it is obvious invalid C code.

Do you have a suggestion on how libc could legally provide an mremap
implementation as per the example in #0 that can be compiled with -combine?


-- 

aldot at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||pinskia at gcc dot gnu dot
   ||org


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



[Bug middle-end/37014] [4.2/4.3/4.4 Regression] internal compiler error: in expand_expr_real_1, at expr.c:8760

2008-08-12 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |jakub at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-08-05 18:03:10 |2008-08-12 10:01:22
   date||


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



[Bug bootstrap/37035] gcc-4.2.2 build failed on solaris-8

2008-08-12 Thread halder dot malay at gmail dot com


--- Comment #2 from halder dot malay at gmail dot com  2008-08-12 10:54 
---
(In reply to comment #1)
 Did you set CONFIG_SHELL?
 no i haven't set CONFIG_SHELL


-- 


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



[Bug bootstrap/37092] New: gcc-4.2.2 build failed on solaris-8

2008-08-12 Thread halder dot malay at gmail dot com
i am building gcc 4.2.2 on a solaris machine using gcc-3.4.4

my build machine 
SunOS  5.8 Generic_108528-20 sun4u sparc SUNW,Sun-Blade-100

my gcc-3.4.4

Reading specs from
/tools/openbin/gcc/3.4.4/sparc-sun-solaris8/lib/gcc/sparc-sun-solaris2.8/3.4.4/specs
Configured with: ../gcc-3.4.4/configure
--prefix=/tools/openbin/gcc/3.4.4/sparc-sun-solaris8 --disable-nls
--enable-languages=c,c++,java --enable-shared --enable-threads=posix
--with-gnu-as
--with-as=/tools/openbin/binutils/2.16.1/sparc-sun-solaris8/bin/as
--with-gnu-ld
--with-ld=/tools/openbin/binutils/2.16.1/sparc-sun-solaris8/bin/ld
Thread model: posix


my configure options

CC=$(HOST_CC) CXX=$(HOST_CXX) MAKE=$(GMAKE) \
$(SRC_DIR)/configure  \
--prefix=$(DEST_DIR) \
--disable-nls \
--enable-shared \
--enable-threads=posix \
--without-gnu-ld \
--with-ld=/usr/ccs/bin/ld \
   
--with-as=/tools/openbin/binutils/2.16.1/sparc-sun-solaris8/bin/as \
--with-gnu-as \
--enable-languages=c,c++ \
   
--with-mpfr=/tools/openbin/mpfr/2.3.1/sparc-sun-solaris10 \
   
--with-mpfr-include=/tools/openbin/mpfr/2.3.1/sparc-sun-solaris10/include \
   
--with-mpfr-lib=/tools/openbin/mpfr/2.3.1/sparc-sun-solaris10/lib \
   
--with-gmp=/tools/openbin/gmp/4.2.2/sparc-sun-solaris10 \
   
--with-gmp-include=/tools/openbin/gmp/4.2.2/sparc-sun-solaris10/include \
   
--with-gmp-lib=/tools/openbin/gmp/4.2.2/sparc-sun-solaris10/lib 




I am getting this error in build stage

/users/toolsrd/ws/si_ctoolrd/gcc/production/objects/gcc-4.2.2/./gcc/xgcc
-B/users/toolsrd/ws/si_ctoolrd/gcc/production/objects/gcc-4.2.2/./gcc/
-B/tools/openbin/gcc/4.2.2/sparc-sun-solaris8/sparc-sun-solaris2.8/bin/
-B/tools/openbin/gcc/4.2.2/sparc-sun-solaris8/sparc-sun-solaris2.8/lib/
-isystem
/tools/openbin/gcc/4.2.2/sparc-sun-solaris8/sparc-sun-solaris2.8/include
-isystem
/tools/openbin/gcc/4.2.2/sparc-sun-solaris8/sparc-sun-solaris2.8/sys-include
-O2  -O2 -g -O2  -DIN_GCC-W -Wall -Wwrite-strings -Wstrict-prototypes
-Wmissing-prototypes -Wold-style-definition  -isystem ./include  -fPIC -g
-DHAVE_GTHR_DEFAULT -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -shared
-nodefaultlibs -Wl,-h,libgcc_s.so.1 -Wl,-z,text -Wl,-z,defs
-Wl,-M,libgcc/./libgcc.map -o ./libgcc_s.so.1.tmp  libgcc/./_muldi3_s.o
libgcc/./_negdi2_s.o libgcc/./_lshrdi3_s.o libgcc/./_ashldi3_s.o
libgcc/./_ashrdi3_s.o libgcc/./_cmpdi2_s.o libgcc/./_ucmpdi2_s.o
libgcc/./_clear_cache_s.o libgcc/./_enable_execute_stack_s.o
libgcc/./_trampoline_s.o libgcc/./__main_s.o libgcc/./_absvsi2_s.o
libgcc/./_absvdi2_s.o libgcc/./_addvsi3_s.o libgcc/./_addvdi3_s.o
libgcc/./_subvsi3_s.o libgcc/./_subvdi3_s.o libgcc/./_mulvsi3_s.o
libgcc/./_mulvdi3_s.o libgcc/./_negvsi2_s.o libgcc/./_negvdi2_s.o
libgcc/./_ctors_s.o libgcc/./_ffssi2_s.o libgcc/./_ffsdi2_s.o libgcc/./_clz_s.o
libgcc/./_clzsi2_s.o libgcc/./_clzdi2_s.o libgcc/./_ctzsi2_s.o
libgcc/./_ctzdi2_s.o libgcc/./_popcount_tab_s.o libgcc/./_popcountsi2_s.o
libgcc/./_popcountdi2_s.o libgcc/./_paritysi2_s.o libgcc/./_paritydi2_s.o
libgcc/./_powisf2_s.o libgcc/./_powidf2_s.o libgcc/./_powixf2_s.o
libgcc/./_powitf2_s.o libgcc/./_mulsc3_s.o libgcc/./_muldc3_s.o
libgcc/./_mulxc3_s.o libgcc/./_multc3_s.o libgcc/./_divsc3_s.o
libgcc/./_divdc3_s.o libgcc/./_divxc3_s.o libgcc/./_divtc3_s.o
libgcc/./_fixunssfsi_s.o libgcc/./_fixunsdfsi_s.o libgcc/./_fixunsxfsi_s.o
libgcc/./_fixsfdi_s.o libgcc/./_fixunssfdi_s.o libgcc/./_floatdisf_s.o
libgcc/./_floatundisf_s.o libgcc/./_fixdfdi_s.o libgcc/./_fixunsdfdi_s.o
libgcc/./_floatdidf_s.o libgcc/./_floatundidf_s.o libgcc/./_fixxfdi_s.o
libgcc/./_fixunsxfdi_s.o libgcc/./_floatdixf_s.o libgcc/./_floatundixf_s.o
libgcc/./_fixtfdi_s.o libgcc/./_fixunstfdi_s.o libgcc/./_floatditf_s.o
libgcc/./_floatunditf_s.o libgcc/./_divdi3_s.o libgcc/./_moddi3_s.o
libgcc/./_udivdi3_s.o libgcc/./_umoddi3_s.o libgcc/./_udiv_w_sdiv_s.o
libgcc/./_udivmoddi4_s.o libgcc/./unwind-dw2_s.o libgcc/./unwind-dw2-fde_s.o
libgcc/./unwind-sjlj_s.o libgcc/./gthr-gnat_s.o libgcc/./unwind-c_s.o -lc  rm
-f ./libgcc_s.so  if [ -f ./libgcc_s.so.1 ]; then mv -f ./libgcc_s.so.1
./libgcc_s.so.1.backup; else true; fi  mv ./libgcc_s.so.1.tmp ./libgcc_s.so.1
 ln -s libgcc_s.so.1 ./libgcc_s.so
ld: fatal: relocation error: R_SPARC_32: file libgcc/./_muldi3_s.o: symbol
unknown: offset 0xfe98dad1 is non-aligned
ld: fatal: relocation error: R_SPARC_32: file libgcc/./_lshrdi3_s.o: symbol
unknown: offset 0xfe98dbe3 is non-aligned
ld: fatal: relocation error: R_SPARC_32: file libgcc/./_ashrdi3_s.o: symbol
unknown: offset 0xfe98dd0d is non-aligned
ld: fatal: 

[Bug c++/37093] New: [4.2/4.3/4.4 Regression] ICE with pointer to member template parameters

2008-08-12 Thread jakub at gcc dot gnu dot org
template class C, void (C::*M) ()
static void foo (void *obj)
{
  C *p = static_castC* (obj);
  (p-*M) ();
}

template class C
static void bar (C *c, void (C::*m) ())
{
  fooC, m ((void *) c);
}

struct S
{
  void baz () {}
};

int
main ()
{
  S a;
  bar (a, S::baz);
}

ICEs since 4.0 (in 3.4 and before before it gave
rh458297.C: In function `void bar(C*, void (C::*)()) [with C = S]':
rh458297.C:23:   instantiated from here
rh458297.C:11: error: `m' is not a valid template argument
rh458297.C:11: error: it must be a pointer-to-member of the form `X::Y'
rh458297.C:11: error: no matching function for call to `foo(void*)'
).


-- 
   Summary: [4.2/4.3/4.4 Regression] ICE with pointer to member
template parameters
   Product: gcc
   Version: 4.3.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jakub at gcc dot gnu dot org


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



[Bug c++/37093] [4.2/4.3/4.4 Regression] ICE with pointer to member template parameters

2008-08-12 Thread jakub at gcc dot gnu dot org


-- 

jakub at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.3.2


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



[Bug bootstrap/37086] Cross-compilers built with GCC 3.4 do not work

2008-08-12 Thread drow at gcc dot gnu dot org


--- Comment #4 from drow at gcc dot gnu dot org  2008-08-12 11:55 ---
In the past, we've worked around bugs like this in widely used compilers - they
make life difficult.  Obviously it depends how nasty a workaround is found!


-- 


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



[Bug c/36531] -Wno-packed appears to be disconnected/ignored

2008-08-12 Thread manu at gcc dot gnu dot org


--- Comment #3 from manu at gcc dot gnu dot org  2008-08-12 12:36 ---
@John,

I know where the bug is but we still need a small testcase, please.


-- 

manu at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||manu at gcc dot gnu dot org


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



[Bug middle-end/37090] optimization breaks code in manually unrolled loop

2008-08-12 Thread michael+gcc at stapelberg dot de


--- Comment #4 from michael+gcc at stapelberg dot de  2008-08-12 12:43 
---
Thanks for confirming it. Is there a way to work around this (except for -O0),
as many distributions ship 4.3.1 as standard compiler?


-- 


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



[Bug ada/37094] New: GNAT Bug Box During Build [regression]

2008-08-12 Thread joel at gcc dot gnu dot org
This is with revision 

Compiler built for revision 138553 (20080802) with ACATS reported
(http://gcc.gnu.org/ml/gcc-testresults/2008-08/msg00380.html)

/home/joel/work-gnat/svn/b-gcc2-i386/./gcc/xgcc
-B/home/joel/work-gnat/svn/b-gcc2-i386/./gcc/ -nostdinc
-B/home/joel/work-gnat/svn/b-gcc2-i386/i386-rtems4.9/newlib/ -isystem
/home/joel/work-gnat/svn/b-gcc2-i386/i386-rtems4.9/newlib/targ-include -isystem
/home/joel/work-gnat/svn/gcc/newlib/libc/include
-B/home/joel/work-gnat/svn//install/i386-rtems4.9/bin/
-B/home/joel/work-gnat/svn//install/i386-rtems4.9/lib/ -isystem
/home/joel/work-gnat/svn//install/i386-rtems4.9/include -isystem
/home/joel/work-gnat/svn//install/i386-rtems4.9/sys-include -c -g -O2  -W -Wall
-gnatpg  a-nllcef.ads -o a-nllcef.o
a-ngcefu.adb: In function
'Ada.Numerics.Long_Long_Complex_Elementary_Functions.Log':
a-ngcefu.adb:538: error: insn does not satisfy its constraints:
(insn 465 314 468 41 a-ngcefu.adb:533 (set (reg:XF 8 st [141])
(const_double:XF -921707870 [0xc90fdaa2]
3.14159265358979323851280895940618620443274267018e+0
[0x0.c90fdaa22168c235p+2])) 76 {*movxf_integer} (nil))
+===GNAT BUG DETECTED==+
| 4.4.0 20080811 (experimental) [trunk revision 138957] (i386-pc-rtems4.9) GCC
error:|
| in copyprop_hardreg_forward_1, at regrename.c:1589   |
| Error detected around a-ngcefu.adb:538   |
| Please submit a bug report; see http://gcc.gnu.org/bugs.html.|
| Use a subject line meaningful to you and us to track the bug.|
| Include the entire contents of this bug box in the report.   |
| Include the exact gcc or gnatmake command that you entered.  |
| Also include sources listed below in gnatchop format |
| (concatenated together with no headers between files).   |
+==+

Please include these source files with error report
Note that list may not be accurate in some cases,
so please double check that the problem can still
be reproduced with the set of files listed.



raised TYPES.UNRECOVERABLE_ERROR : comperr.adb:424


-- 
   Summary: GNAT Bug Box During Build [regression]
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ada
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: joel at gcc dot gnu dot org
GCC target triplet: i386-rtems4.9


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



[Bug ada/37040] GNAT Socket Code Broken on RTEMS

2008-08-12 Thread joel at gcc dot gnu dot org


--- Comment #4 from joel at gcc dot gnu dot org  2008-08-12 12:52 ---
Patch committed to SVN trunk.  


-- 

joel at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/37095] New: [4.4 regression] Trouble with covariant return

2008-08-12 Thread reichelt at gcc dot gnu dot org
The following valid code snippet fails to compile on mainline when compiled
with -O:

===
struct A
{
  virtual A* foo();
};

struct B : virtual A
{
  virtual B* foo() { return 0; }
};

B b;
===

bug.cc:11: error: 'B* *.LTHUNK1()' aliased to undefined symbol
'_ZTch0_v0_n32_N1B3fooEv'


-- 
   Summary: [4.4 regression] Trouble with covariant return
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Keywords: rejects-valid
  Severity: normal
  Priority: P3
 Component: tree-optimization
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: reichelt at gcc dot gnu dot org


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



[Bug tree-optimization/37095] [4.4 regression] Trouble with covariant return

2008-08-12 Thread reichelt at gcc dot gnu dot org


-- 

reichelt at gcc dot gnu dot org changed:

   What|Removed |Added

   Target Milestone|--- |4.4.0


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



[Bug c++/37096] New: conditional evaluation incorrect with -O3

2008-08-12 Thread erik dot moller at cycos dot com
// system: core duo, 2.4 GHz, 64bit debian sid, vanilla kernel 2.6.26.2
// I stumbled over this using gcc 4.3.1 (Debian 4.3.1-8)
// compiler switches: -O3 -mssse3
// there were no compiler warnings / errors.

const int32_t nCC_[16] = 
{
3, 2, 2, 1, 1, 1, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0
};

int32_t Residual4x4( int16_t *pAR, int32_t nCost )
{
int32_t nRun = 0;

for( int i=0 ; i16 ; ++i )
if ( const int v = pAR[i] ) {
nCost += ( abs(v)  1 ) ? 16 : nCC_[nRun];
nRun = 0;
} else
++nRun;
}

// the above code calculates nCost uncorrectly (leading to a segfault later on)
// when I use the compiler switch -O2 or replace the conditional assignment by
an if / else
// construct, everything works fine.
// gcc 4.2 works fine too. (-with -O3 -msse2)


-- 
   Summary: conditional evaluation incorrect with -O3
   Product: gcc
   Version: 4.3.1
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: erik dot moller at cycos dot com


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



[Bug c++/36741] [4.3/4.4 regression] Bogus large integer implicitly truncated passing size_t constant to new

2008-08-12 Thread dodji at gcc dot gnu dot org


-- 

dodji at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |dodji at gcc dot gnu dot org
   |dot org |
 Status|NEW |ASSIGNED
   Last reconfirmed|2008-07-10 14:24:55 |2008-08-12 13:25:52
   date||


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



[Bug target/37094] Ada build broken

2008-08-12 Thread ebotcazou at gcc dot gnu dot org


--- Comment #1 from ebotcazou at gcc dot gnu dot org  2008-08-12 14:00 
---
See http://gcc.gnu.org/ml/gcc-patches/2008-08/msg00776.html


-- 

ebotcazou at gcc dot gnu dot org changed:

   What|Removed |Added

 CC||ebotcazou at gcc dot gnu dot
   ||org
   Severity|normal  |blocker
 Status|UNCONFIRMED |NEW
  Component|ada |target
 Ever Confirmed|0   |1
 GCC target triplet|i386-rtems4.9   |i[345]86-*-*
   Last reconfirmed|-00-00 00:00:00 |2008-08-12 14:00:44
   date||
Summary|GNAT Bug Box During Build   |Ada build broken
   |[regression]|


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



[Bug bootstrap/37086] Cross-compilers built with GCC 3.4 do not work

2008-08-12 Thread joseph at codesourcery dot com


--- Comment #5 from joseph at codesourcery dot com  2008-08-12 14:00 ---
Subject: Re:  Cross-compilers built with GCC 3.4 do not
 work

On Tue, 12 Aug 2008, rguenth at gcc dot gnu dot org wrote:

 As this is a bug in GCC 3.4 let's close this as invalid (can't we do a
 C only host bootstrap for building cross-compilers to work around issues
 with host compilers?)

Existing documented practice is to support building cross compilers using 
2.95 or later.  Again, this (and keeping the requirement to 3.4 as 
previously discussed if C++ use is introduced, and ensuring bootstrap from 
a compiler with a different C++ ABI and runtime works) is not about what 
builds are possible but about what builds are not made more complicated 
than necessary.

By now we can probably remove the workaround

This paragraph is here to try to keep Sun CC from dying.
The number of chars here seems crucial  */

in gcc.c though.


-- 


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



[Bug c/35746] [4.3 regression] ICE with undefined variables

2008-08-12 Thread aldyh at gcc dot gnu dot org


--- Comment #9 from aldyh at gcc dot gnu dot org  2008-08-12 14:05 ---
Subject: Bug 35746

Author: aldyh
Date: Tue Aug 12 14:04:18 2008
New Revision: 139018

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139018
Log:
PR c/35746
* gimplify.c (gimplify_expr): Do not convert MODIFY_EXPR to
GIMPLE_MODIFY_STMT upon GS_ERROR.


Added:
branches/gcc-4_3-branch/gcc/testsuite/gcc.dg/pr35746.c
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/gimplify.c


-- 


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



[Bug c/35746] [4.3 regression] ICE with undefined variables

2008-08-12 Thread aldyh at gcc dot gnu dot org


--- Comment #10 from aldyh at gcc dot gnu dot org  2008-08-12 14:06 ---
http://gcc.gnu.org/ml/gcc-patches/2008-08/msg00778.html


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread aldyh at gcc dot gnu dot org


--- Comment #11 from aldyh at gcc dot gnu dot org  2008-08-12 14:21 ---
Still can't reproduce.  What target are you compiling for?

Verify my steps below, and see if there's any discrepancy in what you are
doing.

anquetil:/build/43/gcc$ ./cc1 --version
GNU C (GCC) version 4.3.2 20080812 (prerelease) [gcc-4_3-branch revision
139018] (x86_64-unknown-linux-gnu)
compiled by GNU C version 4.1.2 20070925 (Red Hat 4.1.2-33), GMP
version 4.2.2, MPFR version 2.3.0-p2.
GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
anquetil:/build/43/gcc$ ./cc1 a.c -O3 -ftrapv -quiet
anquetil:/build/43/gcc$ ./cc1plus a.c -O3 -ftrapv -quiet
anquetil:/build/43/gcc$ ./cc1 a.c -ftrapv -O -ftree-vectorize -quiet
anquetil:/build/43/gcc$ ./cc1plus a.c -ftrapv -O -ftree-vectorize -quiet
anquetil:/build/43/gcc$ uname -a
Linux anquetil.quesejoda.com 2.6.24.7-92.fc8 #1 SMP Wed May 7 16:26:02 EDT 2008
x86_64 x86_64 x86_64 GNU/Linux
anquetil:/build/43/gcc$ cat a.c
void foo(int x[])
{
  int i, j;

  for (i = 0; i  2; i++)
for (j = 0; j  2; j++)
{
  x[i] = x[i*j];
  x[i] = x[i*j];
}
}


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|ASSIGNED|WAITING


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



[Bug bootstrap/37097] New: [4.4 Regression]: Revision 139014 failed to bootstrap

2008-08-12 Thread hjl dot tools at gmail dot com
On Linux/x86, I got

cc1: warnings being treated as errors
../../src/gcc/builtins.c: In function 'do_mpfr_bessel_n':
../../src/gcc/builtins.c:13085: error: unused variable 'result_c'
../../src/gcc/builtins.c:13085: error: unused variable 'result_s'
make[5]: *** [builtins.o] Error 1


-- 
   Summary: [4.4 Regression]: Revision 139014 failed to bootstrap
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: hjl dot tools at gmail dot com


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



[Bug bootstrap/37097] [4.4 Regression]: Revision 139014 failed to bootstrap

2008-08-12 Thread uweigand at gcc dot gnu dot org


--- Comment #1 from uweigand at gcc dot gnu dot org  2008-08-12 14:37 
---
Subject: Bug 37097

Author: uweigand
Date: Tue Aug 12 14:35:54 2008
New Revision: 139019

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139019
Log:
PR bootstrap/37097
* builtins.c (do_mpfr_bessel_n): Fix copy-and-paste bug introduced
by last change.
-This line, and those below, will be ignored--

Mgcc/builtins.c
Mgcc/ChangeLog

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


-- 


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



[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread reichelt at gcc dot gnu dot org


--- Comment #12 from reichelt at gcc dot gnu dot org  2008-08-12 14:37 
---
I'm using i686-pc-linux-gnu.
On x86_64-unknown-linux-gnu you probably need to add -m32 to the flags.


-- 


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



[Bug c++/36741] [4.3/4.4 regression] Bogus large integer implicitly truncated passing size_t constant to new

2008-08-12 Thread dodji at gcc dot gnu dot org


--- Comment #3 from dodji at gcc dot gnu dot org  2008-08-12 14:42 ---
Created an attachment (id=16058)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16058action=view)
primary candidate fix

This minimal patch fixes the problem for me and regtests on x86_64.

I have some questions though and would like to have you guys comments, if
possible.

My understanding is that the parameter of the new operator being size_t, its
type should represented in GENERIC using an integer that is not signed.

The issue here is that the type of the parameter of the new operator has the
same time as 'sizetype', which has its flag TYPE_IS_SIZETYPE set.

When TYPE_IS_SIZETYPE is set on an integer, some type checking machinery
consider that integer to be signed. So the the representation of that integer
is sign extended.

So a quick fix was to make sure the type of the parameter of the new operator
has the same time as 'size_type_node', instead of 'sizetype'.

Maybe there is a better way of solving this.

Also, maybe I should modify the other uses of 'sizetype' in the build_new_1()
function and replace them with size_type_node' instead. But that's maybe out
of the strict scope of this bug. I am not sure.


-- 


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



[Bug libstdc++/23888] should debug mode throw instead of assert?

2008-08-12 Thread sylvain dot pion at sophia dot inria dot fr


--- Comment #5 from sylvain dot pion at sophia dot inria dot fr  2008-08-12 
14:42 ---
What about providing both modes, with for example a global run-time flag to
select the mode which is the most appropriate ?  And maybe defaulting to
assert, since it looks like users might prefer this (?).


Also, a side note : throwing an uncaught exception does not seem to destroy the
stack, when you are under the debugger.  I just made a test, and it seems to
work.  Here is the typical backtrace that you get:

(gdb) bt
#0  0x94ed0b9e in __kill ()
#1  0x94ed0b91 in kill$UNIX2003 ()
#2  0x94f47ec2 in raise ()
#3  0x94f5747f in abort ()
#4  0x91261005 in __gnu_cxx::__verbose_terminate_handler ()
#5  0x9125f10c in __gxx_personality_v0 ()
#6  0x9125f14b in std::terminate ()
#7  0x9125f261 in __cxa_throw ()
#8  0x1f79 in f (i=1) at test_throw_debug.cpp:3
#9  0x1f8c in main () at test_throw_debug.cpp:9


I agree it is still a problem for programs that catch the exception, thinking
no other exception should occur.


-- 


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



[Bug bootstrap/37097] [4.4 Regression]: Revision 139014 failed to bootstrap

2008-08-12 Thread uweigand at gcc dot gnu dot org


--- Comment #2 from uweigand at gcc dot gnu dot org  2008-08-12 14:45 
---
Should be fixed now ...


-- 

uweigand at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||FIXED


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



[Bug rtl-optimization/36998] [4.3/4.4 regression] Ada bootstrap broken on i586-*-*

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #25 from jakub at gcc dot gnu dot org  2008-08-12 14:48 ---
Created an attachment (id=16059)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16059action=view)
dbr.patch

Patch that should cure this testcase.  We weren't handling the dbrs correctly.
For the compute_barrier_args_size* calls when setting destination args_size
depth for annulled branches we should only consider the insns from target and
for normal sequence only insns from !target.  And in normal args_size
computation
we need to ignore the target insns.


-- 


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



[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread aldyh at gcc dot gnu dot org


--- Comment #13 from aldyh at gcc dot gnu dot org  2008-08-12 15:02 ---
Nope, still can't reproduce with i686-pc-linux-gnu, or with x86-64-linux using
-m32.  FWIW, Jakub can't reproduce it either.

Can anyone beside Volker reproduce this?  If nobody else can't, I'm inclined to
say it's a problem on Volker's setup, and close the PR.


-- 


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



[Bug c/36849] IMA rejects to merge (function)decls with va_args

2008-08-12 Thread pinskia at gcc dot gnu dot org


--- Comment #3 from pinskia at gcc dot gnu dot org  2008-08-12 15:04 ---
(In reply to comment #2)
 Do you have a suggestion on how libc could legally provide an mremap
 implementation as per the example in #0 that can be compiled with -combine?

You don't.  You can try some tricks with __asm__ but I would not recommend it
though.

 As far as I can tell mremap only takes 4 arguments anyways.


-- 


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



[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #14 from rguenth at gcc dot gnu dot org  2008-08-12 15:16 
---
Fails for me on a x86_64 - i586-linux cross

./cc1 -quiet -O3 -ftrapv /tmp/t.c
/tmp/t.c: In function 'foo':
/tmp/t.c:2: internal compiler error: tree check: expected integer_cst, have
polynomial_chrec in int_cst_value, at tree.c:8078
Please submit a full bug report,
with preprocessed source if appropriate.
See http://gcc.gnu.org/bugs.html for instructions.

you probably need to configure with --enable-checking.


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

   Last reconfirmed|2008-03-04 13:30:42 |2008-08-12 15:16:37
   date||


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



[Bug tree-optimization/35428] [4.3 regression] ICE with -ftrapv

2008-08-12 Thread rguenth at gcc dot gnu dot org


-- 

rguenth at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|WAITING |NEW
   Last reconfirmed|2008-08-12 15:16:37 |2008-08-12 15:16:54
   date||


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



[Bug c/35443] [4.2/4.3/4.4 regression] Completely broken diagnostic with bind_expr

2008-08-12 Thread aldyh at gcc dot gnu dot org


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c/36849] IMA rejects to merge (function)decls with va_args

2008-08-12 Thread aldot at gcc dot gnu dot org


--- Comment #4 from aldot at gcc dot gnu dot org  2008-08-12 15:48 ---
(In reply to comment #3)

 You don't.  You can try some tricks with __asm__ but I would not recommend it
 though.

Yes, i dont' want that.
 
  As far as I can tell mremap only takes 4 arguments anyways.

unfortunately it has a very ugly interface and takes a 5th argument, depending
on the flags:

   void * mremap(void *old_address, size_t old_size , size_t new_size, int
   flags);
[]
   The flags bit-mask argument may be 0, or include the following flag:
[]
   MREMAP_FIXED (since Linux 2.3.31)
  This  flag  serves  a  similar  purpose to the MAP_FIXED flag of
  mmap(2).  If this flag is specified,  then  mremap()  accepts  a
  fifth  argument,  void  *new_address,  which  specifies  a page-
  aligned address to which the mapping must be moved.  Any  previ-
  ous  mapping  at  the address range specified by new_address and
  new_size  is  unmapped.   If  MREMAP_FIXED  is  specified,  then
  MREMAP_MAYMOVE must also be specified.


-- 


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



[Bug c++/37096] conditional evaluation incorrect with -O3

2008-08-12 Thread rguenth at gcc dot gnu dot org


--- Comment #1 from rguenth at gcc dot gnu dot org  2008-08-12 15:49 ---
Can you please provide a testcase that can be complied and run stating the
expected and the errorneous output you see?

Thanks.


-- 

rguenth 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=37096



[Bug c++/36741] [4.3/4.4 regression] Bogus large integer implicitly truncated passing size_t constant to new

2008-08-12 Thread dodji at gcc dot gnu dot org


--- Comment #4 from dodji at gcc dot gnu dot org  2008-08-12 16:10 ---
Created an attachment (id=16060)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16060action=view)
second fix candidate

This patch should be better than the previous one because it one must use
size_binop() with a sizetype integer, not with a size_type_node one.

regtested on x86_64.


-- 

dodji at gcc dot gnu dot org changed:

   What|Removed |Added

  Attachment #16058|0   |1
is obsolete||


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



[Bug c/35746] [4.3 regression] ICE with undefined variables

2008-08-12 Thread andreasmeier80 at gmx dot de


--- Comment #11 from andreasmeier80 at gmx dot de  2008-08-12 17:14 ---
Should the testcase go also in mainline?


-- 


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



[Bug tree-optimization/37084] [4.4 regression] ICE in gimple_assign_rhs1

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #4 from jakub at gcc dot gnu dot org  2008-08-12 17:59 ---
Subject: Bug 37084

Author: jakub
Date: Tue Aug 12 17:57:49 2008
New Revision: 139028

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139028
Log:
PR tree-optimization/37084
* tree-inline.c (copy_bb): Call gimple_regimplify_operands
if id-regimplify, don't assume stmt is a cast assignment.

* g++.dg/tree-ssa/pr37084.C: New test.

Added:
trunk/gcc/testsuite/g++.dg/tree-ssa/pr37084.C
Modified:
trunk/gcc/ChangeLog
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-inline.c


-- 


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



[Bug target/35575] ICE: in function_arg_slotno, at config/sparc/sparc.c:4696

2008-08-12 Thread joel at gcc dot gnu dot org


--- Comment #1 from joel at gcc dot gnu dot org  2008-08-12 17:59 ---
This is 5 months old and the target now builds.  Must have been fixed along the
way.  Closing.


-- 

joel at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution||WORKSFORME


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



[Bug ada/21327] gnat_ugn.texi invalid @direntry

2008-08-12 Thread joel at gcc dot gnu dot org


--- Comment #3 from joel at gcc dot gnu dot org  2008-08-12 18:05 ---
This looks to still be needed as of 

gcc (GCC) 4.4.0 20080811 (experimental) [trunk revision 138957]


-- 


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



[Bug middle-end/37014] [4.2/4.3/4.4 Regression] internal compiler error: in expand_expr_real_1, at expr.c:8760

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #8 from jakub at gcc dot gnu dot org  2008-08-12 18:07 ---
Subject: Bug 37014

Author: jakub
Date: Tue Aug 12 18:05:43 2008
New Revision: 139029

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139029
Log:
PR middle-end/37014
* expr.c (expand_expr_real_1): Handle TRUTH_ANDIF_EXPR
and TRUTH_ORIF_EXPR.
* dojump.c (do_jump): Likewise.

* gcc.c-torture/compile/20080812-1.c: New test.

Added:
trunk/gcc/testsuite/gcc.c-torture/compile/20080812-1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/dojump.c
trunk/gcc/expr.c
trunk/gcc/testsuite/ChangeLog


-- 


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



[Bug target/23695] [ColdFire] Illegal move of byte intoo address register causes compiler to ICE

2008-08-12 Thread joel at gcc dot gnu dot org


--- Comment #6 from joel at gcc dot gnu dot org  2008-08-12 18:10 ---
This works with 4.3.1.  I am closing this one.


-- 

joel at gcc dot gnu dot org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
  Known to fail|4.1.0   |4.1.0 4.2.4
  Known to work|4.3.0   |4.3.0 4.3.1
 Resolution||FIXED


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



[Bug libgomp/26165] Cannot find libgomp.spec after 'make install' on x86_64 and ppc64

2008-08-12 Thread froydnj at gcc dot gnu dot org


--- Comment #16 from froydnj at gcc dot gnu dot org  2008-08-12 18:20 
---
Subject: Bug 26165

Author: froydnj
Date: Tue Aug 12 18:19:08 2008
New Revision: 139031

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139031
Log:
PR libgomp/26165

* gcc.c (include_spec_function): Tweak call to find_a_file.

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


-- 


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



[Bug fortran/34805] defined assignment not allowed to vector subscripted array

2008-08-12 Thread dick dot hendrickson at gmail dot com


--- Comment #6 from dick dot hendrickson at gmail dot com  2008-08-12 18:27 
---
Subject: Re:  defined assignment not allowed to vector subscripted array

On Fri, Aug 8, 2008 at 3:39 PM, jv244 at cam dot ac dot uk
[EMAIL PROTECTED] wrote:


 --- Comment #5 from jv244 at cam dot ac dot uk  2008-08-08 20:39 ---
 has J3 judged the testcase ?

Almost.  It's interpretation request 111.  The status in June was
passed J3, it next needs to be accepted by WG5, although that is
likely to be a mere formality.  The J3 vote was unanimous and taken at
a joint WG5/J3 meeting.  It's unlikely to change.

Unfortunately, they got it wrong and are rejecting my claim that the
test is standard conforming.  So, you can mark this bug report as
closed with no action or user error or whatever you use to
(politely) tell someone to go away.

Dick Hendrickson


 --


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

 --- You are receiving this mail because: ---
 You reported the bug, or are watching the reporter.



-- 


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



[Bug middle-end/37014] [4.2/4.3/4.4 Regression] internal compiler error: in expand_expr_real_1, at expr.c:8760

2008-08-12 Thread jakub at gcc dot gnu dot org


--- Comment #9 from jakub at gcc dot gnu dot org  2008-08-12 18:37 ---
Subject: Bug 37014

Author: jakub
Date: Tue Aug 12 18:36:28 2008
New Revision: 139032

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139032
Log:
PR middle-end/37014
* expr.c (expand_expr_real_1): Handle TRUTH_ANDIF_EXPR
and TRUTH_ORIF_EXPR.
* dojump.c (do_jump): Likewise.

* gcc.c-torture/compile/20080812-1.c: New test.

Added:
branches/gcc-4_3-branch/gcc/testsuite/gcc.c-torture/compile/20080812-1.c
Modified:
branches/gcc-4_3-branch/gcc/ChangeLog
branches/gcc-4_3-branch/gcc/dojump.c
branches/gcc-4_3-branch/gcc/expr.c
branches/gcc-4_3-branch/gcc/testsuite/ChangeLog


-- 


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



[Bug c/35742] [4.2/4.3/4.4 regression] Broken diagnostic: 'goto_expr' not supported by pp_c_expression

2008-08-12 Thread aldyh at gcc dot gnu dot org


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c/35442] [4.2/4.3/4.4 Regression] Completely broken diagnostic with view_convert_expr

2008-08-12 Thread aldyh at gcc dot gnu dot org


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug c/35441] [4.2/4.3/4.4 regression] Completely broken diagnostics

2008-08-12 Thread aldyh at gcc dot gnu dot org


-- 

aldyh at gcc dot gnu dot org changed:

   What|Removed |Added

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


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



[Bug debug/37098] New: [vta] ICE in expand_debug_expr, at cfgexpand.c:2519

2008-08-12 Thread jv244 at cam dot ac dot uk
the following testcase

http://www.pci.unizh.ch/vandevondele/tmp/all_cp2k_gfortran.f90.gz

generates an ICE when compiling 

gfortran -v -c -g -O3 -ffast-math -funroll-loops -ftree-vectorize -march=native
all_cp2k_gfortran.f90
Using built-in specs.
Target: x86_64-unknown-linux-gnu
Configured with: /data03/vondele/gcc_vta/gcc/configure
--prefix=/data03/vondele/gcc_vta/build --with-gmp=/data03/vondele/
--with-mpfr=/data03/vondele/ --enable-languages=c,fortran
Thread model: posix
gcc version 4.4.0 20080729 (experimental) (GCC)
COLLECT_GCC_OPTIONS='-v' '-c' '-g' '-O3' '-ffast-math' '-funroll-loops'
'-ftree-vectorize'
 /data03/vondele/gcc_vta/build/libexec/gcc/x86_64-unknown-linux-gnu/4.4.0/f951
all_cp2k_gfortran.f90 -march=k8-sse3 -mcx16 -msahf --param l1-cache-size=64
--param l1-cache-line-size=64 --param l2-cache-size=1024 -mtune=k8 -quiet
-dumpbase all_cp2k_gfortran.f90 -auxbase all_cp2k_gfortran -g -O3 -version
-ffast-math -funroll-loops -ftree-vectorize -fintrinsic-modules-path
/data03/vondele/gcc_vta/build/lib/gcc/x86_64-unknown-linux-gnu/4.4.0/finclude
-o /tmp/ccukjSCb.s
GNU Fortran (GCC) version 4.4.0 20080729 (experimental)
(x86_64-unknown-linux-gnu)
compiled by GNU C version 4.4.0 20080729 (experimental), GMP version
4.2.1, MPFR version 2.2.1.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096


 paren_expr 0x2acbad1ad180
type real_type 0x2acb8bd15600 real(kind=8) asm_written DF
size integer_cst 0x2acb8bcfdb40 constant 64
unit size integer_cst 0x2acb8bcfdb70 constant 8
align 64 symtab -1940364928 alias set 3 canonical type 0x2acb8bd15600
precision 64
pointer_to_this pointer_type 0x2acb8bd15840 reference_to_this
reference_type 0x2acb8c04ec00

arg 0 minus_expr 0x2acbad1ad140 type real_type 0x2acb8bd15600
real(kind=8)

arg 0 mult_expr 0x2acbad1ad0c0 type real_type 0x2acb8bd15600
real(kind=8)
arg 0 var_decl 0x2acb8f3f3b40 D.88376 arg 1 var_decl
0x2acb8ee46640 D.88368
arg 1 mult_expr 0x2acbad1ad100 type real_type 0x2acb8bd15600
real(kind=8)
arg 0 var_decl 0x2acb8f2e0a00 D.88374 arg 1 var_decl
0x2acb8f03f780 D.88364
all_cp2k_gfortran.f90: In function ‘det_3x3_2’:
all_cp2k_gfortran.f90:43446: internal compiler error: in expand_debug_expr, at
cfgexpand.c:2519


-- 
   Summary: [vta] ICE in expand_debug_expr, at cfgexpand.c:2519
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Keywords: ice-on-valid-code
  Severity: normal
  Priority: P3
 Component: debug
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: jv244 at cam dot ac dot uk


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



[Bug debug/37098] [vta] ICE in expand_debug_expr, at cfgexpand.c:2519

2008-08-12 Thread jv244 at cam dot ac dot uk


--- Comment #1 from jv244 at cam dot ac dot uk  2008-08-12 19:04 ---
some vta testing on CP2K as requested in
http://gcc.gnu.org/ml/gcc/2008-08/msg00160.html


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

 CC||aoliva at gcc dot gnu dot
   ||org


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



[Bug debug/37098] [vta] ICE in expand_debug_expr, at cfgexpand.c:2519

2008-08-12 Thread jv244 at cam dot ac dot uk


--- Comment #2 from jv244 at cam dot ac dot uk  2008-08-12 19:25 ---
already happens at -O1:

gfortran  -c -g -O1 all_cp2k_gfortran.f90


-- 


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



[Bug fortran/37099] New: Wrong results when comparing a character array to a character expression

2008-08-12 Thread dominiq at lps dot ens dot fr
When compiled with gfortran 4.3.1/4.4.0, the following code:

module xparams
  integer,parameter :: exprbeg=100,exprend=154
  character(*),dimension(exprbeg:exprend),parameter :: 
  exprs=(/'nint()  ','log10() ','sqrt()  ','acos()  ','asin()  ',   
  'atan()  ','cosh()  ','sinh()  ','tanh()  ','int()   ',   
  'cos()   ','sin()   ','tan()   ','exp()   ','log()   ','abs()   ',
  'delta() ','step()  ','rect()  ','max(,)  ','min(,)  ','bj0()   ',
  'bj1()   ','bjn(,)  ','by0()   ','by1()   ','byn(,)  ','logb(,) ',
  'erf()   ','erfc()  ','lgamma()','gamma() ','csch()  ','sech()  ',
  'coth()  ','lif(,,) ','gaus()  ','sinc()  ','atan2(,)','mod(,)  ',
  'nthrt(,)','ramp()  ','fbi()   ','fbiq()  ','uran(,) ','aif(,,,)',
  'sgn()   ','cbrt()  ','fact()  ','somb()  ','bk0()   ','bk1()   ',
  'bkn(,)  ','bbi(,,) ','bbiq(,,)'/)
  logical :: tmp(55,26)
  character(26) :: al = 'abcdefghijklmnopqrstuvwxyz'
end

program pack_bug
  use xparams
do i = 1, 1
  tmp(:,i) = (exprs(:)(1:1)==al(i:i))
  print '(55L)', exprs(:)(1:1)=='a'
  print '(55L)', tmp(:,i)
end do
end

gives

FFFTTTFTFFTFFTF
FFF

The first line is the expected result, the second one is wrong.

See http://gcc.gnu.org/ml/fortran/2008-08/msg00057.html for the original post.

the dump original gives:

pack_bug ()
{
  extern character(kind=1) al[1:26];
  integer(kind=4) i;
  extern logical(kind=4) tmp[1430];
  static integer(kind=4) options.0[7] = {68, 127, 0, 0, 0, 1, 0};

  _gfortran_set_options (7, (void *) options.0);
  i = 1;
  if (i = 1)
{
  while (1)
{
  {
logical(kind=4) D.1013;

{
  integer(kind=4) D.992;
  static character(kind=1)[1:8] * A.1[55] = {n[1]{lb: 1 sz: 1},
l[1]{lb: 1 sz: 1}, s[1]{lb: 1 sz: 1}, a[1]{lb: 1 sz: 1}, a[1]{lb: 1
sz: 1}, a[1]{lb: 1 sz: 1}, c[1]{lb: 1 sz: 1}, s[1]{lb: 1 sz: 1},
t[1]{lb: 1 sz: 1}, i[1]{lb: 1 sz: 1}, c[1]{lb: 1 sz: 1}, s[1]{lb: 1
sz: 1}, t[1]{lb: 1 sz: 1}, e[1]{lb: 1 sz: 1}, l[1]{lb: 1 sz: 1},
a[1]{lb: 1 sz: 1}, d[1]{lb: 1 sz: 1}, s[1]{lb: 1 sz: 1}, r[1]{lb: 1
sz: 1}, m[1]{lb: 1 sz: 1}, m[1]{lb: 1 sz: 1}, b[1]{lb: 1 sz: 1},
b[1]{lb: 1 sz: 1}, b[1]{lb: 1 sz: 1}, b[1]{lb: 1 sz: 1}, b[1]{lb: 1
sz: 1}, b[1]{lb: 1 sz: 1}, l[1]{lb: 1 sz: 1}, e[1]{lb: 1 sz: 1},
e[1]{lb: 1 sz: 1}, l[1]{lb: 1 sz: 1}, g[1]{lb: 1 sz: 1}, c[1]{lb: 1
sz: 1}, s[1]{lb: 1 sz: 1}, c[1]{lb: 1 sz: 1}, l[1]{lb: 1 sz: 1},
g[1]{lb: 1 sz: 1}, s[1]{lb: 1 sz: 1}, a[1]{lb: 1 sz: 1}, m[1]{lb: 1
sz: 1}, n[1]{lb: 1 sz: 1}, r[1]{lb: 1 sz: 1}, f[1]{lb: 1 sz: 1},
f[1]{lb: 1 sz: 1}, u[1]{lb: 1 sz: 1}, a[1]{lb: 1 sz: 1}, s[1]{lb: 1
sz: 1}, c[1]{lb: 1 sz: 1}, f[1]{lb: 1 sz: 1}, s[1]{lb: 1 sz: 1},
b[1]{lb: 1 sz: 1}, b[1]{lb: 1 sz: 1}, b[1]{lb: 1 sz: 1}, b[1]{lb: 1
sz: 1}, b[1]{lb: 1 sz: 1}};

  D.992 = i;
  {
integer(kind=4) D.994;
integer(kind=4) S.2;

D.994 = D.992 * 55 + -56;
S.2 = 1;
while (1)
  {
if (S.2  55) goto L.3;
tmp[S.2 + D.994] = _gfortran_compare_string (8, A.1[S.2 +
-1], 1, (character(kind=1)[1:26] *) al[i]{lb: 1 sz: 1}) == 0;
S.2 = S.2 + 1;
  }
L.3:;
  }
}
{
  struct __st_parameter_dt dt_parm.3;

  dt_parm.3.common.filename = pack_bug_red.f90[1]{lb: 1 sz: 1};
  dt_parm.3.common.line = 22;
  dt_parm.3.format = (55L)[1]{lb: 1 sz: 1};
  dt_parm.3.format_len = 5;
  dt_parm.3.common.flags = 4096;
  dt_parm.3.common.unit = 6;
  _gfortran_st_write (dt_parm.3);
  {
static logical(kind=4) A.4[55] = {0, 0, 0, 1, 1, 1, 0, 0, 0, 0,
0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0};

{
  integer(kind=4) S.5;

  S.5 = 0;
  while (1)
{
  if (S.5  54) goto L.4;
  {
logical(kind=4) D.999;

D.999 = A.4[S.5];
_gfortran_transfer_logical (dt_parm.3, D.999, 4);
  }
  S.5 = S.5 + 1;
}
  L.4:;
}
  }
  _gfortran_st_write_done (dt_parm.3);
}
{
  struct __st_parameter_dt dt_parm.6;

  dt_parm.6.common.filename = pack_bug_red.f90[1]{lb: 1 sz: 1};
  dt_parm.6.common.line = 23;
  dt_parm.6.format = (55L)[1]{lb: 1 sz: 1};
  dt_parm.6.format_len = 5;
  dt_parm.6.common.flags = 4096;
  

[Bug c++/37087] Segfault on compiling template defined in wrong namespace.

2008-08-12 Thread paolo at gcc dot gnu dot org


--- Comment #2 from paolo at gcc dot gnu dot org  2008-08-12 19:39 ---
Subject: Bug 37087

Author: paolo
Date: Tue Aug 12 19:38:02 2008
New Revision: 139034

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139034
Log:
/cp
2008-08-12  Paolo Carlini  [EMAIL PROTECTED]

PR c++/37087
* parser.c (cp_parser_class_head): Early return error_mark_node in
case of global qualification of class name or qualified name that
does not name a class.

/testsuite
2008-08-12  Paolo Carlini  [EMAIL PROTECTED]

PR c++/37087
* g++.dg/template/crash80.C: New.
* g++.old-deja/g++.other/decl5.C: Adjust.

Added:
trunk/gcc/testsuite/g++.dg/template/crash80.C
Modified:
trunk/gcc/cp/ChangeLog
trunk/gcc/cp/parser.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.old-deja/g++.other/decl5.C


-- 


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



[Bug fortran/37099] Wrong results when comparing a character array to a character expression

2008-08-12 Thread jv244 at cam dot ac dot uk


-- 

jv244 at cam dot ac dot uk changed:

   What|Removed |Added

OtherBugsDependingO||32834
  nThis||
 Status|UNCONFIRMED |NEW
 Ever Confirmed|0   |1
   Keywords||wrong-code
  Known to fail||4.3.1 4.4.0
   Last reconfirmed|-00-00 00:00:00 |2008-08-12 19:41:55
   date||


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



[Bug c++/37087] Segfault on compiling template defined in wrong namespace.

2008-08-12 Thread paolo dot carlini at oracle dot com


--- Comment #3 from paolo dot carlini at oracle dot com  2008-08-12 19:45 
---
Fixed for 4.4.0.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 AssignedTo|paolo dot carlini at oracle |unassigned at gcc dot gnu
   |dot com |dot org
 Status|ASSIGNED|NEW
   Target Milestone|--- |4.4.0


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



[Bug target/34439] ICE in reload_cse_simplify_operands for Coldfire

2008-08-12 Thread joel at gcc dot gnu dot org


--- Comment #4 from joel at gcc dot gnu dot org  2008-08-12 19:47 ---
Works with 4.3.1.  Should this be closed if someone can confirm it is fixed on
the trunk?


-- 


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



[Bug testsuite/36087] [4.4 Regression] test failures between revs. 134696 and 134717

2008-08-12 Thread janis at gcc dot gnu dot org


--- Comment #9 from janis at gcc dot gnu dot org  2008-08-12 21:20 ---
Subject: Bug 36087

Author: janis
Date: Tue Aug 12 21:18:54 2008
New Revision: 139037

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139037
Log:
PR testsuite/36087
* gcc.dg/var-expand3.c: Fix name of dump file.

Modified:
trunk/gcc/doc/invoke.texi
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/gcc.dg/var-expand3.c


-- 


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



[Bug c++/37100] New: /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread pentek dot imre at gmail dot com
At /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99:
/// http://gcc.gnu.org/onlinedocs/libstdc++/20_util/howto.html#pairlt
the referenced doc doesn't exist.


-- 
   Summary: /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-
v4/bits/stl_pair.h:99: error 404
   Product: gcc
   Version: 4.1.2
Status: UNCONFIRMED
  Severity: minor
  Priority: P3
 Component: c++
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: pentek dot imre at gmail dot com
 GCC build triplet: x86_64-pc-linux-gnu
  GCC host triplet: x86_64-pc-linux-gnu
GCC target triplet: x86_64-pc-linux-gnu


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



[Bug libstdc++/37100] /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread pinskia at gcc dot gnu dot org


--- Comment #1 from pinskia at gcc dot gnu dot org  2008-08-12 22:43 ---
That is because it moved:
http://gcc.gnu.org/onlinedocs/libstdc++/manual/bk01pt04ch10.html


-- 


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



[Bug libstdc++/37100] /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread paolo dot carlini at oracle dot com


--- Comment #2 from paolo dot carlini at oracle dot com  2008-08-12 23:10 
---
For now, let's just change the url to point to the utilities subsection, which
doesn't change when the documentation is regenerated (... I know, we should
really deal with the latter issue, but it's known already)


-- 

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 |2008-08-12 23:10:43
   date||
   Target Milestone|--- |4.3.2


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



[Bug tree-optimization/37101] New: [4.2/4.3 Regression] wrong code: tree vectorizer omits bogus movq/movlps construct

2008-08-12 Thread christophe at saout dot de
(see http://bugs.gentoo.org/show_bug.cgi?id=227311 )

Seeing this on my (amd64) gcc 4.3.1 in xorg-server code dix/resource.c with
-O2 -march=nocona -ftree-vectorize.

( gcc -O2 -march=nocona -ftree-vectorize -o resource.o -c resource.i )

Unfortunately I was not able to reproduce this using a simpler testcase,
because gcc would omit a punpcklqdq instead of the offending movq/movlps,
so I attached the whole thing with a description of the problem and an analysis
of the wrong assembler code emitted.

When going through the attached file, look for the RebuildTable function,
which is inlined into AddResource.

It contains the following construct:

for (rptr = resources, tptr = tails; --j = 0; rptr++, tptr++)
{
*rptr = NullResource;
*tptr = rptr;
}

which initialises two arrays of pointers, one filled with null pointers and the
other with a pointer to the just filled NULL in the other array.

The symptom (leeding to a segfault just after) shows up that the second tails
array is incorrectly initialized. Every second entry does not contain the
correct pointer (i.e. filled with the correct value of rptr), but contains a
ladder starting at 0 (0x8, 018, 0x28, ...), i.e. does not add the value of
resources as start offset.  (the whole array goes like 0xc000, 0x0008,
0xc010, 0x0018, 0xc020, 0x0028, ... instead of 0xc000, 0xc008, 0xc010, 0xc018,
0xc020, 0xc028, ...)

Digging through the code it seems that the tree vectorizer is emitting an
optimized implementation of the loop for large amount of entries (j starts at a
value of 128 when the failure was observed) after the body of the function.

It fills a bunch of xmm registers with values, so that both arrays can be
filled 16 bytes at a time (instead of 8 bytes at a time).

Now, due to the bug, the register that pair-wise fills the tails array should
be doing sth like this (pseudo-code)

xmm1 = ((resources + 0x0008)  64) + resources
xmm2 = (0x0010  64) + 0x0010

and then fill in xmm1 and add xmm2 to it after each iteration, or something
like that.

What I now seem to see be seeing, is that in my terminology here xmm1 is not
filled correctly, the upper 64 bit seem to be zero, which would explain how the
array is incorrectly filled.

The assembler code of this part looks like:

(the start of the for loop in the default code path)
 f0d:   44 89 eemov%r13d,%esi
 f10:   83 ee 01sub$0x1,%esi
 f13:   78 32   js f47 AddResource+0x1a2
 f15:   41 83 fd 09 cmp$0x9,%r13d
 f19:   0f 87 22 01 00 00   ja 1041 AddResource+0x29c

So here seems to be some logic for the first --j and as to whether the
optimized out-of-line code should be jumped (and a non-sse implementation
of the loop body below, which looks ok).

Starting at 1041 there is some more funny logic which I don't fully get, but
some instructions below is where I think the cause of the problem is:

Here, the code that initializes xmm1 (also the xmm1 in my pseudo-code above):

107e:   48 8b 44 24 38  mov0x38(%rsp),%rax
1083:   48 83 c0 08 add$0x8,%rax
1087:   66 48 0f 6e c8  movq   %rax,%xmm1
108c:   0f 12 4c 24 38  movlps 0x38(%rsp),%xmm1

I'm no sse2 expert, but it seems as if movlps was supposed to move the lower
part of xmm1 (which contains resources + 0x8) to the upper part before
overwriting the lower part with resources? Or something, like that, which it
doesn't (using google and http://www.ews.uiuc.edu/~cjiang/reference/vc191.htm
as a reference... :-))

Anyway, here is the rest of the method:

1091:   66 0f 6f c1 movdqa %xmm1,%xmm0
1095:   31 d2   xor%edx,%edx
1097:   31 c0   xor%eax,%eax
1099:   66 0f 6f 15 00 00 00movdqa 0x0(%rip),%xmm2# 10a1
AddResource+0x2fc
10a0:   00 
109d: R_X86_64_PC32 .LC3+0xfffc

(presumably loads 0x00100010 into xmm2)

10a1:   66 0f ef c9 pxor   %xmm1,%xmm1

(xmm1 now contains zeroes to fill the resources array)

10a5:   48 8b 5c 24 38  mov0x38(%rsp),%rbx
10aa:   66 0f 7f 0c 03  movdqa %xmm1,(%rbx,%rax,1) - fill 2
resources entries
10af:   66 41 0f 7f 04 04   movdqa %xmm0,(%r12,%rax,1) - fill 2
tails entries
10b5:   83 c2 01add$0x1,%edx
10b8:   48 83 c0 10 add$0x10,%rax
10bc:   66 0f d4 c2 paddq  %xmm2,%xmm0
10c0:   39 ca   cmp%ecx,%edx
10c2:   72 e1   jb 10a5 AddResource+0x300

Trying to reproduce the test case, gcc omitted a punpcklqdq to initialized
the base instead, which works, so this must me some different code triggered by
some other register constraints or something (?).

As from the report, I guess this 

[Bug libstdc++/37100] /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread paolo at gcc dot gnu dot org


--- Comment #3 from paolo at gcc dot gnu dot org  2008-08-12 23:15 ---
Subject: Bug 37100

Author: paolo
Date: Tue Aug 12 23:14:10 2008
New Revision: 139040

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139040
Log:
2008-08-12  Paolo Carlini  [EMAIL PROTECTED]

PR libstdc++/37100
* include/bits/stl_pair.h: Fix documentation URL in comment.

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


-- 


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



[Bug libstdc++/37100] /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread paolo at gcc dot gnu dot org


--- Comment #4 from paolo at gcc dot gnu dot org  2008-08-12 23:16 ---
Subject: Bug 37100

Author: paolo
Date: Tue Aug 12 23:15:23 2008
New Revision: 139041

URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=139041
Log:
2008-08-12  Paolo Carlini  [EMAIL PROTECTED]

PR libstdc++/37100
* include/bits/stl_pair.h: Fix documentation URL in comment.

Modified:
branches/gcc-4_3-branch/libstdc++-v3/ChangeLog
branches/gcc-4_3-branch/libstdc++-v3/include/bits/stl_pair.h


-- 


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



[Bug libstdc++/37100] /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include/g++-v4/bits/stl_pair.h:99: error 404

2008-08-12 Thread paolo dot carlini at oracle dot com


--- Comment #5 from paolo dot carlini at oracle dot com  2008-08-12 23:17 
---
Fixed for 4.3.2.


-- 

paolo dot carlini at oracle dot com changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution||FIXED


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



[Bug tree-optimization/37101] [4.2/4.3 Regression] wrong code: tree vectorizer omits bogus movq/movlps construct

2008-08-12 Thread christophe at saout dot de


--- Comment #1 from christophe at saout dot de  2008-08-12 23:17 ---
Created an attachment (id=16061)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16061action=view)
preprocessed source file to be compiled to see the wrong generated code


-- 


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



[Bug c++/32305] ICE in initialize_flags_in_bb with -O -fipa-pta

2008-08-12 Thread janis at gcc dot gnu dot org


--- Comment #8 from janis at gcc dot gnu dot org  2008-08-12 23:57 ---
With r139042 the GCC Manual says that -fipa-pta is an experimental option that
does not affect code generation.


-- 


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



[Bug debug/37098] [vta] ICE in expand_debug_expr, at cfgexpand.c:2519

2008-08-12 Thread aoliva at gcc dot gnu dot org


--- Comment #3 from aoliva at gcc dot gnu dot org  2008-08-13 00:51 ---
Created an attachment (id=16062)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16062action=view)
Patch that may fix the bug

Thanks for the report.  Wow, I was a bit surprised this didn't show up building
libgfortran.  This patch ought to fix this one.


-- 

aoliva at gcc dot gnu dot org changed:

   What|Removed |Added

 AssignedTo|unassigned at gcc dot gnu   |aoliva at gcc dot gnu dot
   |dot org |org
 Status|UNCONFIRMED |ASSIGNED


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



[Bug rtl-optimization/36998] [4.3/4.4 regression] Ada bootstrap broken on i586-*-*

2008-08-12 Thread kkojima at gcc dot gnu dot org


--- Comment #26 from kkojima at gcc dot gnu dot org  2008-08-13 03:30 
---
(In reply to comment #25)
 Created an attachment (id=16059)
 -- (http://gcc.gnu.org/bugzilla/attachment.cgi?id=16059action=view) [edit]
 dbr.patch

This fixes the ICE.  Trunk revision 138972 + pop.patch + dbr.patch
with reverting disable-asserts.patch was built successfully on
sh4-unknown-linux-gnu for all languages except ada.  It has passed
regtesting on that target.


-- 


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



[Bug c/37102] New: possible integer codegen bug

2008-08-12 Thread regehr at cs dot utah dot edu
This is for svn 139046 on Ubuntu Hardy.

[EMAIL PROTECTED]:~/volatile/tmp0$ current-gcc -O -Wall -fwrapv small.c -o small
[EMAIL PROTECTED]:~/volatile/tmp0$ ./small
5
[EMAIL PROTECTED]:~/volatile/tmp0$ current-gcc -O3 -Wall -fwrapv small.c -o
small
[EMAIL PROTECTED]:~/volatile/tmp0$ ./small
0
[EMAIL PROTECTED]:~/volatile/tmp0$ current-gcc -v
Using built-in specs.
Target: i686-pc-linux-gnu
Configured with: ../configure --program-prefix=current-
--enable-languages=c,c++ --prefix=/home/regehr
Thread model: posix
gcc version 4.4.0 20080813 (experimental) (GCC) 
[EMAIL PROTECTED]:~/volatile/tmp0$ cat small.c

#include stdio.h

unsigned int g_24;
unsigned int g_37 = 1;
unsigned char g_225;

int main (void)
{
  int l_289;
  for (l_289 = 1; l_289  5; l_289 += 1) {
if (g_225) {
  g_24 = g_37;
}
  }
  g_24 = g_37;
  unsigned short context = g_24  1;
  do {
if (context)
  context = (context  1) ^ 1;
  } while (0);
  printf (%d\n, (int)context);
  return 0;
}


-- 
   Summary: possible integer codegen bug
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: regehr at cs dot utah dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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



[Bug c/37103] New: possible integer codegen bug

2008-08-12 Thread regehr at cs dot utah dot edu
This is an interesting one...

Compiling the code below at all common optimization levels, gcc r139046
generates code that prints hello, as does 4.3.1.  Pre-4.3 versions of gcc emit
code that prints nothing.  I'm pretty sure that the older versions are correct.

#include stdio.h

int func_72 (void);
int func_72 (void)
{
  printf (hello\n);
  return 0;
}

void func_58 (unsigned short p_65);
void func_58 (unsigned short p_65)
{
  char g_99 = -1;
  (p_65 != g_99) || (func_72 ());
}

int main (void)
{
  func_58 (-1);
  return 0;
}


-- 
   Summary: possible integer codegen bug
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: regehr at cs dot utah dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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



Re: [Bug c/37103] New: possible integer codegen bug

2008-08-12 Thread Andrew Thomas Pinski
Note for most targets not printing is correct as char is signed by  
default but for most powerpc targets the opposite is true. You should  
have explicted included signed for g_99.


Sent from my iPhone

On Aug 12, 2008, at 22:10, regehr at cs dot utah dot edu [EMAIL PROTECTED] 
 wrote:



This is an interesting one...

Compiling the code below at all common optimization levels, gcc  
r139046
generates code that prints hello, as does 4.3.1.  Pre-4.3 versions  
of gcc emit
code that prints nothing.  I'm pretty sure that the older versions  
are correct.


#include stdio.h

int func_72 (void);
int func_72 (void)
{
 printf (hello\n);
 return 0;
}

void func_58 (unsigned short p_65);
void func_58 (unsigned short p_65)
{
 char g_99 = -1;
 (p_65 != g_99) || (func_72 ());
}

int main (void)
{
 func_58 (-1);
 return 0;
}


--
  Summary: possible integer codegen bug
  Product: gcc
  Version: 4.4.0
   Status: UNCONFIRMED
 Severity: normal
 Priority: P3
Component: c
   AssignedTo: unassigned at gcc dot gnu dot org
   ReportedBy: regehr at cs dot utah dot edu
GCC build triplet: i686-pc-linux-gnu
 GCC host triplet: i686-pc-linux-gnu
GCC target triplet: i686-pc-linux-gnu


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



[Bug c/37103] possible integer codegen bug

2008-08-12 Thread pinskia at gmail dot com


--- Comment #1 from pinskia at gmail dot com  2008-08-13 05:44 ---
Subject: Re:   New: possible integer codegen bug

Note for most targets not printing is correct as char is signed by  
default but for most powerpc targets the opposite is true. You should  
have explicted included signed for g_99.

Sent from my iPhone

On Aug 12, 2008, at 22:10, regehr at cs dot utah dot edu
[EMAIL PROTECTED] 
  wrote:

 This is an interesting one...

 Compiling the code below at all common optimization levels, gcc  
 r139046
 generates code that prints hello, as does 4.3.1.  Pre-4.3 versions  
 of gcc emit
 code that prints nothing.  I'm pretty sure that the older versions  
 are correct.

 #include stdio.h

 int func_72 (void);
 int func_72 (void)
 {
  printf (hello\n);
  return 0;
 }

 void func_58 (unsigned short p_65);
 void func_58 (unsigned short p_65)
 {
  char g_99 = -1;
  (p_65 != g_99) || (func_72 ());
 }

 int main (void)
 {
  func_58 (-1);
  return 0;
 }


 -- 
   Summary: possible integer codegen bug
   Product: gcc
   Version: 4.4.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: regehr at cs dot utah dot edu
 GCC build triplet: i686-pc-linux-gnu
  GCC host triplet: i686-pc-linux-gnu
 GCC target triplet: i686-pc-linux-gnu


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



-- 


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