[Bug target/41021] [ARM] Suboptimal code generated to store a struct

2009-08-09 Thread wiml at hhhh dot org
--- Comment #1 from wiml at dot org 2009-08-10 05:18 --- Workaround notes: Changing the structure assignment to multiple assignments, one for each field, produces noticeably better code; and changing the argument list to pass the structure fields individually produces code that loo

[Bug target/41015] [4.4/4.5 Regression] SH: miscompilation for sh4-linux

2009-08-09 Thread kkojima at gcc dot gnu dot org
--- Comment #4 from kkojima at gcc dot gnu dot org 2009-08-10 05:08 --- Ah, I see. Could you please send that patch to libc list? I'll fix gcc/longlong.h on gcc trunk and 4.4 branch after the usual tests. -- kkojima at gcc dot gnu dot org changed: What|Removed

[Bug target/41015] [4.4/4.5 Regression] SH: miscompilation for sh4-linux

2009-08-09 Thread sugioka at itonet dot co dot jp
--- Comment #3 from sugioka at itonet dot co dot jp 2009-08-10 04:47 --- I found that there is a copy of longlong.h in glibc/stdlib. After fixing it, it worked. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41015

[Bug target/41021] New: [ARM] Suboptimal code generated to store a struct

2009-08-09 Thread gcc-bugzilla at gcc dot gnu dot org
A simple function to store a small struct ends up writing the struct to memory twice unnecessarily (plus writing it for real the third time). The function's args are passed in r0-r3 (with r1-r3 being the struct). It compiles to a sequence containing the following loads and stores, among others:

[Bug target/41015] [4.4/4.5 Regression] SH: miscompilation for sh4-linux

2009-08-09 Thread kkojima at gcc dot gnu dot org
--- Comment #2 from kkojima at gcc dot gnu dot org 2009-08-09 22:44 --- I've confirmed that 4.5 has the same problem and 4.3 doesn't. > In this code, "tst r9,r9" is moved to wrong place as if > "t" bit is not clobbered in __udiv_qrnnd_16. > > I guessed that missing "t" bit constraint i

[Bug middle-end/31844] Incorrect source locations and number of warnings for unsupported visibility attribute

2009-08-09 Thread davek at gcc dot gnu dot org
--- Comment #2 from davek at gcc dot gnu dot org 2009-08-09 22:03 --- Still present, although the location has slipped slightly for the warnings on the function declarations with no body. $ g++ -S vis.cpp -o vis.asm vis.cpp: In function 'int foo(int)': vis.cpp:11: warning: visibility at

[Bug tree-optimization/41016] [4.4/4.5 Regression] ICE in build_int_cst_wide with -O1

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #5 from rguenth at gcc dot gnu dot org 2009-08-09 21:39 --- Fixed. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added Status|ASSIGNED

[Bug tree-optimization/41016] [4.4/4.5 Regression] ICE in build_int_cst_wide with -O1

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #4 from rguenth at gcc dot gnu dot org 2009-08-09 21:39 --- Subject: Bug 41016 Author: rguenth Date: Sun Aug 9 21:39:19 2009 New Revision: 150598 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150598 Log: 2009-08-09 Richard Guenther PR tree-optimization/

[Bug c++/41020] Can't declare an extern "C" friend.

2009-08-09 Thread davek at gcc dot gnu dot org
--- Comment #1 from davek at gcc dot gnu dot org 2009-08-09 21:31 --- (In reply to comment #0) > $ g++-4 -v Yuck, that got horribly wrapped. Here it is again, hopefully formatted a little better this time: Using built-in specs. Target: i686-pc-cygwin Configured with: /gnu/gcc/gcc-pa

[Bug c++/41020] New: Can't declare an extern "C" friend.

2009-08-09 Thread davek at gcc dot gnu dot org
Attempting to declare a previously-declared extern "C" function as a friend within a class definition fails with an error that the friend declaration ambiguates the original extern "C" declaration. It appears that the friend declaration is taken as an overload with "C++" linkage, since G++ then co

[Bug target/41017] regparm=3 passes structures inconsistently

2009-08-09 Thread mikulas at artax dot karlin dot mff dot cuni dot cz
--- Comment #4 from mikulas at artax dot karlin dot mff dot cuni dot cz 2009-08-09 21:16 --- Regparm changed between gcc 3.x -> 4.x (I remember it too painfully, I had to rewrite some assembler files). In 3.x, all arguments were incrementing register count, even if they were on stack, i

[Bug c++/41019] Variate_generator with mt19937 and normal_distribution produces wrong sequence for "-O3".

2009-08-09 Thread m_albert137 at yahoo dot com
--- Comment #3 from m_albert137 at yahoo dot com 2009-08-09 21:09 --- Created an attachment (id=18334) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18334&action=view) "savetemps" file from "g++ -O3 -v --save-temps t.cpp" The savetemps file. -- http://gcc.gnu.org/bugzilla/sh

[Bug c++/41019] Variate_generator with mt19937 and normal_distribution produces wrong sequence for "-O3".

2009-08-09 Thread m_albert137 at yahoo dot com
--- Comment #2 from m_albert137 at yahoo dot com 2009-08-09 21:05 --- Created an attachment (id=18333) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18333&action=view) Configuration information from "g++ -O3 -v --save-temps t.cpp" Config information from "-v" compilation. --

[Bug c++/41019] Variate_generator with mt19937 and normal_distribution produces wrong sequence for "-O3".

2009-08-09 Thread m_albert137 at yahoo dot com
--- Comment #1 from m_albert137 at yahoo dot com 2009-08-09 21:02 --- Created an attachment (id=18332) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18332&action=view) Example code When compiled below -O3 (e.g., -O2), this code gives: 0 -0.29321891723895837645 1 0.2531608189579668

[Bug c++/41019] New: Variate_generator with mt19937 and normal_distribution produces wrong sequence for "-O3".

2009-08-09 Thread m_albert137 at yahoo dot com
The attached code, we compiled with "-O3", gives an incorrect sequence (and different from the sequence without optimization or -O1 or -O2). This problem was discovered due to incorrect statistical behavior of a Monte Carlo calculation (not attached). -- Summary: Variate_generator wi

[Bug tree-optimization/41016] [4.4/4.5 Regression] ICE in build_int_cst_wide with -O1

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-08-09 20:10 --- Subject: Bug 41016 Author: rguenth Date: Sun Aug 9 20:10:41 2009 New Revision: 150595 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150595 Log: 2009-08-09 Richard Guenther PR tree-optimization/

[Bug target/41017] regparm=3 passes structures inconsistently

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2009-08-09 19:13 --- Btw, the documentation claims regparm only affects integral parameters. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41017

[Bug target/41017] regparm=3 passes structures inconsistently

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-08-09 19:10 --- Can you check if regparm(3) behavior ever changed during the gcc releases? > Hardly anyone deliberately designed it this way. Gcc internals are exposed to > the ABI! well, regparm(n) is certainly out of the psABI a

[Bug bootstrap/41018] bootstrap broken on FreeBSD powerpc

2009-08-09 Thread andreast at gcc dot gnu dot org
-- andreast at gcc dot gnu dot org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Ever Confirmed|0 |1 Last r

[Bug bootstrap/41018] New: bootstrap broken on FreeBSD powerpc

2009-08-09 Thread andreast at gcc dot gnu dot org
This patch: http://gcc.gnu.org/ml/gcc-cvs/2008-10/msg00471.html broke bootstrap on powerpc targets which do not include svr4.h. SVR4_ASM_SPEC is never defined. This patch restores bootstrap, tested on 4.4 branch and head. http://gcc.gnu.org/ml/gcc-patches/2009-06/msg00421.html Approval for this

[Bug target/41017] regparm=3 passes structures inconsistently

2009-08-09 Thread mikulas at artax dot karlin dot mff dot cuni dot cz
--- Comment #1 from mikulas at artax dot karlin dot mff dot cuni dot cz 2009-08-09 18:40 --- Created an attachment (id=18331) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18331&action=view) a proposed patch. Fixed bug 41013 as well. Change it so that all the aggregate types take

[Bug target/41017] New: regparm=3 passes structures inconsistently

2009-08-09 Thread mikulas at artax dot karlin dot mff dot cuni dot cz
regparm=3 passes structures in registers if they fit there. There is inconsistency in this rule, if structure contains only float or only double type, it is passed on the stack. Example: __attribute__((regparm(3))) void function(struct s s); now, the argument passing varies wildly depending on t

[Bug tree-optimization/41016] [4.4/4.5 Regression] ICE in build_int_cst_wide with -O1

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #2 from rguenth at gcc dot gnu dot org 2009-08-09 17:47 --- A tuplification bug. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41016

[Bug tree-optimization/41016] [4.4/4.5 Regression] ICE in build_int_cst_wide with -O1

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-08-09 17:37 --- Confirmed. We build a integer constant of floating-point type. From tree-ifcombine, thus, mine. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug tree-optimization/41016] New: ICE in build_int_cst_wide with -O1

2009-08-09 Thread mark at halcy0n dot com
The following code ICEs with -O1 on gcc-4.4: typedef struct _IO_FILE FILE; void CompareRNAStructures (FILE * ofp, int start, int L, char *ss_true, char *ss) { int i; float agree = 0.; float pairs = 0.; float pairs_true = 0.; for (i = 0; i < L; i++) { pairs_true += 1.; agr

[Bug libffi/41014] Fix for libffi err_bad_abi test failure

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #1 from rguenth at gcc dot gnu dot org 2009-08-09 16:38 --- Patches to gcc should be sent to gcc-patches with a ChangeLog entry following existing practice and a note on how you tested the patch. Note there is a different upstream for libffi somewhere at sourceforge. --

[Bug web/36739] Proposal for clarifications in GCC Bugzilla

2009-08-09 Thread pinskia at gcc dot gnu dot org
--- Comment #6 from pinskia at gcc dot gnu dot org 2009-08-09 16:35 --- >The build-triplet is the most confusing one and I would remove it retaining the host and target fields (with proper descriptions). Except sometimes that information is needed if doing a canadian cross so I would re

[Bug target/41015] [4.4 Regression] SH: miscompilation for sh4-linux

2009-08-09 Thread sugioka at itonet dot co dot jp
--- Comment #1 from sugioka at itonet dot co dot jp 2009-08-09 16:28 --- Created an attachment (id=18330) --> (http://gcc.gnu.org/bugzilla/attachment.cgi?id=18330&action=view) preprocessed source -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=41015

[Bug target/41015] New: [4.4 Regression] SH: miscompilation for sh4-linux

2009-08-09 Thread sugioka at itonet dot co dot jp
glibc-2.10.1 is not correctly compiled with gcc-4.4.1 for sh4-linux. I attached preproccessed code. Reproduce: sh4-linux-gcc -O2 -fPIC -S strtod_l.i Wrong part is as follows. .L453: mov #64,r13 tst r9,r9 !! add r14,r13 mov.l @(4,r13),r0 #APP

[Bug libffi/41014] New: Fix for libffi err_bad_abi test failure

2009-08-09 Thread dps at simpson dot demon dot co dot uk
This patch fixes the libffi.call/err_bad_abi.c expected test failures, The bug seems to be that various that bad ABI numbers, as used by err_bad_abi.c, generate assertion failures instead of returning FFI_BAD_ABI. If the test is correct then this if the wrong thing. The only unaffected architecture

[Bug target/41013] Fastcall calling convention is incompatible with Windows

2009-08-09 Thread mikulas at artax dot karlin dot mff dot cuni dot cz
--- Comment #1 from mikulas at artax dot karlin dot mff dot cuni dot cz 2009-08-09 13:39 --- "an argument that has integer type" should really be "an argument that has integer or pointer type" ... pointers are passed in registers too. Anything else isn't, I think. -- http://gcc.gnu

[Bug target/41013] New: Fastcall calling convention is incompatible with Windows

2009-08-09 Thread mikulas at artax dot karlin dot mff dot cuni dot cz
In Windows, fastcall calling convention is implemented in the following way: * an argument that has integer type with size less-or-equal than 4 bytes is eligible for fastcall * the first argument that is eligible for fastcall is passed in ECX * the second argument that is eligible for fastcall is p

[Bug libfortran/40549] Building libgfortran as a DLL

2009-08-09 Thread fxcoudert at gcc dot gnu dot org
--- Comment #3 from fxcoudert at gcc dot gnu dot org 2009-08-09 13:25 --- Fixed on trunk. -- fxcoudert at gcc dot gnu dot org changed: What|Removed |Added St

[Bug tree-optimization/41008] [4.5 Regression] ICE in vect_is_simple_reduction, at tree-vect-loop.c:1708

2009-08-09 Thread irar at il dot ibm dot com
--- Comment #3 from irar at il dot ibm dot com 2009-08-09 12:15 --- Fixed. -- irar at il dot ibm dot com changed: What|Removed |Added Status|UNCONFIRMED

[Bug tree-optimization/41008] [4.5 Regression] ICE in vect_is_simple_reduction, at tree-vect-loop.c:1708

2009-08-09 Thread irar at gcc dot gnu dot org
--- Comment #2 from irar at gcc dot gnu dot org 2009-08-09 12:13 --- Subject: Bug 41008 Author: irar Date: Sun Aug 9 12:13:19 2009 New Revision: 150591 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150591 Log: PR tree-optimization/41008 * tree-vect-loop.c (vec

[Bug web/36739] Proposal for clarifications in GCC Bugzilla

2009-08-09 Thread rguenth at gcc dot gnu dot org
--- Comment #5 from rguenth at gcc dot gnu dot org 2009-08-09 12:08 --- IMHO all fields on http://gcc.gnu.org/bugzilla/enter_bug.cgi need a link to documentation just like some already have. We can't expect people to guess what to put there. The alternative is to remove some of the fie

[Bug libfortran/40549] Building libgfortran as a DLL

2009-08-09 Thread fxcoudert at gcc dot gnu dot org
--- Comment #2 from fxcoudert at gcc dot gnu dot org 2009-08-09 11:02 --- Subject: Bug 40549 Author: fxcoudert Date: Sun Aug 9 11:02:08 2009 New Revision: 150590 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150590 Log: PR libfortran/40549 * Makefile.in (LTLDF

[Bug fortran/40955] STDCALL attributes are not saved in the .MOD files

2009-08-09 Thread burnus at gcc dot gnu dot org
--- Comment #5 from burnus at gcc dot gnu dot org 2009-08-09 08:40 --- FIXED on the trunk (4.5). -- burnus at gcc dot gnu dot org changed: What|Removed |Added

[Bug fortran/40955] STDCALL attributes are not saved in the .MOD files

2009-08-09 Thread burnus at gcc dot gnu dot org
--- Comment #4 from burnus at gcc dot gnu dot org 2009-08-09 08:36 --- Subject: Bug 40955 Author: burnus Date: Sun Aug 9 08:35:36 2009 New Revision: 150589 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=150589 Log: 2009-08-05 Tobias Burnus PR fortran/40955 *