[Bug target/64532] [4.9/5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)

2015-01-20 Thread ramana at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64532

--- Comment #11 from Ramana Radhakrishnan ramana at gcc dot gnu.org ---
(In reply to baoshan from comment #10)
 I have a second thought:
 As the 'y' is declared as float, should GCC infer the register is a single
 float register even the constraint is 'w' ?

I don't know an easy way today to do that - yes we could have better error
messages but as of now I'd rather just document this and move on.


[Bug ipa/63576] [5 Regression] ICE : in ipa_merge_profiles, at ipa-utils.c:540 during Firefox LTO/PGO build

2015-01-20 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63576

--- Comment #10 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
Unfortunately your patch dosen't work:

lto1: internal compiler error: Segmentation fault
0xa12f6f crash_signal
../../gcc/gcc/toplev.c:381
0x88b190 ipa_merge_profiles(cgraph_node*, cgraph_node*)
../../gcc/gcc/ipa-utils.c:637
0x603722 lto_cgraph_replace_node
../../gcc/gcc/lto/lto-symtab.c:124
0x604cf3 lto_symtab_merge_symbols_1
../../gcc/gcc/lto/lto-symtab.c:619
0x604cf3 lto_symtab_merge_symbols()
../../gcc/gcc/lto/lto-symtab.c:647
0x5fa52e read_cgraph_and_symbols
../../gcc/gcc/lto/lto.c:3109
0x5fa52e lto_main()
../../gcc/gcc/lto/lto.c:3436
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug report.
See http://gcc.gnu.org/bugs.html for instruction


[Bug rtl-optimization/49847] [4.8 Regression] NULL deref in fold_rtx (prev_insn_cc0 == NULL)

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=49847

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Target Milestone|4.8.5   |4.9.0


[Bug tree-optimization/64682] [5 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64682

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2015-01-20
 CC||jakub at gcc dot gnu.org,
   ||segher at gcc dot gnu.org
   Target Milestone|--- |5.0
Summary|wrong code at -O2 and -O3   |[5 Regression] wrong code
   |on x86_64-linux-gnu |at -O2 and -O3 on
   ||x86_64-linux-gnu
 Ever confirmed|0   |1

--- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org ---
Started with r218248.


[Bug lto/64685] New: wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread su at cs dot ucdavis.edu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64685

Bug ID: 64685
   Summary: wrong code by LTO on x86_64-linux-gnu
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: lto
  Assignee: unassigned at gcc dot gnu.org
  Reporter: su at cs dot ucdavis.edu

The current gcc trunk miscompiles the following code when using LTO on
x86_64-linux-gnu in both 32-bit and 64-bit modes. 

This is a regression from 4.9.x. 

$ gcc-trunk -v
Using built-in specs.
COLLECT_GCC=gcc-trunk
COLLECT_LTO_WRAPPER=/usr/local/gcc-trunk/libexec/gcc/x86_64-unknown-linux-gnu/5.0.0/lto-wrapper
Target: x86_64-unknown-linux-gnu
Configured with: ../gcc-trunk/configure --prefix=/usr/local/gcc-trunk
--enable-languages=c,c++ --disable-werror --enable-multilib
Thread model: posix
gcc version 5.0.0 20150119 (experimental) [trunk revision 219832] (GCC) 

$ 
$ gcc-trunk -O0 -c fn1.c
$ gcc-trunk -O1 -c main.c
$ gcc-trunk -O1 fn1.o main.o
$ ./a.out
$ 
$ gcc-4.9 -flto -O0 -c fn1.c
$ gcc-4.9 -flto -O1 -c main.c
$ gcc-4.9 -flto -O1 fn1.o main.o
$ ./a.out
$ 
$ 
$ gcc-trunk -flto -O0 -c fn1.c
$ gcc-trunk -flto -O1 -c main.c
$ gcc-trunk -flto -O1 fn1.o main.o
$ ./a.out
Aborted (core dumped)
$ 
$ cat fn1.c
extern int b;

void
fn1 (void)
{
  b = 0;
}
$ cat main.c
extern void fn1 (void); 

int a[2], b;

static void
foo (int p)
{
  b = 1 ^ a[(b ^ 1)  1];
  b = 1 ^ a[b  1];
  if (p)
__builtin_abort ();
}

int
main ()
{
  foo (0);
  b = 0;
  foo (0);

  if (b != 1)
__builtin_abort ();

  return 0;
}
$


[Bug rtl-optimization/64081] [5 Regression] r217827 prevents RTL loop unroll

2015-01-20 Thread ienkovich at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64081

--- Comment #4 from ienkovich at gcc dot gnu.org ---
Author: ienkovich
Date: Tue Jan 20 08:29:09 2015
New Revision: 219880

URL: https://gcc.gnu.org/viewcvs?rev=219880root=gccview=rev
Log:
gcc/

PR bootstrap/64676
Revert:
2015-01-19  Igor Zamyatin  igor.zamya...@intel.com

PR rtl-optimization/64081
* loop-iv.c (def_pred_latch_p): New function.
(latch_dominating_def): Allow specific cases with non-single
definitions.
(iv_get_reaching_def): Likewise.
(check_complex_exit_p): New function.
(check_simple_exit): Use check_complex_exit_p to allow certain cases
with exits not executing on any iteration.

gcc/testsuite/

PR bootstrap/64676
Revert:
2014-01-19  Igor Zamyatin  igor.zamya...@intel.com

PR rtl-optimization/64081
* gcc.dg/pr64081.c: New test.


Removed:
trunk/gcc/testsuite/gcc.dg/pr64081.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/loop-iv.c
trunk/gcc/testsuite/ChangeLog


[Bug bootstrap/64676] [5.0 Regression] SEGV in tree-ssa-structalias.c solve_constraint

2015-01-20 Thread ienkovich at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64676

--- Comment #6 from ienkovich at gcc dot gnu.org ---
Author: ienkovich
Date: Tue Jan 20 08:29:09 2015
New Revision: 219880

URL: https://gcc.gnu.org/viewcvs?rev=219880root=gccview=rev
Log:
gcc/

PR bootstrap/64676
Revert:
2015-01-19  Igor Zamyatin  igor.zamya...@intel.com

PR rtl-optimization/64081
* loop-iv.c (def_pred_latch_p): New function.
(latch_dominating_def): Allow specific cases with non-single
definitions.
(iv_get_reaching_def): Likewise.
(check_complex_exit_p): New function.
(check_simple_exit): Use check_complex_exit_p to allow certain cases
with exits not executing on any iteration.

gcc/testsuite/

PR bootstrap/64676
Revert:
2014-01-19  Igor Zamyatin  igor.zamya...@intel.com

PR rtl-optimization/64081
* gcc.dg/pr64081.c: New test.


Removed:
trunk/gcc/testsuite/gcc.dg/pr64081.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/loop-iv.c
trunk/gcc/testsuite/ChangeLog


[Bug c/64639] false negative of -Wunused-value

2015-01-20 Thread maltsevm at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64639

Mikhail Maltsev maltsevm at gmail dot com changed:

   What|Removed |Added

 CC||maltsevm at gmail dot com

--- Comment #5 from Mikhail Maltsev maltsevm at gmail dot com ---
 gets somehow transformed into
 b = (a = 0B) != 0B;, 0;

Probably folding works this way. Anyway, I think, I can explain how the warning
is [not] generated (I stepped through the code using GDB). So:
We start parsing RHS of assignment expression (the outermost one). After
parsing two operands of comma, we get into build_compound_expr function (in
c-typeck.c) and this function generates a warning because left-hand operand of
comma expression (i.e. 0) has no effect (that's true, but the wording is a
bit strange). Then we parse the next comma expression and get into the same
function. The code of build_compound_expr looks like this:

...
  if (!TREE_SIDE_EFFECTS (expr1))
...
  else if (TREE_CODE (expr1) == COMPOUND_EXPR  warn_unused_value)
...

  /* With -Wunused, we should also warn if the left-hand operand does have
 side-effects, but computes a value which is not used.  For example, in
 `foo() + bar(), baz()' the result of the `+' operator is not used,
 so we should issue a warning.  */
  else if (warn_unused_value)
warn_if_unused_value (expr1, loc);

Unfortunately, we don't get into warn_if_unused_value because the condition of
previous branch is true. That's why there is no warning about the result of
comparison.

P.S. I know, that it all might be obvious for most of you, but I'm just trying
to get acquainted with GCC sources and (hopefully) do something useful for the
project, while waiting for next stage1 (bugs being fixed during stage 4 are
obviously not for newcomers).


[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||lto, wrong-code
 CC||hubicka at gcc dot gnu.org,
   ||rguenth at gcc dot gnu.org
   Target Milestone|--- |5.0
Summary|wrong code by LTO on|[5 Regression] wrong code
   |x86_64-linux-gnu|by LTO on x86_64-linux-gnu

--- Comment #1 from Richard Biener rguenth at gcc dot gnu.org ---
I bet this is just the start of interesting bugs with optimization attributes
on all functions...


[Bug go/64595] cgo installed into wrong directory

2015-01-20 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595

--- Comment #13 from rguenther at suse dot de rguenther at suse dot de ---
On Mon, 19 Jan 2015, ian at airs dot com wrote:

 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595
 
 --- Comment #7 from Ian Lance Taylor ian at airs dot com ---
 That failure is not related to the new gotools.  I expect it would happen with
 any Go program.  Go requires that there be enough debug info to do a stack
 backtrace with file/line information.  It uses the libbacktrace library, but
 that library doesn't understand separate debuginfo sections.
 
 I can fix this specific problem so that the program is more likely to run, but
 in general Go code expects to be able to get that backtrace and most real Go
 programs will fail without it.
 
 I guess I or somebody needs to fix libbacktrace to understand separate
 debuginfo objects.

Note that then gccgo should automatically enable -g, no?  Because
the only debuginfo present in a.out when compiling with gccgo is
that of the crt?.o files.  (yes, libgo is also stripped).


[Bug go/64595] cgo installed into wrong directory

2015-01-20 Thread rguenther at suse dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595

--- Comment #14 from rguenther at suse dot de rguenther at suse dot de ---
On Tue, 20 Jan 2015, ian at airs dot com wrote:

 https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595
 
 --- Comment #12 from Ian Lance Taylor ian at airs dot com ---
 It's not libbacktrace that is crashing the app, it's libgo.
 
 And, yes, probably libgo should not crash the app either.  But it's also true
 that many Go programs simply won't work correctly if file/line information is
 not available.

Why?  I can't think of any good reason to require file/line information
for backtraces in a regular program.


[Bug sanitizer/64435] [5 Regression] Bootstrap failure in libsanitizer on AArch64 with Linux kernel = 3.15

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64435

--- Comment #22 from Jakub Jelinek jakub at gcc dot gnu.org ---
Or perhaps we could change SizeClassAllocator64 so that on some architectures
it could use variable bounds.  The fact that they are template parameters makes
this harder, but perhaps we could say that if some template
parameters are zero then some variable is used instead.
Use kSpaceBeg ? kSpaceBeg : kSpaceBegVar instead of kSpaceBeg and
kSpaceSize ? kSpaceSize : kSpaceSizeVar instead of kSpace (perhaps put into
some
method).  For architectures where there is no such big variability of address
space sizes it could stay constant, while for aarch64 we could decide during
asan initialization, after finding out how large address space we have.
So for say the 39-bit VA we could use 0x20 to 0x3f (i.e. 128GB
for the allocator), which is not possible for 42-bit VA, because that is shadow
gap and high shadow.  And for 42-bit VA we could use say 0x100 to
0x2ff (i.e. 2TB).


[Bug target/63408] [4.8/4.9/5 regression] GCC emits incorrect fixed-fp conversion instruction on Cortex-M4 target

2015-01-20 Thread ramana at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63408

Ramana Radhakrishnan ramana at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |ramana at gcc dot 
gnu.org

--- Comment #6 from Ramana Radhakrishnan ramana at gcc dot gnu.org ---
Mine.


[Bug libgcc/64677] incorrect result with complex division?

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64677

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

  Component|c++ |libgcc

--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org ---
libgcc implements complex division.  I'm quite sure it doesn't get 0.5ulp
precision (nor non-default rounding modes) correctly.


[Bug bootstrap/64676] [5 Regression] SEGV in tree-ssa-structalias.c solve_constraint

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64676

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Blocks||64081
 Resolution|--- |FIXED
Summary|[5.0 Regression] SEGV in|[5 Regression] SEGV in
   |tree-ssa-structalias.c  |tree-ssa-structalias.c
   |solve_constraint|solve_constraint

--- Comment #7 from Richard Biener rguenth at gcc dot gnu.org ---
Fixed by reversion.


[Bug rtl-optimization/64081] [5 Regression] r217827 prevents RTL loop unroll

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64081
Bug 64081 depends on bug 64676, which changed state.

Bug 64676 Summary: [5 Regression] SEGV in tree-ssa-structalias.c 
solve_constraint
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64676

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED


[Bug rtl-optimization/64682] [5 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64682

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||wrong-code
 Target||x86_64-*-*
   Priority|P3  |P1
  Component|tree-optimization   |rtl-optimization


[Bug inline-asm/64681] gcc assign wrong register for arm inline assembly

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64681

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |INVALID

--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org ---
.


[Bug ipa/63576] [5 Regression] ICE : in ipa_merge_profiles, at ipa-utils.c:540 during Firefox LTO/PGO build

2015-01-20 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63576

--- Comment #11 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
And if I try the obvious fix:

637   else if (e2  e2-speculative)

I hit the assert in ipa-inline.c later on:

lto1: internal compiler error: in edge_badness, at ipa-inline.c:912
0x100bf73 edge_badness
../../gcc/gcc/ipa-inline.c:912
0x100f005 update_edge_key
../../gcc/gcc/ipa-inline.c:1038
0x100f005 inline_small_functions
../../gcc/gcc/ipa-inline.c:1608
0x10117ba ipa_inline
../../gcc/gcc/ipa-inline.c:2179
0x10117ba execute
../../gcc/gcc/ipa-inline.c:2551
Please submit a full bug report,
with preprocessed source if appropriate.


[Bug inline-asm/64681] gcc assign wrong register for arm inline assembly

2015-01-20 Thread sch...@linux-m68k.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64681

Andreas Schwab sch...@linux-m68k.org changed:

   What|Removed |Added

   Severity|blocker |normal

--- Comment #1 from Andreas Schwab sch...@linux-m68k.org ---
You need to format the operand as %P0.


[Bug debug/63741] lm32 ICE in dwarf2out_frame_debug_expr, at dwarf2cfi.c:1677

2015-01-20 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63741

--- Comment #5 from Uroš Bizjak ubizjak at gmail dot com ---
(In reply to Uroš Bizjak from comment #4)

 is not the correct way to set /f flags to all insn of the generated sequence.

Please see how mips/mips.c annotates expanded sequences using
mips_set_frame_expr, especially stack pointer adjustment description in mips.c,
around line 11620.

[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

--- Comment #5 from Richard Biener rguenth at gcc dot gnu.org ---
OpenACC bug - the LTO frontend doesn't seem to know about the OpenACC builtin
function codes.


[Bug libstdc++/63776] [C++11] Regex collate matching not working

2015-01-20 Thread gnu-org at bignm dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63776

--- Comment #6 from Tom Straub gnu-org at bignm dot com ---
Hi Tim,

After banging my head against the wall looking for a solution to the C++11
UTF-8 support problems, I finally found what seems to be a great addition to my
project, which I think might be beneficial to GNU as well.

It is the UTF-8 CPP code. It is implemented as a header file, so there are no
linking issues involved. It seems to add all the functionality needed that
seems to be missing in GCC currently.

The project can be found at:  http://sourceforge.net/projects/utfcpp/

It would certainly make implementation of the codecvt stuff less painful.

Best, Tom


[Bug libstdc++/64650] std::experimental::bad_optional_access is not default constructible

2015-01-20 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64650

--- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org ---
Author: redi
Date: Tue Jan 20 11:51:03 2015
New Revision: 219889

URL: https://gcc.gnu.org/viewcvs?rev=219889root=gccview=rev
Log:
PR libstdc++/64650
* include/experimental/optional (bad_optional_access): Add default
constructor.
* testsuite/experimental/optional/requirements.cc: Test for default
constructor.

Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/experimental/optional
trunk/libstdc++-v3/testsuite/experimental/optional/requirements.cc


[Bug libstdc++/64658] std::atomic_init() undefined

2015-01-20 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64658

--- Comment #3 from Jonathan Wakely redi at gcc dot gnu.org ---
Author: redi
Date: Tue Jan 20 11:50:43 2015
New Revision: 219886

URL: https://gcc.gnu.org/viewcvs?rev=219886root=gccview=rev
Log:
PR libstdc++/64658
* include/std/atomic (atomic_init): Define.
* testsuite/29_atomics/atomic/64658.cc: New.

Added:
trunk/libstdc++-v3/testsuite/29_atomics/atomic/64658.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/include/std/atomic


[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

--- Comment #9 from vries at gcc dot gnu.org ---
I tried the example, and added -fopenmp. In lto1, I observed:
...
(gdb) p flag_openmp
$2 = 0
(gdb) p flag_openacc
$3 = 0
(gdb) p flag_tree_parallelize_loops
$4 = 1
(gdb) p flag_offload_abi 
$5 = OFFLOAD_ABI_UNSET
...

So, the enabler in this code in builtins.def is flag_tree_parallelize_loops,
not flag_openmp:
...
#define DEF_GOMP_BUILTIN(ENUM, NAME, TYPE, ATTRS) \
  DEF_BUILTIN (ENUM, __builtin_ NAME, BUILT_IN_NORMAL, TYPE, TYPE,\
   false, true, true, ATTRS, false, \
   (flag_openmp || flag_tree_parallelize_loops \
|| flag_offload_abi != OFFLOAD_ABI_UNSET))
...

I verified this by adding -ftree-parallelize-loops=0, and found that indeed
support for omp builtins was dropped in lto1:
...
(gdb) p builtin_info.decl[BUILT_IN_OMP_GET_THREAD_NUM]
$3 = (tree_node *) 0x0
...

Perhaps for consistency, we should mark both fopenmp and fopenacc as LTO
options?


[Bug go/64595] cgo installed into wrong directory

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #15 from Jakub Jelinek jakub at gcc dot gnu.org ---
So do you only need .debug_line and some minimal .debug_info, or would
.debug_line be enough?
gdb understands e.g. .gnu_debuginfo format
http://fedoraproject.org/wiki/Features/MiniDebugInfo
which is essentially .xz compressed ELF in a section, containing just
.symtab/.strtab/.shstrtab.  The wiki page says optionally .debug_line, but I
haven't found how that is produced.  So perhaps you should produce something
like that for go binaries?  Or just hack up dwarf2out.c, so in addition to
.debug_* sections it emits .gnu.go.debug_{line,abbrev,info} where the info
would only contain the absolute minimum of DWARF DIEs and attributes needed to
locate debug_line and find the ranges.  Not being able to strip large debuginfo
sounds like a serious problem to me.


[Bug c/55646] Array of data as argument

2015-01-20 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55646

Marek Polacek mpolacek at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||mpolacek at gcc dot gnu.org
 Resolution|--- |INVALID

--- Comment #2 from Marek Polacek mpolacek at gcc dot gnu.org ---
Doesn't look like a bug.


[Bug boehm-gc/64042] FAIL: boehm-gc.c/gctest.c -O2 execution test

2015-01-20 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64042

--- Comment #11 from vries at gcc dot gnu.org ---
Reported upstream here:
https://lists.opendylan.org/pipermail/bdwgc/2015-January/006071.html


[Bug tree-optimization/64410] gcc 25% slower than clang 3.5 for adding complex numbers

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64410

--- Comment #15 from Richard Biener rguenth at gcc dot gnu.org ---
Author: rguenth
Date: Tue Jan 20 11:06:13 2015
New Revision: 219885

URL: https://gcc.gnu.org/viewcvs?rev=219885root=gccview=rev
Log:
2015-01-20  Richard Biener  rguent...@suse.de

PR tree-optimization/64410
* g++.dg/vect/pr64410.cc: Require vect_double.

Modified:
trunk/gcc/testsuite/ChangeLog
trunk/gcc/testsuite/g++.dg/vect/pr64410.cc


[Bug c++/63658] [4.9 Regression] Using class reference as template parameter causes compilation to fail

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63658

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Paolo Carlini paolo.carlini at oracle dot com ---
Fixed then.


[Bug c++/64500] push_to_top_level() shows up high during Chromium build.

2015-01-20 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64500

--- Comment #1 from Martin Liška marxin at gcc dot gnu.org ---
Created attachment 34498
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34498action=edit
perf report for the testcase

[Bug libstdc++/63776] [C++11] Regex collate matching not working

2015-01-20 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63776

--- Comment #7 from Jonathan Wakely redi at gcc dot gnu.org ---
The codecvt stuff was implemented last week. Probably incorrectly, because I
didn't really know what I was doing.


[Bug rtl-optimization/64341] [5 regression] ICE in expand_expr_addr_expr_1, at expr.c:7718

2015-01-20 Thread ro at CeBiTec dot Uni-Bielefeld.DE
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64341

--- Comment #2 from ro at CeBiTec dot Uni-Bielefeld.DE ro at CeBiTec dot 
Uni-Bielefeld.DE ---
 --- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org ---
 Can't reproduce this with a cross to sparc64-linux with -m32, can you still
 reproduce it?

No, they went away between 20141212 and 20141219.

Rainer


[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

vries at gcc dot gnu.org changed:

   What|Removed |Added

 CC||vries at gcc dot gnu.org

--- Comment #6 from vries at gcc dot gnu.org ---
(In reply to Richard Biener from comment #5)
 OpenACC bug - the LTO frontend doesn't seem to know about the OpenACC builtin
 function codes.

I wonder if https://gcc.gnu.org/ml/gcc-patches/2014-11/msg00085.html helps
here.


[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

--- Comment #7 from Jakub Jelinek jakub at gcc dot gnu.org ---
Well, -fopenmp isn't marked LTO, so if not anything else, for consistency
-fopenacc should be handled similarly as -fopenmp.


[Bug c/63751] ICE in tree_to_uhwi, at tree.h:3668

2015-01-20 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63751

Marek Polacek mpolacek at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |mpolacek at gcc dot 
gnu.org

--- Comment #3 from Marek Polacek mpolacek at gcc dot gnu.org ---
I'm testing the backport.


[Bug lto/64685] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64685

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org ---
Duplicate.

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


[Bug target/64600] [5 regression] arm-rtems ICE on valid code (-mcpu=xscale)

2015-01-20 Thread ktkachov at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64600

ktkachov at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |ktkachov at gcc dot 
gnu.org

--- Comment #12 from ktkachov at gcc dot gnu.org ---
I have a fix in the works.


[Bug c++/64383] missed warning for unused variable.

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64383

--- Comment #5 from Jakub Jelinek jakub at gcc dot gnu.org ---
On the #c2 testcase, gcc trunk now warns, starting with r217957.


[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2015-01-20
 Ever confirmed|0   |1

--- Comment #2 from Richard Biener rguenth at gcc dot gnu.org ---
Setting value number of .MEM_7 to .MEM_7 (changed)
Value numbering .MEM_8 stmt = fn2 ();
Setting value number of .MEM_8 to .MEM_8 (changed)
Value numbering _4 stmt = _4 = a;
Setting value number of _4 to -1 (changed)
Value numbering _5 stmt = _5 = _4  1;
Match-and-simplified _4  1 to 1
RHS _4  1 simplified to 1 has constants 1
Setting value number of _5 to 1 (changed)

so fn2 () is said to not clobber 'a'.  Must be IPA references fault:

all module statics: a
Function name:fn2/3:
  static not read: all module statics
  static not written: all module statics

Function name:fn1/0:
  static not read: all module statics
  static not written: all module statics

that's wrong for both fn1 and fn2.  WPA does

Promotable global:a (uid=3959)

Function name:fn2/3:
  locals read:
  locals written:
Function name:fn1/0:
  locals read:
  locals written:

And compile-time doesn't have .static-var dumps at all?!  Ah, WPA stage
is supposed to generate summaries?  But doesn't input nodes?


[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |rguenth at gcc dot 
gnu.org

--- Comment #3 from Richard Biener rguenth at gcc dot gnu.org ---
Ah - you do

   if (!is_proper_for_analysis (var))
  continue;
bitmap_set_bit (ignore_module_statics, DECL_UID (var));

but is_proper_for_analysis adds to all_module_statics (that's quite a broken
thing for this kind of function...).

I have a patch.


[Bug c/64687] New: powerpc: GCC 5.0 (trunk@219851) build failure for powerpc with hardware decimal floating point disabled

2015-01-20 Thread azanella at linux dot vnet.ibm.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64687

Bug ID: 64687
   Summary: powerpc: GCC 5.0 (trunk@219851) build failure for
powerpc with hardware decimal floating point disabled
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c
  Assignee: unassigned at gcc dot gnu.org
  Reporter: azanella at linux dot vnet.ibm.com

Created attachment 34499
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34499action=edit
Testcase to trigger the issue

GCC 5.0 (trunk@219851) trigger the following issue when building a C file with
Decimal types for powerpc64 with hardware decimal floating point disabled
(-DSHARED -O3 -fpic -ggdb3 -mno-hard-dfp):

../libdfp-git/sysdeps/dpd/decode.c: In function ‘__decoded32’:
../libdfp-git/sysdeps/dpd/decode.c:77:1: error: insn does not satisfy its
constraints:
 }
 ^
(insn 278 13 279 2 (set (mem/c:SD (plus:DI (reg/f:DI 1 1)
(const_int -16 [0xfff0])) [18 %sfp+48 S4 A32])
(reg:SD 33 1)) ../libdfp-git/sysdeps/dpd/decode.c:40 492
{movsd_hardfloat}
 (nil))
../libdfp-git/sysdeps/dpd/decode.c:77:1: internal compiler error: in
extract_constrain_insn, at recog.c:2246
0x105f6b13 _fatal_insn(char const*, rtx_def const*, char const*, int, char
const*)
../../gcc-git/gcc/rtl-error.c:110
0x105f6b6b _fatal_insn_not_found(rtx_def const*, char const*, int, char const*)
../../gcc-git/gcc/rtl-error.c:121
0x105bf81b extract_constrain_insn(rtx_insn*)
../../gcc-git/gcc/recog.c:2246
0x1059c8d7 reload_cse_simplify_operands
../../gcc-git/gcc/postreload.c:430
0x1059dd33 reload_cse_simplify
../../gcc-git/gcc/postreload.c:207
0x1059dd33 reload_cse_regs_1
../../gcc-git/gcc/postreload.c:246
0x1059f9d7 reload_cse_regs
../../gcc-git/gcc/postreload.c:94
0x1059f9d7 execute
../../gcc-git/gcc/postreload.c:2367


Temporary files in attachments (decode.i and decode.s), to reproduce just
issue:

$ gcc decode.i -c -DSHARED -O3 -fpic -ggdb3 -mno-hard-dfp

[Bug rtl-optimization/64341] [5 regression] ICE in expand_expr_addr_expr_1, at expr.c:7718

2015-01-20 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64341

Rainer Orth ro at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |FIXED

--- Comment #3 from Rainer Orth ro at gcc dot gnu.org ---
No longer present.


[Bug libstdc++/62258] uncaught_exception() equals to `true' after rethrow_exception()

2015-01-20 Thread p.bartosiewi at partner dot samsung.com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62258

Piotr Bartosiewicz p.bartosiewi at partner dot samsung.com changed:

   What|Removed |Added

 CC||p.bartosiewi at partner dot 
samsun
   ||g.com

--- Comment #6 from Piotr Bartosiewicz p.bartosiewi at partner dot 
samsung.com ---
I can also confirm this bug (I have a test case with std::async and future, but
it internally uses std::rethrow_exception).

Known to work: gcc 4.6.3, 4.7.2, 4.8.1
Known to fail: gcc 4.8.2, 4.9.2, clang 3.5.0
So this is a regression.


[Bug target/64149] -mno-lra bitrots, suggest to remove for GCC 5

2015-01-20 Thread renlin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64149

--- Comment #7 from renlin at gcc dot gnu.org ---
Author: renlin
Date: Tue Jan 20 10:26:18 2015
New Revision: 219884

URL: https://gcc.gnu.org/viewcvs?rev=219884root=gccview=rev
Log:
[ARM] PR 64149: Remove -mlra/-mno-lra option for ARM.

gcc/
2015-01-20  Matthew Wahab  matthew.wa...@arm.com

PR target/64149
* config/arm/arm.option: Remove lra option and arm_lra_flag variable.
* config/arm/arm.h (MODE_BASE_REG_CLASS): Remove use of arm_lra_flag,
replace the conditional with it's true branch.
* config/arm/arm.c (TARGET_LRA_P): Set to hook_bool_void_true.
(arm_lra_p): Remove.

gcc/testsuite/
2015-01-20  matthewhew Wahab  matthew.wa...@arm.com

PR target/64149
* gcc.target/arm/armthumb1-far-jump-3.c: Remove.


Removed:
trunk/gcc/testsuite/gcc.target/arm/thumb1-far-jump-3.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/config/arm/arm.c
trunk/gcc/config/arm/arm.h
trunk/gcc/config/arm/arm.opt
trunk/gcc/testsuite/ChangeLog


[Bug libstdc++/63776] [C++11] Regex collate matching not working

2015-01-20 Thread gnu-org at bignm dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63776

--- Comment #5 from Tom Straub gnu-org at bignm dot com ---
Created attachment 34497
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34497action=edit
Test Program for UTF-8 CPP library


[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

--- Comment #8 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 I wonder if https://gcc.gnu.org/ml/gcc-patches/2014-11/msg00085.html
 helps here.

AFAICT it does:

=== libgomp Summary ===

# of expected passes12418
# of unsupported tests588

Thanks for the pointer.


[Bug target/64688] New: internal compiler error: Max. number of generated reload insns per insn is achieved (90)

2015-01-20 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64688

Bug ID: 64688
   Summary: internal compiler error: Max. number of generated
reload insns per insn is achieved (90)
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: target
  Assignee: unassigned at gcc dot gnu.org
  Reporter: trippels at gcc dot gnu.org
  Host: x86_64-unknown-linux-gnu
Target: x86_64-unknown-linux-gnu
 Build: x86_64-unknown-linux-gnu

Running the Boost testsuite on gcc20 gives:

trippels@gcc20 more % cat performance.ii
template typename T struct A { typedef typename T::next type; };
template typename struct B;
template typename T struct N : T {};
template int N struct C {
  static const int value = N;
  typedef CN + 1 next;
};
template typename Sequence
struct R : Ntypename Btypename Sequence::tag::template PSequence {};
template typename Base struct O : Base {
  typedef typename Atypename Base::size::type size;
};
template typename = int struct D {
  typedef int tag;
  typedef C0 size;
};
template  struct Bint {
  template typename struct P : OOOD::size {};
};
template typename struct F;
template typename struct G;
template typename, typename, int struct H;
template typename Element, typename Layout struct HElement, Layout, 3 {};
template int, typename E, typename L, int N unsigned char at_c(HE, L, N) {}
template typename class I;
template typename class J;
template typename class K;
template typename, typename struct Q;
struct L {
  typedef Qunsigned char, FOOOD *type;
};
template typename XIterator struct M { typedef KJIXIterator view_t; };
template typename, typename
struct Q : Hunsigned, Fint, ROOOD::value {};
template typename Iterator struct GIIterator { typedef Iterator type; };
template typename class J {
public:
  typedef GIQunsigned, int *::type x_iterator;
};
template typename class K {
public:
  Jint::x_iterator row_begin(int);
};
template typename Op void measure_time(Op p1) { p1(); }
template typename, typename struct fill_nongil_t;
template typename T, typename P
struct fill_nongil_tKJIQT, FOOOD *, P {
  typedef KJIQT, FOOOD * View;
  View _v;
  P _p;
  fill_nongil_t(View, P);
  void operator()() {
T *first = (T *)_v.row_begin(0);
T last;
while (first != last) {
  first[0] = first[1] = at_c1(_p);
  first[2] = at_c2(_p);
  first += 3;
}
  }
};
template typename, typename void test_fill(int) {
  ML::type::view_t __trans_tmp_1;
  measure_time(fill_nongil_tKJIQunsigned char, FOOOD *,
 Qunsigned char, FOOOD(
  __trans_tmp_1, Qunsigned char, FOOOD()));
}
void performance_testtest_method() { test_fillKint, Qunsigned, int(0); }

trippels@gcc20 more % g++ -c -O3 -std=c++11 -march=westmere performance.ii
performance.ii: In function ‘void performance_testtest_method()’:
performance.ii:68:78: internal compiler error: Max. number of generated reload
insns per insn is achieved (90)

 void performance_testtest_method() { test_fillKint, Qunsigned, int(0); }
  ^
0xb8eb70 lra_constraints(bool)
../../gcc/gcc/lra-constraints.c:4335
0xb7b3a1 lra(_IO_FILE*)
../../gcc/gcc/lra.c:2292
0xb39809 do_reload
../../gcc/gcc/ira.c:5418
0xb39809 execute
../../gcc/gcc/ira.c:5589
Please submit a full bug report,
with preprocessed source if appropriate.
Please include the complete backtrace with any bug re

[Bug target/64688] [5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64688

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

   Priority|P3  |P1
 Status|UNCONFIRMED |NEW
   Last reconfirmed||2015-01-20
 CC||jakub at gcc dot gnu.org,
   ||vmakarov at gcc dot gnu.org
   Target Milestone|--- |5.0
Summary|internal compiler error:|[5 Regression] internal
   |Max. number of generated|compiler error: Max. number
   |reload insns per insn is|of generated reload insns
   |achieved (90)   |per insn is achieved (90)
 Ever confirmed|0   |1

--- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org ---
Started with r210824.


[Bug tree-optimization/64410] gcc 25% slower than clang 3.5 for adding complex numbers

2015-01-20 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64410

Rainer Orth ro at gcc dot gnu.org changed:

   What|Removed |Added

 CC||ro at gcc dot gnu.org

--- Comment #13 from Rainer Orth ro at gcc dot gnu.org ---
The new testcase FAILs on Solaris/SPARC (both 32 and 64-bit):

FAIL: g++.dg/vect/pr64410.cc  -std=c++11  scan-tree-dump vect vectorized 1
loops in function
FAIL: g++.dg/vect/pr64410.cc  -std=c++14  scan-tree-dump vect vectorized 1
loops in function
FAIL: g++.dg/vect/pr64410.cc  -std=c++98  scan-tree-dump vect vectorized 1
loops in function

I'm attaching the .vect dump.

  Rainer


[Bug tree-optimization/64410] gcc 25% slower than clang 3.5 for adding complex numbers

2015-01-20 Thread ro at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64410

--- Comment #14 from Rainer Orth ro at gcc dot gnu.org ---
Created attachment 34496
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34496action=edit
sparc-sun-solaris2.11 .vect dump


[Bug inline-asm/64681] gcc assign wrong register for arm inline assembly

2015-01-20 Thread zhongwei.yao at arm dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64681

zhongwei.yao zhongwei.yao at arm dot com changed:

   What|Removed |Added

 Status|RESOLVED|UNCONFIRMED
 Resolution|INVALID |---

--- Comment #3 from zhongwei.yao zhongwei.yao at arm dot com ---
(In reply to Andreas Schwab from comment #1)
 You need to format the operand as %P0.

Hi, Andreas, Thanks for pointing out this. Is this syntax documented in GCC
doc?


[Bug ipa/64686] New: [5 Regression] ICE: in edge_badness, at ipa-inline.c:912 during Firefox LTO build with enabled checking

2015-01-20 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64686

Bug ID: 64686
   Summary: [5 Regression] ICE: in edge_badness, at
ipa-inline.c:912 during Firefox LTO build with enabled
checking
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ipa
  Assignee: hubicka at gcc dot gnu.org
  Reporter: marxin at gcc dot gnu.org
CC: markus at trippelsdorf dot net

gcc -v:
gcc version 5.0.0 20150120 (experimental) (GCC) 

BT:
lto1: internal compiler error: in edge_badness, at ipa-inline.c:912
0xe48e21 edge_badness
../../gcc/ipa-inline.c:912
0xe4ce25 update_edge_key
../../gcc/ipa-inline.c:1038
0xe4ce25 inline_small_functions
../../gcc/ipa-inline.c:1608
0xe4ec95 ipa_inline
../../gcc/ipa-inline.c:2179
0xe4ec95 execute
../../gcc/ipa-inline.c:2551

GDB:
912gcc_checking_assert (edge_time = callee_info-time);
(gdb) p edge_time
$1 = 2068
(gdb) p callee_info-time
$2 = 2032
# It's a recursive function
(gdb) p edge-caller == edge-callee
$9 = true


(gdb) call callee-dump(stderr)
_ZN23nsScriptSecurityManager26AddSitesToFileURIWhitelistERK9nsCString/3808049
(AddSitesToFileURIWhitelist) @0x7fff97344498
  Type: function definition analyzed
  Visibility: prevailing_def_ironly
  References: _ZN12nsCharTraitsIcE12sEmptyBufferE/58819
(read)_ZN23nsScriptSecurityManager10sIOServiceE/3807900
(read)_ZN23nsScriptSecurityManager10sIOServiceE/3807900
(read)_ZN17nsIConsoleService11COMTypeInfoIS_vE4kIIDE/88287 (addr)
  Referring: 
  Read from file:
/home/marxin/Programming/gecko-dev/obj-x86_64-unknown-linux-gnu/toolkit/library/../../caps/Unified_cpp_caps0.o
  Availability: local
  First run: 0
  Function flags: local
  Called by: _ZN23nsScriptSecurityManager25ScriptSecurityPrefChangedEv/3808048
(5.05 per call)
_ZN23nsScriptSecurityManager26AddSitesToFileURIWhitelistERK9nsCString/3808049
(1.01 per call)
_ZN23nsScriptSecurityManager26AddSitesToFileURIWhitelistERK9nsCString/3808049
(1.01 per call) 
  Calls: _Z8SkipPastI12IsWhitespaceEjRK9nsCStringj/3809750 (10.11 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (9.10 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (9.10 per call)
_ZN18nsAString_internal8FinalizeEv/58869 (0.64 per call)
_ZN18nsAString_internal8FinalizeEv/58869 (0.64 per call)
_ZN18nsAString_internal8FinalizeEv/58869 (0.64 per call)
_ZN18nsAString_internal6AssignERK16nsSubstringTuple/58883 (0.64 per call)
_Z18AppendASCIItoUTF16RK19nsACString_internalR18nsAString_internal/58501 (0.64
per call)
_ZN13nsCOMPtr_base25assign_from_gs_contractidE24nsGetServiceByContractIDRK4nsID/295933
(0.91 per call)
_ZN13nsTArray_ImplI8nsCOMPtrI6nsIURIE27nsTArrayInfallibleAllocatorE13AppendElementIRS2_EEPS2_OT_/3809758
(8.19 per call) __builtin_expect/17283 (9.10 per call)
_Z9NS_NewURIPP6nsIURIRK19nsACString_internalPKcS0_P12nsIIOService/181475 (9.10
per call) _ZN13nsCOMPtr_base16begin_assignmentEv/295936 (9.10 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN23nsScriptSecurityManager26AddSitesToFileURIWhitelistERK9nsCString/3808049
(1.01 per call) _ZN19nsACString_internal6AssignERK17nsCSubstringTuple/58939
(1.01 per call) _ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (1.01 per call)
_ZN23nsScriptSecurityManager26AddSitesToFileURIWhitelistERK9nsCString/3808049
(1.01 per call) _ZN19nsACString_internal6AssignERK17nsCSubstringTuple/58939
(1.01 per call) __builtin_expect/17283 (10.11 per call)
_ZN19nsACString_internal8FinalizeEv/58925 (10.11 per call)
_ZN19nsACString_internal6AssignERKS_/58937 (10.11 per call)
_ZN21nsDependentCSubstring6RebindERK19nsACString_internaljj/58008 (10.11 per
call) _Z9SkipUntilI12IsWhitespaceEjRK9nsCStringj/3809751 (10.11 per call)
_Z8SkipPastI12IsWhitespaceEjRK9nsCStringj/3809750 (1.00 per call) 
   Polymorphic indirect call of type struct nsISupports token:2(6.35 per call) 
Outer type (dynamic):struct nsISupports (or a derived type) (maybe in
construction) offset 0
   Polymorphic indirect call of type struct nsISupports token:2(0.64 per call) 
Outer type (dynamic):struct nsISupports (or a derived type) (maybe in
construction) offset 0
   Polymorphic indirect call of type struct nsIConsoleService token:4(0.64 per
call) 
Outer type (dynamic):struct nsIConsoleService (or a derived type) (maybe in
construction) offset 0
   Polymorphic indirect call of type struct nsIIOService token:18(10.11 per
call) 
Outer type (dynamic):struct nsIIOService (or a derived type) (maybe in
construction) offset 0

Thanks,
Martin


[Bug ipa/64686] [5 Regression] ICE: in edge_badness, at ipa-inline.c:912 during Firefox LTO build with enabled checking

2015-01-20 Thread marxin at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64686

Martin Liška marxin at gcc dot gnu.org changed:

   What|Removed |Added

   Priority|P3  |P1
   Last reconfirmed||2015-1-20
 CC||marxin at gcc dot gnu.org

[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

--- Comment #4 from Richard Biener rguenth at gcc dot gnu.org ---
*** Bug 64685 has been marked as a duplicate of this bug. ***


[Bug rtl-optimization/64682] [5 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64682

--- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org ---
Testcase usable for the testsuite:
int a, b = 1;

__attribute__((noinline, noclone)) void
foo (int x)
{
  if (x != 5)
__builtin_abort ();
}

int
main ()
{
  int i;
  for (i = 0; i  56; i++)
for (; a; a--)
  ;
  int *c = b;
  if (*c)
*c = 1 % (unsigned int) *c | 5;

  foo (b);

  return 0;
}

This indeed is a combiner bug.
Trying 28, 29 - 30:
Failed to match this instruction:
(parallel [
(set (mem/c:SI (symbol_ref:DI (b) [flags 0x2]  var_decl
0x7f3aa8245cf0 b) [1 b+0 S4 A32])
(const_int 5 [0x5]))
(set (reg:SI 90 [ D.1884 ])
(const_int 5 [0x5]))
])
Failed to match this instruction:
(parallel [
(set (mem/c:SI (symbol_ref:DI (b) [flags 0x2]  var_decl
0x7f3aa8245cf0 b) [1 b+0 S4 A32])
(const_int 5 [0x5]))
(set (reg:SI 90 [ D.1884 ])
(const_int 5 [0x5]))
])
Successfully matched this instruction:
(set (reg:SI 90 [ D.1884 ])
(const_int 5 [0x5]))
Successfully matched this instruction:
(set (mem/c:SI (symbol_ref:DI (b) [flags 0x2]  var_decl 0x7f3aa8245cf0 b)
[1 b+0 S4 A32])
(const_int 5 [0x5]))
allowing combination of insns 28, 29 and 30
original costs 0 + 4 + 4 = 0
replacement costs 4 + 4 = 8
deferring deletion of insn with uid = 28.
deferring deletion of insn with uid = 27.
deferring deletion of insn with uid = 29.
modifying insn i330: [`b']=0x5
deferring rescan insn with uid = 30.

In the end it kept there only the b = 5; store, but not setting of pseudo 90 to
the same value, but pseudo 90 is used in the next basic block (to initialize
first argument to the function call).  Segher, can you please have a look?


[Bug rtl-optimization/64682] [5 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64682

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||law at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org ---
Ah, so the thing is probably that:
(insn 28 27 29 7 (parallel [
(set (reg:SI 102)
(udiv:SI (reg:SI 100)
(reg:SI 90 [ D.1884 ])))
(set (reg:SI 101 [ D.1886 ])
(umod:SI (reg:SI 100)
(reg:SI 90 [ D.1884 ])))
(clobber (reg:CC 17 flags))
]) pr64682.c:21 351 {*udivmodsi4}
 (expr_list:REG_DEAD (reg:SI 100)
(expr_list:REG_DEAD (reg:SI 90 [ D.1884 ])
(expr_list:REG_UNUSED (reg:SI 102)
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil))
(insn 29 28 30 7 (parallel [
(set (reg:SI 90 [ D.1884 ])
(ior:SI (reg:SI 101 [ D.1886 ])
(const_int 5 [0x5])))
(clobber (reg:CC 17 flags))
]) pr64682.c:21 398 {*iorsi_1}
 (expr_list:REG_DEAD (reg:SI 101 [ D.1886 ])
(expr_list:REG_UNUSED (reg:CC 17 flags)
(nil
(insn 30 29 31 7 (set (mem/c:SI (symbol_ref:DI (b) [flags 0x2] var_decl
0x71867cf0 b) [1 b+0 S4 A32])
(reg:SI 90 [ D.1884 ])) pr64682.c:21 90 {*movsi_internal}
 (nil))
we combine these 3 into:
(note 28 27 29 7 NOTE_INSN_DELETED)
(insn 29 28 30 7 (set (reg:SI 90 [ D.1884 ])
(const_int 5 [0x5])) pr64682.c:21 90 {*movsi_internal}
 (nil))
(insn 30 29 31 7 (set (mem/c:SI (symbol_ref:DI (b) [flags 0x2] var_decl
0x71867cf0 b) [1 b+0 S4 A32])
(const_int 5 [0x5])) pr64682.c:21 90 {*movsi_internal}
 (nil))
and then try to distribute notes, and as there was a REG_DEAD note for pseudo
90 (correct IMHO) in insn 28, but insn 29 set it again to something else, when
we try to distribute the REG_DEAD note onto the new insn 29 (or 30), we delete
insn 29 as dead.  Giving up, not familiar enough with the dead note
distribution in the combiner.


[Bug lto/64685] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64685

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||lto, wrong-code
   Priority|P3  |P1
 CC||hubicka at gcc dot gnu.org,
   ||rguenth at gcc dot gnu.org
   Target Milestone|--- |5.0
Summary|wrong code by LTO on|[5 Regression] wrong code
   |x86_64-linux-gnu|by LTO on x86_64-linux-gnu

--- Comment #1 from Richard Biener rguenth at gcc dot gnu.org ---
Esp. mixing -O0 and -O1+ will have interesting effects for sure.  Also mixing
IL changing options like -fwrapv, -fstrict-overflow, etc.  We just check

  /* Don't inline a function with a higher optimization level than the
 caller.  FIXME: this is really just tip of iceberg of handling
 optimization attribute.  */
  else if (caller_tree != callee_tree)
{
  if (((opt_for_fn (e-caller-decl, optimize)
 opt_for_fn (callee-decl, optimize))
|| (opt_for_fn (e-caller-decl, optimize_size)
!= opt_for_fn (callee-decl, optimize_size)))
  /* gcc.dg/pr43564.c.  Look at forced inline even in -O0.  */
   !DECL_DISREGARD_INLINE_LIMITS (callee-decl))
{
  e-inline_failed = CIF_OPTIMIZATION_MISMATCH;
  inlinable = false;
}
}

but that's definitely not enough (unless I miss checks somewhere else but in
can_inline_edge_p).  Also it's not possible to inline -O1+ into a -O0
function (SSA coalescing).

And the !DECL_DISREGARD_INLINE_LIMITS is definitely bogus as well.


[Bug c/64639] missing warning by -Wunused-value in compound expressions

2015-01-20 Thread manu at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64639

Manuel López-Ibáñez manu at gcc dot gnu.org changed:

   What|Removed |Added

   Keywords||diagnostic
Summary|false negative of   |missing warning by
   |-Wunused-value  |-Wunused-value in compound
   ||expressions

--- Comment #6 from Manuel López-Ibáñez manu at gcc dot gnu.org ---
(In reply to Mikhail Maltsev from comment #5)
  gets somehow transformed into
  b = (a = 0B) != 0B;, 0;
 
 Probably folding works this way. Anyway, I think, I can explain how the

It would be interesting to know if the above is a faithful representation of
the AST representation or the pretty-printer is printing something weird. As
printed, the code does not look right. If it is a faithful representation, it
would be great to know where this folding occurs (and disable it).

 P.S. I know, that it all might be obvious for most of you, but I'm just
 trying to get acquainted with GCC sources and (hopefully) do something
 useful for the project, while waiting for next stage1 (bugs being fixed
 during stage 4 are obviously not for newcomers).

It wasn't obvious to me at all. I think it is extremely useful to provide a
deep analysis of PRs. A good analysis makes other devs more inclined to take a
bug and fix it. If you were only to do that, it would already be a great
contribution.

The logic in the second branch is wrong. This made me think of another testcase
where it is even more obvious that there is a missing warning:

int *a;
int b;
void g();
void f() {
  b = (g(), (a = 0) != 0, 0);
  b = ((g(), (a = 0) != 0), 0);
  b = (g(), ((a = 0) != 0, 0));
}

We should get a warning in all three lines, but we only get it in the last one.

[Bug c++/64383] missed warning for unused variable.

2015-01-20 Thread manu at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64383

Manuel López-Ibáñez manu at gcc dot gnu.org changed:

   What|Removed |Added

 CC||paolo.carlini at oracle dot com

--- Comment #4 from Manuel López-Ibáñez manu at gcc dot gnu.org ---
According to http://gcc.godbolt.org/ g++ 4.8 used to warn, so this could be a
regression. If we add a dummy foo() call to the dtor, so one could argue that
it could be doing something useful, it doesn't change anything for g++4.8, 4.9
or clang.

Is the dtor of Y actually called when the reference goes out of scope? That
sounds strange to me. Note that no warning is given by clang or g++4.8 when y
is not a reference.

[Bug c++/62241] C++14 generalized lambda capture doesn't work with uniform initialization syntax.

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62241

--- Comment #7 from Paolo Carlini paolo.carlini at oracle dot com ---
I'm adding a reduced testcase and closing the bug as fixed for 5.0.


[Bug c++/62241] C++14 generalized lambda capture doesn't work with uniform initialization syntax.

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62241

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

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

--- Comment #9 from Paolo Carlini paolo.carlini at oracle dot com ---
Done.


[Bug c++/62241] C++14 generalized lambda capture doesn't work with uniform initialization syntax.

2015-01-20 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62241

--- Comment #8 from paolo at gcc dot gnu.org paolo at gcc dot gnu.org ---
Author: paolo
Date: Tue Jan 20 11:58:43 2015
New Revision: 219890

URL: https://gcc.gnu.org/viewcvs?rev=219890root=gccview=rev
Log:
2015-01-20  Paolo Carlini  paolo.carl...@oracle.com

PR c++/62241
* g++.dg/cpp1y/lambda-init12.C: New.

Added:
trunk/gcc/testsuite/g++.dg/cpp1y/lambda-init12.C
Modified:
trunk/gcc/testsuite/ChangeLog


[Bug ipa/63576] [5 Regression] ICE : in ipa_merge_profiles, at ipa-utils.c:540 during Firefox LTO/PGO build

2015-01-20 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63576

--- Comment #12 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
Martin pointed out that the assertion gets also hit in a pure LTO Firefox
build.
See PR64686.

When I comment out that assertion, Firefox LTO/PGO now builds fine with your
patch and the trivial fix from comment 11.


[Bug driver/64690] New: -freport-bug issue with comments

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64690

Bug ID: 64690
   Summary: -freport-bug issue with comments
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: driver
  Assignee: unassigned at gcc dot gnu.org
  Reporter: jakub at gcc dot gnu.org
CC: chefmax at gcc dot gnu.org

As -freport-bug dumps also the error output into the file as /* ... */
comment, there is a problem if that text includes /* or */ character sequences.
E.g. take PR64688 testcase, add /* */  before last line, so it reads:
/* */ void performance_testtest_method() { test_fillKint, Qunsigned,
int(0); }

./xg++ -B ./ -S -O3 -march=westmere pr64688.C -std=c++11 -freport-bug
gives err file that contains
/* ...
 /* */ void performance_testtest_method() { test_fillKint, Qunsigned,
int(0); }
...
*/

Perhaps /* and */ in the output should be replaced by something that won't be
parsed as comment beginning or end, like //^H* and **^H/ ? ^H meaning literal
backspace (\x08) char, so that at least when you cat it to terminal you won't
notice the difference.


[Bug tree-optimization/64689] tree-vectorize generates wrong code with inlined function - minimum working example included

2015-01-20 Thread trippels at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64689

Markus Trippelsdorf trippels at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||trippels at gcc dot gnu.org
 Resolution|--- |INVALID

--- Comment #1 from Markus Trippelsdorf trippels at gcc dot gnu.org ---
Compile with gcc-5 and use -fsanitize=undefined:

markus@x4 tmp % gcc -fsanitize=undefined  test.c -o test -O3 -std=c99 -pedantic
-Wall -Wextra -fwrapv -fno-strict-aliasing
markus@x4 tmp % ./test
test.c:67:21: runtime error: shift exponent -4 is negative
test.c:68:21: runtime error: shift exponent -4 is negative


[Bug c++/64383] missed warning for unused variable.

2015-01-20 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64383

--- Comment #7 from paolo at gcc dot gnu.org paolo at gcc dot gnu.org ---
Author: paolo
Date: Tue Jan 20 14:19:32 2015
New Revision: 219896

URL: https://gcc.gnu.org/viewcvs?rev=219896root=gccview=rev
Log:
2015-01-20  Paolo Carlini  paolo.carl...@oracle.com

PR c++/64383
* g++.dg/warn/Wunused-var-23.C: New.

Added:
trunk/gcc/testsuite/g++.dg/warn/Wunused-var-23.C
Modified:
trunk/gcc/testsuite/ChangeLog


[Bug c/61553] __atomic_store with non-pointer arg ICE

2015-01-20 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61553

--- Comment #6 from Marek Polacek mpolacek at gcc dot gnu.org ---
Author: mpolacek
Date: Tue Jan 20 14:19:35 2015
New Revision: 219897

URL: https://gcc.gnu.org/viewcvs?rev=219897root=gccview=rev
Log:
Backport from mainline
2014-06-23  Marek Polacek  pola...@redhat.com

PR c/61553
* c-common.c (get_atomic_generic_size): Don't segfault if the
type doesn't have a size.

* c-c++-common/pr61553.c: New test.

Added:
branches/gcc-4_8-branch/gcc/testsuite/c-c++-common/pr61553.c
Modified:
branches/gcc-4_8-branch/gcc/c-family/ChangeLog
branches/gcc-4_8-branch/gcc/c-family/c-common.c
branches/gcc-4_8-branch/gcc/testsuite/ChangeLog


[Bug tree-optimization/64689] New: tree-vectorize generates wrong code with inlined function - minimum working example included

2015-01-20 Thread philipp.gschwandtner at uibk dot ac.at
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64689

Bug ID: 64689
   Summary: tree-vectorize generates wrong code with inlined
function - minimum working example included
   Product: gcc
   Version: 4.9.2
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: tree-optimization
  Assignee: unassigned at gcc dot gnu.org
  Reporter: philipp.gschwandtner at uibk dot ac.at

Created attachment 34500
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34500action=edit
minimum working example

The tree vectorizer in gcc 4.7-4.9 appears to generate semantically incorrect
code for the particular case clarified in the attached minimum working example.
gcc 4.6.3 does not show this issue. In gcc 4.7.3 only one of the checks fails,
in gcc 4.8.3 and 4.9.2 both of them fail (as these versions also seem to
recognize case A as vectorizable).

Testing was performed on an Intel Xeon E5-2699 v3 Haswell CPU running a
3.10.0-123.13.1.el7.x86_64 Linux kernel.

Compile with:

gcc test.c -o test -O3 -std=c99 -pedantic -Wall -Wextra -fwrapv
-fno-strict-aliasing

Expected output (equals gcc 4.6.3 output):

Checking case A:
EQUAL!
Checking case B:
EQUAL!

Actual output (for gcc 4.8.3 and 4.9.2):

Checking case A:
NOT EQUAL!
C1:
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
C2:
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 
Checking case B:
NOT EQUAL!
C1:
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
   -2 0i,-2 0i,-2 0i,-2 0i, 
C2:
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 
   -1 0i,-1 0i,-1 0i,-1 0i, 

Above output is produced when compiled with gcc 4.9.2 and 4.8.3. For gcc 4.7.3
the check for case A succeeds while the check for case B still fails.


[Bug c++/55004] [meta-bug] constexpr issues

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=55004
Bug 55004 depends on bug 59937, which changed state.

Bug 59937 Summary: [constexpr] bogus diagnostic used in its own initializer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59937

   What|Removed |Added

 Status|NEW |RESOLVED
 Resolution|--- |FIXED


[Bug c++/64383] missed warning for unused variable.

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64383

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC|paolo.carlini at oracle dot com|
 Resolution|--- |FIXED
   Target Milestone|--- |4.9.3

--- Comment #8 from Paolo Carlini paolo.carlini at oracle dot com ---
Done.


[Bug c/63751] ICE in tree_to_uhwi, at tree.h:3668

2015-01-20 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63751

Marek Polacek mpolacek at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #4 from Marek Polacek mpolacek at gcc dot gnu.org ---
Fixed in 4.9/4.8.


[Bug c++/59937] [constexpr] bogus diagnostic used in its own initializer

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59937

--- Comment #5 from Paolo Carlini paolo.carlini at oracle dot com ---
This is fixed for 5.0. I'm adding the testcases and closing the bug.


[Bug c++/59937] [constexpr] bogus diagnostic used in its own initializer

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59937

Paolo Carlini paolo.carlini at oracle dot com changed:

   What|Removed |Added

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

--- Comment #7 from Paolo Carlini paolo.carlini at oracle dot com ---
Done.


[Bug c++/59937] [constexpr] bogus diagnostic used in its own initializer

2015-01-20 Thread paolo at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59937

--- Comment #6 from paolo at gcc dot gnu.org paolo at gcc dot gnu.org ---
Author: paolo
Date: Tue Jan 20 13:39:10 2015
New Revision: 219894

URL: https://gcc.gnu.org/viewcvs?rev=219894root=gccview=rev
Log:
2015-01-20  Paolo Carlini  paolo.carl...@oracle.com

PR c++/59937
* g++.dg/cpp0x/constexpr-59937-1.C: New.
* g++.dg/cpp0x/constexpr-59937-2.C: Likewise.

Added:
trunk/gcc/testsuite/g++.dg/cpp0x/constexpr-59937-1.C
trunk/gcc/testsuite/g++.dg/cpp0x/constexpr-59937-2.C
Modified:
trunk/gcc/testsuite/ChangeLog


[Bug c++/64383] missed warning for unused variable.

2015-01-20 Thread paolo.carlini at oracle dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64383

--- Comment #6 from Paolo Carlini paolo.carlini at oracle dot com ---
Yes, this is already fixed by the patch for c++/63657. The testcases are
slightly different thus I'm going to add the reduced testcase before closing
the bug.


[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

--- Comment #5 from Richard Biener rguenth at gcc dot gnu.org ---
Author: rguenth
Date: Tue Jan 20 13:26:19 2015
New Revision: 219892

URL: https://gcc.gnu.org/viewcvs?rev=219892root=gccview=rev
Log:
2015-01-20  Richard Biener  rguent...@suse.de

PR ipa/64684
* ipa-reference.c (add_static_var): Inline ...
(analyze_function): ... here after splitting out from ...
(is_proper_for_analysis): ... this.

* gcc.dg/lto/pr64684_0.c: New testcase.
* gcc.dg/lto/pr64684_1.c: Likewise.
* gcc.dg/lto/pr64684_2.c: Likewise.
* gcc.dg/lto/pr64685_0.c: Likewise.
* gcc.dg/lto/pr64685_1.c: Likewise.

Added:
trunk/gcc/testsuite/gcc.dg/lto/pr64684_0.c
trunk/gcc/testsuite/gcc.dg/lto/pr64684_1.c
trunk/gcc/testsuite/gcc.dg/lto/pr64684_2.c
trunk/gcc/testsuite/gcc.dg/lto/pr64685_0.c
trunk/gcc/testsuite/gcc.dg/lto/pr64685_1.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/ipa-reference.c
trunk/gcc/testsuite/ChangeLog


[Bug lto/64684] [5 Regression] wrong code by LTO on x86_64-linux-gnu

2015-01-20 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64684

Richard Biener rguenth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Richard Biener rguenth at gcc dot gnu.org ---
Fixed.


[Bug c/61553] __atomic_store with non-pointer arg ICE

2015-01-20 Thread mpolacek at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61553

--- Comment #5 from Marek Polacek mpolacek at gcc dot gnu.org ---
Author: mpolacek
Date: Tue Jan 20 14:17:51 2015
New Revision: 219895

URL: https://gcc.gnu.org/viewcvs?rev=219895root=gccview=rev
Log:
Backport from mainline
2014-06-23  Marek Polacek  pola...@redhat.com

PR c/61553
* c-common.c (get_atomic_generic_size): Don't segfault if the
type doesn't have a size.

* c-c++-common/pr61553.c: New test.

Added:
branches/gcc-4_9-branch/gcc/testsuite/c-c++-common/pr61553.c
Modified:
branches/gcc-4_9-branch/gcc/c-family/ChangeLog
branches/gcc-4_9-branch/gcc/c-family/c-common.c
branches/gcc-4_9-branch/gcc/testsuite/ChangeLog


[Bug other/63979] [openacc] undefined reference to main._omp_fn.x

2015-01-20 Thread vries at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63979

vries at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 CC||vries at gcc dot gnu.org
 Resolution|--- |WORKSFORME

--- Comment #10 from vries at gcc dot gnu.org ---
Can't reproduce this with current trunk.


[Bug go/64595] go programs abort when debug info is stripped

2015-01-20 Thread ian at airs dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64595

--- Comment #16 from Ian Lance Taylor ian at airs dot com ---
Yes, gccgo ought to enable -g by default.  For some reason I thought it did but
clearly I was wrong.

file/line info is needed for the standard library runtime.Callers function,
which is used by many other packages like the log and testing packages. 
Basically Go code assumes that you can always find out who is calling you. 
It's not C.

The Go library only needs whatever libbacktrace needs.  Right now I think that
is a minimal .debug_info, a corresponding .debug_abbrev, a full .debug_line,
possibly .debug_ranges, possibly .debug_str.  I think there is a Google
internal patch to generate this (though Go doesn't use it internally either). 
I can try to dig that up but it seems like stage 1 material.


[Bug fortran/60322] [OOP] Incorrect bounds on polymorphic dummy array

2015-01-20 Thread antony at cosmologist dot info
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60322

Antony Lewis antony at cosmologist dot info changed:

   What|Removed |Added

 CC||antony at cosmologist dot info

--- Comment #5 from Antony Lewis antony at cosmologist dot info ---
Here's another example (giving 0 and 1 for lbound)

program test
double precision x,y
 x=3
 y=4

 call W([x,y]) !this gives wrong result (4,4)
 call W([3.d0,4.d0]) !this works (3,4)
contains

 subroutine W(Ar)
 class(*), intent(in) :: Ar(:)

 print *, lbound(ar)
 select type (Ar)
type is (double precision)
  print *,Ar(1:2) 
 end select

 end subroutine

end program


[Bug sanitizer/64435] [5 Regression] Bootstrap failure in libsanitizer on AArch64 with Linux kernel = 3.15

2015-01-20 Thread kcc at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64435

--- Comment #23 from Kostya Serebryany kcc at gcc dot gnu.org ---
Can we move the discussion to the asan issue tracker? 
https://code.google.com/p/address-sanitizer/issues/list

There is already quite a bit of aarch64 discussion at
https://code.google.com/p/address-sanitizer/issues/detail?id=246

Not all of the asan developers are looking at the gcc buganizer and the fix
will need to go to the upstream anyway.


[Bug ipa/64694] New: [5 Regression] FAIL: 23_containers/unordered_set/insert/hash_policy.cc

2015-01-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64694

Bug ID: 64694
   Summary: [5 Regression] FAIL:
23_containers/unordered_set/insert/hash_policy.cc
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: ipa
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hjl.tools at gmail dot com

On Linux/x32, r219081 gave

FAIL: 23_containers/unordered_set/insert/hash_policy.cc execution test
FAIL: 23_containers/unordered_set/max_load_factor/robustness.cc execution test

r219074 is OK.


[Bug libstdc++/64695] New: [5 Regression] FAIL: libstdc++-prettyprinters/cxx11.cc

2015-01-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64695

Bug ID: 64695
   Summary: [5 Regression] FAIL: libstdc++-prettyprinters/cxx11.cc
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: libstdc++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hjl.tools at gmail dot com

On Linux/x86, r219789 gave

FAIL: libstdc++-prettyprinters/48362.cc print t2
FAIL: libstdc++-prettyprinters/cxx11.cc print rtpl
FAIL: libstdc++-prettyprinters/cxx11.cc print tpl

r219784 is OK.  The error message looks like:

Python Exception type 'exceptions.ValueError' Cannot parse more than 2 nodes
in a tuple tree.: ^M
...}^M
got: $23 = std::tuple containing = {[1] = 6Python Exception type
'exceptions.ValueError' Cannot parse more than 2 nodes in a tuple tree.: ^M
FAIL: libstdc++-prettyprinters/cxx11.cc print tpl
skipping: ...}^M
$24 = std::tuple containing = {[1] = 6Python Exception type
'exceptions.ValueError' Cannot parse more than 2 nodes in a tuple tree.: ^M
...}^M
A debugging session is active.^M
^M
Inferior 1 [process 22576] will be killed.^M
^M
Quit anyway? (y or n) [answered Y; input not from terminal]^M
got: $24 = std::tuple containing = {[1] = 6Python Exception type
'exceptions.ValueError' Cannot parse more than 2 nodes in a tuple tree.: ^M


[Bug target/64617] [5 Regression] ICE: Max. number of generated reload insns per insn is achieved (90) with -ftree-vectorize -mavx512bw -march=slm

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64617

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||vmakarov at gcc dot gnu.org

--- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org ---
The patterns in question are
(define_insn mask_codeforavx512_vec_dup_gprmodemask_name
  [(set (match_operand:VI12_AVX512VL 0 register_operand =v,v)
(vec_duplicate:VI12_AVX512VL
  (match_operand:ssescalarmode 1 nonimmediate_operand vm,r)))]
and thus ought to support both HImode MEM as well as GPR.
(insn 60 242 62 4 (set (reg:V32HI 114 [ vect_cst_.38 ])
(vec_duplicate:V32HI (reg/v:HI 169 [ a1 ]))) 4194
{*avx512bw_vec_dup_gprv32hi}
 (expr_list:REG_DEAD (reg/v:HI 169 [ a1 ])
(nil)))
(insn 62 60 64 4 (set (reg:V32HI 129 [ vect_cst_.41 ])
(vec_duplicate:V32HI (reg/v:HI 171 [ a2 ]))) 4194
{*avx512bw_vec_dup_gprv32hi}
 (expr_list:REG_DEAD (reg/v:HI 171 [ a2 ])
(nil)))
...
Vlad, can you please have a look?


[Bug target/64688] [5 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64688

--- Comment #2 from Jakub Jelinek jakub at gcc dot gnu.org ---
This is while reloading
(define_insn vec_setmode_0
  [(set (match_operand:VI4F_128 0 nonimmediate_operand
  =Yr,*v,v,v ,x,x,v,Yr ,*x ,x  ,m ,m   ,m)
(vec_merge:VI4F_128
  (vec_duplicate:VI4F_128
(match_operand:ssescalarmode 2 general_operand
   Yr,*v,m,*r,m,x,v,*rm,*rm,*rm,!x,!*re,!*fF))
  (match_operand:VI4F_128 1 vector_move_operand
   C , C,C,C ,C,0,v,0  ,0  ,x  ,0 ,0   ,0)
  (const_int 1)))]
instruction I think.


[Bug libstdc++/64632] runtime error: member call on address 0x0000004318a8 which does not point to an object of type 'ios_base'

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64632

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 CC||jakub at gcc dot gnu.org

--- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org ---
Seems if I compile the testcases with clang++ -S -fsanitize=vptr instead of g++
-S -fsanitize=vptr and then link against gcc 5.0 libubsan, it emits the same
runtime error.  If I link against llvm 3.5.0 libubsan the g++ -fsanitize=vptr
-S compiled test, it works.  So I think this must be a library issue.


[Bug rtl-optimization/60141] ICE in i386.c distance_non_agu_define_in_bb

2015-01-20 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60141

Uroš Bizjak ubizjak at gmail dot com changed:

   What|Removed |Added

 Status|UNCONFIRMED |RESOLVED
 Resolution|--- |DUPLICATE

--- Comment #4 from Uroš Bizjak ubizjak at gmail dot com ---
(In reply to Teresa Johnson from comment #1)
 This appears to have been exposed, not caused, by the change to the
 pass ordering. It is in fact a duplicate of PR middle-end/43631, which
 was fixed on trunk by r197994 on 4/15/13. I will backport the fix to
 google-4_8.

Duplicate.

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

[Bug libffi/64645] liibffi fails to build on cygwin-32

2015-01-20 Thread bernd.edlinger at hotmail dot de
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64645

--- Comment #7 from Bernd Edlinger bernd.edlinger at hotmail dot de ---
(In reply to Richard Henderson from comment #6)
 No.  In that case this unwind info would simply be ignored.
 Anyway, fixed in r219860.

Thanks.


[Bug middle-end/43631] var-tracking inserts notes with non-NULL BLOCK_FOR_INSN in between basic blocks

2015-01-20 Thread ubizjak at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=43631

Uroš Bizjak ubizjak at gmail dot com changed:

   What|Removed |Added

 CC||shenhan at google dot com

--- Comment #27 from Uroš Bizjak ubizjak at gmail dot com ---
*** Bug 60141 has been marked as a duplicate of this bug. ***

[Bug libffi/64645] liibffi fails to build on cygwin-32

2015-01-20 Thread rth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64645

Richard Henderson rth at gcc dot gnu.org changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED

--- Comment #6 from Richard Henderson rth at gcc dot gnu.org ---
No.  In that case this unwind info would simply be ignored.
Anyway, fixed in r219860.


[Bug sanitizer/64632] runtime error: member call on address 0x0000004318a8 which does not point to an object of type 'ios_base'

2015-01-20 Thread jakub at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64632

Jakub Jelinek jakub at gcc dot gnu.org changed:

   What|Removed |Added

 Status|UNCONFIRMED |ASSIGNED
   Last reconfirmed||2015-01-20
   Assignee|unassigned at gcc dot gnu.org  |jakub at gcc dot gnu.org
 Ever confirmed|0   |1

--- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org ---
Created attachment 34501
  -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34501action=edit
gcc5-pr64632.patch

Untested fix.


[Bug go/64683] FAIL: runtime/pprof -- testing.go:278: The entry did not match

2015-01-20 Thread ian at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64683

--- Comment #5 from ian at gcc dot gnu.org ian at gcc dot gnu.org ---
Author: ian
Date: Tue Jan 20 16:11:36 2015
New Revision: 219900

URL: https://gcc.gnu.org/viewcvs?rev=219900root=gccview=rev
Log:
PR go/64683
runtime/pprof: Let memory profiler test pass if value not collected.

Since gccgo's GC is not precise, the transient value may not
be collected.  Let the regexp match that case as well.

Modified:
trunk/libgo/go/runtime/pprof/mprof_test.go


[Bug fortran/64692] New: Incorrect result for sourced allocate of class(*) array

2015-01-20 Thread antony at cosmologist dot info
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64692

Bug ID: 64692
   Summary: Incorrect result for sourced allocate of class(*)
array
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: fortran
  Assignee: unassigned at gcc dot gnu.org
  Reporter: antony at cosmologist dot info

The following code gives incorrect output in trunk ('array 1' and 'array 2'
should be the same):

module Y
contains

subroutine AddArray(P)
class(*), target, intent(in) :: P(:)
class(*), pointer :: Pt(:)

allocate(Pt(1:SIZE(P)), source= P)

select type (P)
type is (double precision)
  print *,'array 1',P
end select

select type (Pt )
type is (double precision)
  print *,'array 2',Pt
end select

   end subroutine

end module Y

program test
use Y
double precision P(2,2)

P(1:2,1)=[1.d0,2.d0]
P(1:2,2) = [3.d0,4.d0]
call AddArray(P(1:2,2))

end program test


The select types are just there to show the output, they aren't needed for the
bug.


[Bug bootstrap/64693] New: [5 Regression] PCH failed with LTO + profiledbootstrap

2015-01-20 Thread hjl.tools at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64693

Bug ID: 64693
   Summary: [5 Regression] PCH failed with LTO + profiledbootstrap
   Product: gcc
   Version: 5.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: bootstrap
  Assignee: unassigned at gcc dot gnu.org
  Reporter: hjl.tools at gmail dot com

On Linux/x86-64, r216320 configured with

--prefix=/usr/5.0.0 --enable-clocale=gnu --with-system-zlib --enable-shared
--with-demangler-in-ld --with-build-config=bootstrap-lto --disable-werror
--with-fpmath=sse --enable-languages=c,c++,fortran,java,lto,objc

and built with make -j8 profiledbootstra gave many PCH failures:

https://gcc.gnu.org/ml/gcc-regression/2014-10/msg00392.html

r216301 is OK.  r219883 still has those failures:

https://gcc.gnu.org/ml/gcc-testresults/2015-01/msg02251.html


[Bug debug/63741] lm32 ICE in dwarf2out_frame_debug_expr, at dwarf2cfi.c:1677

2015-01-20 Thread joel at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63741

--- Comment #6 from Joel Sherrill joel at gcc dot gnu.org ---
I am not an expert on the machine descriptions or the lm32. If someone wants to
propose a patch, I am happy to test it.


[Bug target/64377] nios2 compile error in options-save.c

2015-01-20 Thread joel at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64377

--- Comment #19 from Joel Sherrill joel at gcc dot gnu.org ---
Sorry.. wrong PR.


[Bug libgomp/64672] ICEs in libgomp.oacc-fortran when using the '-g -flto' options in the test suite.

2015-01-20 Thread dominiq at lps dot ens.fr
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64672

--- Comment #10 from Dominique d'Humieres dominiq at lps dot ens.fr ---
 Perhaps for consistency, we should mark both fopenmp and fopenacc
 as LTO options?

Not sure to understand. Is it not what the patch at
https://gcc.gnu.org/ml/gcc-patches/2014-11/msg00085.html does?

If yes, it works for my tests.


  1   2   >