platform/upstream/gcc.git
9 years agoUse long long for uint64_t/int64_t
H.J. Lu [Sat, 7 Mar 2015 13:31:00 +0000 (13:31 +0000)]
Use long long for uint64_t/int64_t

* gcc.target/i386/pr45685.c (uint64_t): Replace long with long
long.
(int64_t): Likewise.

From-SVN: r221255

9 years ago* de.po: Update.
Joseph Myers [Sat, 7 Mar 2015 01:14:18 +0000 (01:14 +0000)]
* de.po: Update.

From-SVN: r221254

9 years agoDaily bump.
GCC Administrator [Sat, 7 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221253

9 years agore PR sanitizer/65280 (-fsanitize=bounds does not detect out-of-bounds access)
Marek Polacek [Fri, 6 Mar 2015 23:44:56 +0000 (23:44 +0000)]
re PR sanitizer/65280 (-fsanitize=bounds does not detect out-of-bounds access)

PR sanitizer/65280
* doc/invoke.texi: Update description of -fsanitize=bounds.

* c-ubsan.c (ubsan_instrument_bounds): Check for COMPONENT_REF
before trying to figure out whether we have a flexible array member.

* c-c++-common/ubsan/bounds-1.c: Add testing of flexible array
member-like arrays.
* c-c++-common/ubsan/bounds-8.c: New test.
* c-c++-common/ubsan/bounds-9.c: New test.
* gcc.dg/ubsan/bounds-2.c: New test.

Co-Authored-By: Martin Uecker <uecker@eecs.berkeley.edu>
From-SVN: r221250

9 years agoptree.c (cxx_print_lambda_node): New.
Aldy Hernandez [Fri, 6 Mar 2015 21:58:31 +0000 (21:58 +0000)]
ptree.c (cxx_print_lambda_node): New.

* ptree.c (cxx_print_lambda_node): New.
(cxx_print_xnode): Handle LAMBDA_EXPR.

From-SVN: r221249

9 years agore PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan...
Martin Sebor [Fri, 6 Mar 2015 18:43:24 +0000 (18:43 +0000)]
re PR testsuite/63175 (FAIL: gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c scan-tree-dump-times slp2" basic block vectorized using SLP" 1)

2015-03-05  Martin Sebor  <msebor@redhat.com>

* PR testsuite/63175
* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a.c (main1): Move
checking of results into main to prevent it from getting optimized
away.
* gcc.dg/vect/costmodel/ppc/costmodel-bb-slp-9a-pr63175.c: New test.

From-SVN: r221248

9 years agodg-extract-results.sh: Check that the necessary python modules exist.
Bernd Edlinger [Fri, 6 Mar 2015 18:35:15 +0000 (18:35 +0000)]
dg-extract-results.sh: Check that the necessary python modules exist.

2015-03-06  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * dg-extract-results.sh: Check that the necessary python modules exist.

From-SVN: r221247

9 years agoRemove inefficient branchless conditional negate optimization
Wilco Dijkstra [Fri, 6 Mar 2015 16:35:30 +0000 (16:35 +0000)]
Remove inefficient branchless conditional negate optimization

2015-03-06  Wilco Dijkstra  <wdijkstr@arm.com>

  gcc/
    * tree-ssa-phiopt.c (neg_replacement): Remove.
    (tree_ssa_phiopt_worker): Remove negate optimization.

  gcc/testsuite/
    * gcc.dg/tree-ssa/pr45685.c: Move to gcc.target/i386.
    * gcc.target/aarch64/csneg-1.c (test_csneg_cmp): New test.
    * gcc.target/i386/pr45685.c: Moved test, check for conditional move on x64.

From-SVN: r221246

9 years agolibgo: Upgrade to Go 1.4.2 release.
Ian Lance Taylor [Fri, 6 Mar 2015 16:19:05 +0000 (16:19 +0000)]
libgo: Upgrade to Go 1.4.2 release.

From-SVN: r221245

9 years agore PR lto/65302 (LTO: ICE internal compiler error: verify_flow_info failed)
Jan Hubicka [Fri, 6 Mar 2015 16:12:43 +0000 (17:12 +0100)]
re PR lto/65302 (LTO: ICE internal compiler error: verify_flow_info failed)

PR ipa/65302
* value-prof.c (gimple_ic): Pure dead eh edges when needed.
* g++.dg/lto/pr65302_1.C: New testcase.
* g++.dg/lto/pr65302_0.C: New testcase.

From-SVN: r221244

9 years ago[ARM testsuite obvious] Fixup atomic-comp-swap-release-acquire.c to not use ICF
James Greenhalgh [Fri, 6 Mar 2015 16:03:38 +0000 (16:03 +0000)]
[ARM testsuite obvious] Fixup atomic-comp-swap-release-acquire.c to not use ICF

gcc/

* gcc.target/arm/atomic-comp-swap-release-acquire.c: Add
-fno-ipa-icf to dg-options.

From-SVN: r221243

9 years agoMAINTAINERS (CPU Port Maintainers): Add myself i386 vector ISA extns mantainer.
Kirill Yukhin [Fri, 6 Mar 2015 14:49:03 +0000 (14:49 +0000)]
MAINTAINERS (CPU Port Maintainers): Add myself i386 vector ISA extns mantainer.

/
* MAINTAINERS (CPU Port Maintainers): Add myself
i386 vector ISA extns mantainer.

From-SVN: r221238

9 years agore PR middle-end/64928 (Inordinate cpu time and memory usage in "phase opt and genera...
Richard Biener [Fri, 6 Mar 2015 12:34:28 +0000 (12:34 +0000)]
re PR middle-end/64928 (Inordinate cpu time and memory usage in "phase opt and generate" with -ftest-coverage -fprofile-arcs)

2015-03-06  Richard Biener  <rguenther@suse.de>

PR middle-end/64928
* tree-ssa-live.h (struct tree_live_info_d): Add livein_obstack
and liveout_obstack members.
(calculate_live_on_exit): Remove.
(calculate_live_ranges): Change declaration.
* tree-ssa-live.c (liveness_bitmap_obstack): Remove global var.
(new_tree_live_info): Adjust.
(calculate_live_ranges): Delete livein when not wanted.
(calculate_live_ranges): Do not initialize liveness_bitmap_obstack.
Deal with partly deleted live info.
(loe_visit_block): Remove temporary bitmap by using
bitmap_ior_and_compl_into.
(live_worklist): Adjust accordingly.
(calculate_live_on_exit): Make static.
* tree-ssa-coalesce.c (coalesce_ssa_name): Tell calculate_live_ranges
we do not need livein.

From-SVN: r221237

9 years agofuture (future_error(error_code)): Construct base class with error_code's message.
Jonathan Wakely [Fri, 6 Mar 2015 12:31:43 +0000 (12:31 +0000)]
future (future_error(error_code)): Construct base class with error_code's message.

* include/std/future (future_error(error_code)): Construct base
class with error_code's message.
* src/c++11/future.cc (future_error::what()): Do not call c_str() on
temporary string.

From-SVN: r221236

9 years ago* real.c (real_from_string): Fix typo in assertion.
Jonathan Wakely [Fri, 6 Mar 2015 12:05:38 +0000 (12:05 +0000)]
* real.c (real_from_string): Fix typo in assertion.

From-SVN: r221235

9 years agoChangeLog (2015-03-05): Reflect Richard Henderson as actual author of the patch.
Alex Velenko [Fri, 6 Mar 2015 11:10:45 +0000 (11:10 +0000)]
ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of the patch.

2015-03-06  Alex Velenko  <alex.velenko@arm.com>

* ChangeLog (2015-03-05): Reflect Richard Henderson as actual author of
the patch.

From-SVN: r221234

9 years ago[AArch64 testsuite obvious] XFAIL c-c++-common/torture/aarch64-vect-lane-2.c
James Greenhalgh [Fri, 6 Mar 2015 10:47:20 +0000 (10:47 +0000)]
[AArch64 testsuite obvious] XFAIL c-c++-common/torture/aarch64-vect-lane-2.c
for -flto -fuse-linker-plugin

gcc/testsuite/

* c-c++-common/torture/aarch64-vect-lane-2.c: Skip for LTO
compiles.

From-SVN: r221233

9 years agoc-ada-spec.c (dump_ada_double_name): Fix pasto.
Eric Botcazou [Fri, 6 Mar 2015 10:15:03 +0000 (10:15 +0000)]
c-ada-spec.c (dump_ada_double_name): Fix pasto.

* c-ada-spec.c (dump_ada_double_name): Fix pasto.

Co-Authored-By: Jonathan Wakely <jwakely.gcc@gmail.com>
From-SVN: r221231

9 years agocompiler: Do not declare type switch variable outside case statements.
Ian Lance Taylor [Fri, 6 Mar 2015 00:27:32 +0000 (00:27 +0000)]
compiler: Do not declare type switch variable outside case statements.

For expressions containing a TypeSwitchGuard with a short variable
declaration e.g. var := x.(type), the spec says that var is declared
at the beginning of the implicit block for each in each clause.
Previously, var was declared in the block for the switch statement
and each implicit block, which led to errors if the type case clause
referenced a type with a similar name as the declared variable.

Fixes golang/go#10047.

From-SVN: r221230

9 years agoDaily bump.
GCC Administrator [Fri, 6 Mar 2015 00:16:11 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221229

9 years ago* ipa-icf.c (sem_variable::equals_wpa): Check FINAL flags.
Jan Hubicka [Thu, 5 Mar 2015 21:26:44 +0000 (22:26 +0100)]
* ipa-icf.c (sem_variable::equals_wpa): Check FINAL flags.

From-SVN: r221226

9 years agore PR target/64342 (Tests failing when compiled with '-m32 -fpic' after r216154.)
Vladimir Makarov [Thu, 5 Mar 2015 19:43:11 +0000 (19:43 +0000)]
re PR target/64342 (Tests failing when compiled with '-m32 -fpic' after r216154.)

2015-03-05  Vladimir Makarov  <vmakarov@redhat.com>

PR target/64342
* lra-assigns.c (find_hard_regno_for): Rename to
find_hard_regno_for_1.  Add a new parameter.
(find_hard_regno_for): New function using find_hard_regno_for_1.

From-SVN: r221223

9 years agore PR rtl-optimization/65067 (regression on accessing volatile bit field)
Bernd Edlinger [Thu, 5 Mar 2015 18:56:37 +0000 (18:56 +0000)]
re PR rtl-optimization/65067 (regression on accessing volatile bit field)

gcc:
2015-03-05  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        PR rtl-optimization/65067
        * expmed.c (store_bit_field, extract_bit_field): Reworked the
        strict volatile bitfield handling.

testsuite:
2015-03-05  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * gcc.target/arm/pr65067.c: New test.

From-SVN: r221222

9 years agore PR ipa/65318 (wrong code at -Os and above on x86_64-linux-gnu)
Martin Liska [Thu, 5 Mar 2015 17:49:49 +0000 (18:49 +0100)]
re PR ipa/65318 (wrong code at -Os and above on x86_64-linux-gnu)

PR ipa/65318
* ipa-icf.c (sem_variable::equals): Compare variables types.
* gcc.dg/ipa/pr65318.c: New test.

From-SVN: r221221

9 years agoarm.c (arm_function_in_section_p): Fix predicate to correctly check weak symbol binding.
Alex Velenko [Thu, 5 Mar 2015 16:45:21 +0000 (16:45 +0000)]
arm.c (arm_function_in_section_p): Fix predicate to correctly check weak symbol binding.

2015-03-05  Alex Velenko  <alex.velenko@arm.com>

* config/arm/arm.c (arm_function_in_section_p): Fix predicate to
correctly check weak symbol binding.

From-SVN: r221220

9 years agore PR middle-end/65315 (incorrect alignment of local variable with aligned attribute)
Steve Ellcey [Thu, 5 Mar 2015 16:34:03 +0000 (16:34 +0000)]
re PR middle-end/65315 (incorrect alignment of local variable with aligned attribute)

2015-03-05  Steve Ellcey  <sellcey@imgtec.com>

PR middle-end/65315
* cfgexpand.c (expand_stack_vars): Update large_align to maximum
needed alignment.

From-SVN: r221219

9 years agojit documentation fixes
David Malcolm [Thu, 5 Mar 2015 15:38:15 +0000 (15:38 +0000)]
jit documentation fixes

gcc/jit/ChangeLog:
* docs/cp/intro/tutorial03.rst: Add missing arguments to
gccjit::block::end_with_conditional call.  Add on_true/on_false
comments.  Tweak the wording.
* docs/intro/tutorial03.rst: Add missing arguments to
gcc_jit_block_end_with_conditional call.  Add some clarifying
comments.
* docs/topics/compilation.rst: Tweak the wording to avoid an
ambiguous use of "this".
* docs/topics/contexts.rst: Fix a typo.
* docs/topics/expressions.rst (GCC_JIT_BINARY_OP_MINUS): Remove
a stray backtick.
* docs/_build/texinfo/libgccjit.texi: Regenerate.

From-SVN: r221218

9 years ago* c-c++-common/ubsan/bounds-6.c: Use dg-do run.
Marek Polacek [Thu, 5 Mar 2015 15:00:20 +0000 (15:00 +0000)]
* c-c++-common/ubsan/bounds-6.c: Use dg-do run.

From-SVN: r221217

9 years agore PR ada/65319 (FAIL: g++.dg/other/dump-ada-spec-3.C -std=gnu++98 (internal compile...
Eric Botcazou [Thu, 5 Mar 2015 13:54:19 +0000 (13:54 +0000)]
re PR ada/65319 (FAIL: g++.dg/other/dump-ada-spec-3.C  -std=gnu++98 (internal compiler error))

PR ada/65319
* c-ada-spec.c (print_destructor): Remove obsolete code.

From-SVN: r221213

9 years agolocale_conv.h (wstring_convert::_M_conv): Handle noconv result.
Jonathan Wakely [Thu, 5 Mar 2015 13:36:21 +0000 (13:36 +0000)]
locale_conv.h (wstring_convert::_M_conv): Handle noconv result.

* include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
noconv result.
* testsuite/22_locale/conversions/string/2.cc: Also test UTF-8.
* testsuite/22_locale/conversions/string/3.cc: Likewise, and UTF-16.

From-SVN: r221212

9 years agoFix warnings occured during profiledboostrap on
Martin Liska [Thu, 5 Mar 2015 11:44:00 +0000 (12:44 +0100)]
Fix warnings occured during profiledboostrap on

* ipa-inline.c (inline_small_functions): Set default value to
prevent warning during bootstrap.
* tree.h: Add pragma guard that ignores false positives during
bootstrap.

From-SVN: r221211

9 years agoS/390: xfail ssa-dom-cse-2
Andreas Krebbel [Thu, 5 Mar 2015 09:58:32 +0000 (09:58 +0000)]
S/390: xfail ssa-dom-cse-2

gcc/testsuite:
* gcc.dg/tree-ssa/ssa-dom-cse-2.c:

From-SVN: r221210

9 years agoS/390: var-expand1 use default values for peel/unroll limits
Andreas Krebbel [Thu, 5 Mar 2015 09:56:42 +0000 (09:56 +0000)]
S/390: var-expand1 use default values for peel/unroll limits

gcc/testsuite/:
* gcc.dg/var-expand1.c: Force max-completely-peel-times and
max-unroll-times back to defaults for s390.

From-SVN: r221209

9 years ago2015-03-05 Paolo Carlini <paolo.carlini@oracle.com>
Paolo Carlini [Thu, 5 Mar 2015 09:21:39 +0000 (09:21 +0000)]
2015-03-05  Paolo Carlini  <paolo.carlini@oracle.com>

Fix last commit.

From-SVN: r221208

9 years agore PR c++/64665 (Overload resolution not working with std::initializer_list<std:...
Paolo Carlini [Thu, 5 Mar 2015 09:15:58 +0000 (09:15 +0000)]
re PR c++/64665 (Overload resolution not working with std::initializer_list<std::string> and bool)

2015-03-05  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64665
* g++.dg/cpp0x/initlist92.C: New.

From-SVN: r221207

9 years agore PR tree-optimization/65310 (vectorizer uses wrong alignment)
Richard Biener [Thu, 5 Mar 2015 09:14:01 +0000 (09:14 +0000)]
re PR tree-optimization/65310 (vectorizer uses wrong alignment)

2015-03-05  Richard Biener  <rguenther@suse.de>

PR tree-optimization/65310
* tree-vect-data-refs.c (vect_compute_data_ref_alignment):
Properly preserve alignment of the base of the access.

* gcc.dg/vect/pr65310.c: New testcase.

From-SVN: r221206

9 years agore PR c++/64834 (Captured variable not available in unevaluated context in a lambda...
Paolo Carlini [Thu, 5 Mar 2015 08:48:22 +0000 (08:48 +0000)]
re PR c++/64834 (Captured variable not available in unevaluated context in a lambda with auto argument)

2015-03-05  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64834
* g++.dg/cpp1y/lambda-generic-uneval1.C: New.

From-SVN: r221205

9 years agore PR ipa/65270 (issues with merging memory accesses from different code paths)
Richard Biener [Thu, 5 Mar 2015 08:43:13 +0000 (08:43 +0000)]
re PR ipa/65270 (issues with merging memory accesses from different code paths)

2015-03-05  Richard Biener  <rguenther@suse.de>

PR ipa/65270
* ipa-icf-gimple.c (func_checker::compare_memory_operand):
Compare dependence info.

From-SVN: r221204

9 years agore PR middle-end/65233 (ICE (segfault) on arm-linux-gnueabihf and aarch64-linux-gnu)
Richard Biener [Thu, 5 Mar 2015 08:37:40 +0000 (08:37 +0000)]
re PR middle-end/65233 (ICE (segfault) on arm-linux-gnueabihf and aarch64-linux-gnu)

2015-03-05  Richard Biener  <rguenther@suse.de>

PR middle-end/65233
* ipa-polymorphic-call.c: Include tree-ssa-operands.h and
tree-into-ssa.h.
(walk_ssa_copies): Revert last chage.  Instead do not walk
SSA names registered for SSA update.

From-SVN: r221203

9 years agoDaily bump.
GCC Administrator [Thu, 5 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221202

9 years agore PR ipa/65270 (issues with merging memory accesses from different code paths)
Jan Hubicka [Thu, 5 Mar 2015 00:10:29 +0000 (01:10 +0100)]
re PR ipa/65270 (issues with merging memory accesses from different code paths)

  PR ipa/65270
* ipa-icf.c (sem_item::compare_cgraph_references): Compare
vtable references for their containing type.
(sem_function::equals_wpa): Compare TYPE_RESTRICT
and type attributes.

From-SVN: r221199

9 years agofold-const.c (round_up_loc): Cast divisor to signed on all paths before negating it.
Eric Botcazou [Wed, 4 Mar 2015 22:33:41 +0000 (22:33 +0000)]
fold-const.c (round_up_loc): Cast divisor to signed on all paths before negating it.

* fold-const.c (round_up_loc): Cast divisor to signed on all paths
before negating it.
* stor-layout.c (finalize_record_size): Revert latest change.

From-SVN: r221198

9 years agot-freebsd64: Remove 32-bit soft-float multilibs.
Andreas Tobler [Wed, 4 Mar 2015 21:56:46 +0000 (22:56 +0100)]
t-freebsd64: Remove 32-bit soft-float multilibs.

2015-03-04  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/rs6000/t-freebsd64: Remove 32-bit soft-float multilibs.

From-SVN: r221197

9 years agocgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite for correct comdat...
Jan Hubicka [Wed, 4 Mar 2015 20:28:08 +0000 (21:28 +0100)]
cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite for correct comdat handling.

* cgraph.c (cgraph_node::can_remove_if_no_direct_calls_p): Rewrite
for correct comdat handling.
(cgraph_node::will_be_removed_from_program_if_no_direct_calls_p):
Likewise.
* cgraph.h (call_for_symbol_and_aliases): Fix formating.
(used_from_object_file_p_worker): Remove.
(cgraph_node::only_called_directly_or_alised): Add
used_from_object_file_p.
* ipa-inline-analysis.c (growth_likely_positive): Optimie.
* ipa-inline-transform.c (can_remove_node_now_p_1): Use
can_remove_if_no_direct_calls_and_refs_p.

From-SVN: r221193

9 years ago* de.po: Update.
Joseph Myers [Wed, 4 Mar 2015 17:45:00 +0000 (17:45 +0000)]
* de.po: Update.

From-SVN: r221191

9 years agore PR target/65261 (bootstrap-ubsan ppc64le: gcc/libcpp/lex.c:552:30: runtime error...
Markus Trippelsdorf [Wed, 4 Mar 2015 17:28:56 +0000 (17:28 +0000)]
re PR target/65261 (bootstrap-ubsan ppc64le: gcc/libcpp/lex.c:552:30: runtime error: load of misaligned address 0x01002172dfc6 for type 'const uchar', which requires 16 byte alignment)

Fix PR65261

Running bootstrap-ubsan on ppc64le shows many instances of:

  libcpp/lex.c:552:30: runtime error: load of misaligned address
  0x01001f31d37a for type 'const uchar', which requires 16 byte alignment

But the unaligned vector loads are intended in this case, because they
are preferable to forced-alignment on POWER8. So just silence the ubsan
errors.

2015-03-02  Markus Trippelsdorf  <markus@trippelsdorf.de>

include/
PR target/65261
* ansidecl.h (ATTRIBUTE_NO_SANITIZE_UNDEFINED): New macro.

libcpp/
PR target/65261
* lex.c (search_line_fast): Silence ubsan errors.

From-SVN: r221190

9 years agore PR libstdc++/64797 (22_locale/conversions/string/2.cc FAILs)
Jonathan Wakely [Wed, 4 Mar 2015 17:19:55 +0000 (17:19 +0000)]
re PR libstdc++/64797 (22_locale/conversions/string/2.cc FAILs)

PR libstdc++/64797
* include/bits/locale_conv.h (wstring_convert::_M_conv): Handle
incomplete multibyte sequences correctly.
* include/std/codecvt (codecvt_utf8, codecvt_utf16,
codecvt_utf8_utf16): Limit _Maxcode to maximum Unicode code point.
* src/c++11/codecvt.cc (invalid_mb_sequence, incomplete_mb_character):
Define constants.
(is_high_surrogate, is_low_surrogate, surrogate_pair_to_code_point):
Define convenience functions.
(read_utf8_code_point): Return relevant constant to distinguish
incomplete characters from invalid sequences.
(read_utf16_code_point): Likewise. Check for invalid sequences.
(ucs4_in, utf16_in): Use incomplete_mb_character constant.
(utf16_out): Check for invalid sequences.
(utf16_span): Fix condition.
(ucs2_out): Use is_high_surrogate.
(ucs2_in): Use incomplete_mb_character constant and fix condition.
* testsuite/22_locale/codecvt/char16_t.cc: Fix whitespace.
* testsuite/22_locale/conversions/buffer/1.cc: New.
* testsuite/22_locale/conversions/string/2.cc: Use char16_t and
char32_t instead of wchar_t.
* testsuite/22_locale/conversions/string/3.cc: New.

From-SVN: r221189

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 15:00:57 +0000 (16:00 +0100)]
[multiple changes]

2015-03-04  Robert Dewar  <dewar@adacore.com>

* sem_warn.adb: Minor reformatting.
* init.c: Minor tweaks.

2015-03-04  Dmitriy Anisimko  <anisimko@adacore.com>

* a-coinho-shared.adb: Fix clear of already empty holder.

2015-03-04  Robert Dewar  <dewar@adacore.com>

* exp_unst.adb (Check_Dynamic_Type): Ignore library level types.
(Check_Uplevel_Reference_To_Type): Ignore call inside generic.
(Note_Uplevel_Reference): Ignore call inside generic.
(Note_Uplevel_Reference): Fix check for no entity field.
(Unnest_Subprogram): Ignore call inside generic.
(Find_Current_Subprogram): Use Defining_Entity, not Defining_Unit_Name.
(Visit_Node): Ignore calls to Imported subprograms.
(Visit_Node): Fix problem in finding subprogram body in some cases.
(Add_Form_To_Spec): Use Defining_Entity, not Defining_Unit_Name.

From-SVN: r221188

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 14:56:45 +0000 (15:56 +0100)]
[multiple changes]

2015-03-04  Robert Dewar  <dewar@adacore.com>

* einfo.adb (Is_ARECnF_Entity): Removed.
(Last_Formal): Remove special handling of Is_ARECnF_Entity.
(Next_Formal): Remove special handling of Is_ARECnF_Entity.
(Next_Formal_With_Extras): Remove special handling of Is_ARECnF_Entity.
(Number_Entries): Minor reformatting.
* einfo.ads (Is_ARECnF_Entity): Removed.
* exp_unst.adb (Unnest_Subprogram): Remove setting of
Is_ARECnF_Entity.
(Add_Extra_Formal): Use normal Extra_Formal circuit.
* sprint.adb (Write_Param_Specs): Properly handle case where
there are no source formals, but we have at least one Extra_Formal
present.

2015-03-04  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate,
Add_Discriminant_Values): If the value is a reference to the
current instance of an enclosing type, use its base type to check
against prefix of attribute reference, because the target type
may be otherwise constrained.

From-SVN: r221187

9 years ago* go.test/go-test.exp (go-gc-tests): Skip nilptr test on s390*.
Ian Lance Taylor [Wed, 4 Mar 2015 14:54:33 +0000 (14:54 +0000)]
* go.test/go-test.exp (go-gc-tests): Skip nilptr test on s390*.

From-SVN: r221186

9 years agorl78.h (enum reg_class): Remove real registers from General register class.
Nick Clifton [Wed, 4 Mar 2015 14:54:15 +0000 (14:54 +0000)]
rl78.h (enum reg_class): Remove real registers from General register class.

* config/rl78/rl78.h (enum reg_class): Remove real registers from
General register class.
* config/rl78/rl78-real.md: Replace general register constraints
with real+virtual register constraints.

From-SVN: r221185

9 years agoS/390: Fix check for builtins valid with -mhtm
Andreas Krebbel [Wed, 4 Mar 2015 14:43:14 +0000 (14:43 +0000)]
S/390: Fix check for builtins valid with -mhtm

* gcc/config/s390/s390.c (s390_expand_builtin): Exlude non-htm
builtins from checking for -mhtm option.

From-SVN: r221184

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 11:51:48 +0000 (12:51 +0100)]
[multiple changes]

2015-03-04  Robert Dewar  <dewar@adacore.com>

* atree.h: Add entries for Flag287-Flag309.
* einfo.adb: Add (unused) flags Flag287-Flag309.

2015-03-04  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Collect_Interfaces, Collect): When gathering
interfaces of ancestors, handle properly a subtype of a private
extension.

From-SVN: r221183

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 10:27:59 +0000 (11:27 +0100)]
[multiple changes]

2015-03-04  Robert Dewar  <dewar@adacore.com>

* einfo.adb (Is_ARECnF_Entity): New flag (ARECnF is an extra formal).
(Next_Formal): Don't return ARECnF formal.
(Last_Formal): Don't consider ARECnF formal.
(Next_Formal_With_Extras): Do consider ARECnF formal.
* einfo.ads (Is_ARECnF_Entity): New flag (ARECnF is an extra formal).
* exp_unst.adb (Create_Entities): Set Is_ARECnF_Entity flag.

2015-03-04  Javier Miranda  <miranda@adacore.com>

* exp_ch6.adb (Expand_Simple_Function_Return): When the returned
object is a class-wide interface object and we generate the
accessibility described in RM 6.5(8/3) then displace the pointer
to the object to reference the base of the object (to get access
to the TSD of the object).

From-SVN: r221182

9 years agore PR c++/64227 (Forwarding an argument of a function template to a generic lambda...
Paolo Carlini [Wed, 4 Mar 2015 10:20:23 +0000 (10:20 +0000)]
re PR c++/64227 (Forwarding an argument of a function template to a generic lambda causes a compiler crash)

2015-03-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64227
* g++.dg/cpp1y/lambda-generic-ice1.C: New.

From-SVN: r221181

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 10:01:40 +0000 (11:01 +0100)]
[multiple changes]

2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_prag.adb (Analyze_Abstract_State): Use routine
Malformed_State_Error to issue general errors.
(Analyze_Pragma): Diagnose a syntax error related to a state
declaration with a simple option.
(Malformed_State_Error): New routine.

2015-03-04  Robert Dewar  <dewar@adacore.com>

* a-strsup.adb (Super_Slice): Deal with super flat case.
* einfo.ads: Minor reformatting.
* s-imgdec.adb (Set_Decimal_Digits): Add comment about possibly
redundant code.

2015-03-04  Claire Dross  <dross@adacore.com>

* a-cfdlli.ads, a-cfhase.ads, a-cforma.ads, a-cfhama.ads,
a-cforse.ads, a-cofove.ads: Use Default_Initial_Condition on formal
containers.

From-SVN: r221180

9 years agoFix permission.
Arnaud Charlet [Wed, 4 Mar 2015 09:59:38 +0000 (10:59 +0100)]
Fix permission.

From-SVN: r221179

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 09:58:41 +0000 (10:58 +0100)]
[multiple changes]

2015-03-04  Ed Schonberg  <schonberg@adacore.com>

* sem_warn.adb (Check_References): When checking for an unused
in-out parameter of a class- wide type, use its type to determine
whether it is private, in order to avoid a spurious warning when
subprogram spec and body are in different units.

2015-03-04  Yannick Moy  <moy@adacore.com>

* sem_attr.adb: Improve warning messages.

From-SVN: r221178

9 years agoexp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest generic subprograms.
Robert Dewar [Wed, 4 Mar 2015 09:57:07 +0000 (09:57 +0000)]
exp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest generic subprograms.

2015-03-04  Robert Dewar  <dewar@adacore.com>

* exp_ch6.adb (Expand_N_Subprogram_Body): Avoid trying to unnest
generic subprograms.
* exp_unst.adb (Check_Dynamic_Type): Handle record types properly
(Note_Uplevel_Reference): Ignore uplevel references to non-types
(Get_Level): Consider only subprograms, not blocks.
(Visit_Node): Set proper condition for generating ARECnF entity.
Ignore indirect calls. Ignore calls to subprograms
outside our nest.
(Unnest_Subprogram): Minor changes in dealing with ARECnF entity.
(Add_Form_To_Spec): Properly set Last_Entity field.
(Unnest_Subprogram): Set current subprogram scope for analyze calls.
Handle case of no uplevel refs in outer subprogram
Don't mark uplevel entities as aliased.
Don't deal with calls with no ARECnF requirement.

2015-03-04  Robert Dewar  <dewar@adacore.com>

* s-valrea.adb (Scan_Real): Remove redundant tests from scaling loops.
* s-imgdec.adb (Set_Decimal_Digits): Remove redundant Max
operation in computing LZ.
* sem_attr.adb: Minor typo fix

From-SVN: r221177

9 years ago[multiple changes]
Arnaud Charlet [Wed, 4 Mar 2015 09:54:19 +0000 (10:54 +0100)]
[multiple changes]

2015-03-04  Robert Dewar  <dewar@adacore.com>

* exp_ch7.adb: Minor reformatting.
* exp_unst.adb (Build_Tables): Fix minor glitch for no separate
spec case.
* erroutc.adb (Delete_Msg): add missing decrement of info msg counter.

2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Build_Pragma_Check_Equivalent): Suppress
references to formal parameters subject to pragma Unreferenced.
(Suppress_Reference): New routine.
* sem_attr.adb (Analyze_Attribute): Reimplement the analysis
of attribute 'Old. Attributes 'Old and 'Result now share
common processing.
(Analyze_Old_Result_Attribute): New routine.
(Check_Placement_In_Check): Removed.
(Check_Placement_In_Contract_Cases): Removed.
(Check_Placement_In_Test_Case): Removed.
(Check_Use_In_Contract_Cases): Removed.
(Check_Use_In_Test_Case): Removed.
(In_Refined_Post): Removed.
(Is_Within): Removed.
* sem_warn.adb (Check_Low_Bound_Tested): Code cleanup.
(Check_Low_Bound_Tested_For): New routine.

2015-03-04  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration):
Generate a runtime check to test the expression of pragma
Default_Initial_Condition when the object is default initialized.

From-SVN: r221176

9 years ago[AArch64 Testsuite Obvious] Disable ipa-icf for testcases with common test bodies
James Greenhalgh [Wed, 4 Mar 2015 09:32:02 +0000 (09:32 +0000)]
[AArch64 Testsuite Obvious] Disable ipa-icf for testcases with common test bodies

gcc/testsuite/

* gcc.target/aarch64/atomic-comp-swap-release-acquire.c: Add
-fno-ipa-icf to dg-options
* gcc.target/aarch64/vect_saddl_1.c: Likewise.
* gcc.target/aarch64/vect_smlal_1.c: Likewise.

From-SVN: r221175

9 years agore PR c++/64398 (decltype in different contexts with similar expressions triggers...
Paolo Carlini [Wed, 4 Mar 2015 08:32:23 +0000 (08:32 +0000)]
re PR c++/64398 (decltype in different contexts with similar expressions triggers segfault in GCC)

2015-03-04  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/64398
* g++.dg/cpp0x/decltype62.C: New.

From-SVN: r221174

9 years agotree-sra.c (convert_callers): Use call_for_symbol_and_aliases.
Jan Hubicka [Wed, 4 Mar 2015 05:00:49 +0000 (06:00 +0100)]
tree-sra.c (convert_callers): Use call_for_symbol_and_aliases.

* tree-sra.c (convert_callers): Use call_for_symbol_and_aliases.
(struct ipa_sra_check_caller_data): Add has_thunk field.
(ipa_sra_check_caller): Check for thunk.
(ipa_sra_preliminary_function_checks): Give up on function with
thunks.
(ipa_early_sra): Use call_for_symbol_and_aliases.

From-SVN: r221171

9 years agoDaily bump.
GCC Administrator [Wed, 4 Mar 2015 00:16:12 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221169

9 years agore PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compil...
Kaz Kojima [Tue, 3 Mar 2015 23:51:55 +0000 (23:51 +0000)]
re PR target/65249 (unable to find a register to spill in class 'R0_REGS' when compiling protobuf on sh4)

PR target/65249
* config/sh/sh.md (symGOT_load): Use R0 reg for operands[2] when
  called for __stack_chk_guard symbol.

From-SVN: r221165

9 years agorl78-real.md (*addqi_real): Allow SADDR types for inc/dec.
DJ Delorie [Tue, 3 Mar 2015 21:57:40 +0000 (16:57 -0500)]
rl78-real.md (*addqi_real): Allow SADDR types for inc/dec.

* config/rl78/rl78-real.md (*addqi_real): Allow SADDR types for
inc/dec.
(*addhi3_real): Likewise.
* config/rl78/rl78-virt.md (*inc<mode>3_virt): Additional
pattern to match incrementing memory.
* config/rl78/predicates.md (rl78_1_2_operand): New.
* config/rl78/rl78.c (rl78_force_nonfar_3): Allow far mem-mem if
it's the same and only mem.
(rl78_alloc_physical_registers_op2): If there's effectively only
one MEM, transcode it into HL.
(rl78_far_p): Reject addresses that aren't legitimate.

From-SVN: r221164

9 years agore PR c++/65295 ([C++1y] constexpr function causes ICE if it returns a local variable...
Aldy Hernandez [Tue, 3 Mar 2015 18:14:24 +0000 (18:14 +0000)]
re PR c++/65295 ([C++1y] constexpr function causes ICE if it returns a local variable bigger than 16 bytes)

PR c++/65295
* constexpr.c (cxx_eval_constant_expression): Remove assert in
RESULT_DECL handling.

From-SVN: r221161

9 years agore PR libstdc++/64883 (FAIL: 17_intro/headers/c++*/all_attributes.cc (test for excess...
Iain Sandoe [Tue, 3 Mar 2015 18:14:20 +0000 (18:14 +0000)]
re PR libstdc++/64883 (FAIL: 17_intro/headers/c++*/all_attributes.cc (test for excess errors) on x86_64-apple-darwin10)

2015-03-03  Iain Sandoe  <iain@codesourcery.com>

PR libstdc++/64883
* testsuite/17_intro/headers/c++1998/all_attributes.cc: Don't check
visibility for Darwin.
* testsuite/17_intro/headers/c++200x/all_attributes.cc: Likewise, and
also deprecated.
* testsuite/17_intro/headers/c++2014/all_attributes.cc: Likewise.

From-SVN: r221160

9 years agofold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before negating it.
Eric Botcazou [Tue, 3 Mar 2015 17:56:07 +0000 (17:56 +0000)]
fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before negating it.

* fold-const.c (round_up_loc): Cast divisor to HOST_WIDE_INT before
negating it.

* tree-sra.c (pa_sra_preliminary_function_checks): Fix typo in message.

From-SVN: r221159

9 years agoImplement call0 ABI for xtensa
Max Filippov [Tue, 3 Mar 2015 17:44:01 +0000 (17:44 +0000)]
Implement call0 ABI for xtensa

call0 is an ABI that doesn't use register windows.

2015-03-03  Max Filippov  <jcmvbkbc@gmail.com>

gcc/
* config/xtensa/constraints.md ("a" constraint): Include stack
pointer in case of call0 ABI.
("q" constraint): Make empty in case of call0 ABI.
("D" constraint): Include stack pointer in case of call0 ABI.
* config/xtensa/xtensa-protos.h (xtensa_set_return_address,
xtensa_expand_epilogue, xtensa_regno_to_class): Add new function
prototypes.
* config/xtensa/xtensa.c (xtensa_callee_save_size): New
variable.
(xtensa_regno_to_class): Make it a local variable in the
function xtensa_regno_to_class.
(xtensa_function_epilogue, TARGET_ASM_FUNCTION_EPILOGUE): Remove
macro, function prototype and implementation.
(reg_nonleaf_alloc_order): Make it a local variable in the
function order_regs_for_local_alloc.
(xtensa_conditional_register_usage): New function.
(TARGET_CONDITIONAL_REGISTER_USAGE): Define macro.
(xtensa_valid_move): Allow direct moves to stack pointer
register in call0 ABI.
(xtensa_setup_frame_addresses): Only spill register windows in
windowed ABI.
(xtensa_emit_call): Emit call(x)8 or call(x)0 in windowed and
call0 ABI respectively.
(xtensa_function_arg_1): Only mark a7 register for copying in
windowed ABI.
(xtensa_call_save_reg): New function.
(compute_frame_size): Add space for callee saved register
storage to the frame size in call0 ABI.
(xtensa_expand_prologue): Generate code to set up stack frame
and save callee-saved registers in call0 ABI.
(xtensa_expand_epilogue): New function.
(xtensa_set_return_address): New function.
(xtensa_return_addr): Calculate return address in call0 ABI.
(xtensa_builtin_saveregs): Only mark a7 register for copying and
emit copying code in windowed ABI.
(order_regs_for_local_alloc): Add preferred register allocation
order for non-leaf function in call0 ABI.
(xtensa_static_chain): Add atatic chain passing for call0 ABI.
(xtensa_asm_trampoline_template): Add trampoline generation for
call0 ABI.
(xtensa_trampoline_init): Add trampoline initialization for
call0 ABI.
(xtensa_conditional_register_usage, xtensa_regno_to_class): New
functions.
* config/xtensa/xtensa.h (TARGET_WINDOWED_ABI): New macro.
(TARGET_CPU_CPP_BUILTINS): Add built-in define for call0 ABI.
(CALL_USED_REGISTERS): Modify to encode both windowed and call0
ABI call-used registers.
(HARD_FRAME_POINTER_REGNUM): Add frame pointer for call0 ABI.
(INCOMING_REGNO, OUTGOING_REGNO): Use argument unchanged in
call0 ABI.
(REG_CLASS_CONTENTS): Include all registers into the preferred
reload registers set, adjust the set in the
xtensa_conditional_register_usage.
(xtensa_regno_to_class): Drop variable declaration.
(REGNO_REG_CLASS): Redefine to use xtensa_regno_to_class
function.
(WINDOW_SIZE): Define as 8 or 0 for windowed and call0 ABI
respectively.
(FUNCTION_PROFILER): Add _mcount call for call0 ABI.
(TRAMPOLINE_SIZE): Define trampoline size for call0 ABI.
(RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 in call0 ABI.
(ASM_OUTPUT_POOL_PROLOGUE): Always generate literal pool
location in call0 ABI.
(EH_RETURN_STACKADJ_RTX): New definition, use a10 for passing
stack adjustment size when handling exception.
(CRT_CALL_STATIC_FUNCTION): Add definition for call0 ABI.
* config/xtensa/xtensa.md (A9_REG, UNSPECV_BLOCKAGE): New
definitions.
("return" pattern): Generate ret.n/ret in call0 ABI.
("epilogue" pattern): Expand epilogue.
("nonlocal_goto" pattern): Use default in call0 ABI.
("eh_return" pattern): Move implementation to eh_set_a0_windowed,
emit eh_set_a0_* depending on ABI.
("eh_set_a0_windowed" pattern): Former eh_return pattern.
("eh_set_a0_call0", "blockage"): New patterns.

libgcc/
* config/xtensa/lib2funcs.S (__xtensa_libgcc_window_spill,
__xtensa_nonlocal_goto): Don't compile for call0 ABI.
(__xtensa_sync_caches): Only use entry and retw in windowed ABI,
use ret in call0 ABI.
* config/xtensa/t-windowed: New file.
* libgcc/config/xtensa/t-xtensa (LIB2ADDEH): Move to t-windowed.
* libgcc/configure: Regenerated.
* libgcc/configure.ac: Check if xtensa target is configured for
windowed ABI and thus needs to use custom unwind code.

From-SVN: r221158

9 years agore PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)
Jan Hubicka [Tue, 3 Mar 2015 17:33:22 +0000 (17:33 +0000)]
re PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)

PR ipa/65287
* gcc.dg/ipa/pr65287.c: New test.

From-SVN: r221157

9 years agore PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)
Martin Liska [Tue, 3 Mar 2015 17:32:21 +0000 (18:32 +0100)]
re PR ipa/65287 (Current trunk ICE in address_matters_p, at symtab.c:1908)

PR ipa/65287
* ipa-icf.c (sem_variable::parse): Skip all alias variables.
* gcc.dg/ipa/pr65287.c: New test.

From-SVN: r221156

9 years agoPR 65138/target
Michael Meissner [Tue, 3 Mar 2015 17:04:01 +0000 (17:04 +0000)]
PR 65138/target

2015-03-03  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR 65138/target
* config/rs6000/rs6000-tables.opt: Regenerate table.

From-SVN: r221155

9 years agoMAINTAINERS: Remove Paul Brook as a Fortran and ARM maintainer.
Jeff Law [Tue, 3 Mar 2015 16:41:55 +0000 (09:41 -0700)]
MAINTAINERS: Remove Paul Brook as a Fortran and ARM maintainer.

* MAINTAINERS: Remove Paul Brook as a Fortran and ARM
maintainer.
Remove Richard Henderson as a maintainer for the x86 port.

From-SVN: r221154

9 years ago[PATCH][DOC]Fix an obvious type in md.texi
Renlin Li [Tue, 3 Mar 2015 15:55:27 +0000 (15:55 +0000)]
[PATCH][DOC]Fix an obvious type in md.texi

2015-03-03  Renlin Li  <renlin.li@arm.com>

gcc/

* doc/md.texi (@item ^): ChangeLog ? into ^.

From-SVN: r221152

9 years agoRegenerate doc/tm.texi
H.J. Lu [Tue, 3 Mar 2015 15:52:07 +0000 (15:52 +0000)]
Regenerate doc/tm.texi

* doc/tm.texi: Regenerated.

From-SVN: r221151

9 years agoTurn RETURN_ADDR_IN_PREVIOUS_FRAME into C expression
Max Filippov [Tue, 3 Mar 2015 15:04:02 +0000 (15:04 +0000)]
Turn RETURN_ADDR_IN_PREVIOUS_FRAME into C expression

This allows a target to support both windowed and non-windowed ABI.

2015-03-03  Max Filippov  <jcmvbkbc@gmail.com>

gcc/
* builtins.c (expand_builtin_return_addr): Add
RETURN_ADDR_IN_PREVIOUS_FRAME to 'if' condition, remove
surrounding #ifdef.
* config/sparc/sparc.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Change
definition to 1.
* config/xtensa/xtensa.h (RETURN_ADDR_IN_PREVIOUS_FRAME):
Likewise.
* defaults.h (RETURN_ADDR_IN_PREVIOUS_FRAME): Define to 0 if
undefined.
* doc/tm.texi.in (RETURN_ADDR_IN_PREVIOUS_FRAME): Update
paragraph.

From-SVN: r221150

9 years agoMAINTAINERS (CPU Port Maintainers): Update my email address.
Joern Rennecke [Tue, 3 Mar 2015 14:02:18 +0000 (14:02 +0000)]
MAINTAINERS (CPU Port Maintainers): Update my email address.

2015-03-03  Joern Rennecke  <gnu@amylaar.uk>

        * MAINTAINERS (CPU Port Maintainers): Update my email address.

From-SVN: r221149

9 years agotree-sra.c (ipa_sra_check_caller_data): New type.
Martin Jambor [Tue, 3 Mar 2015 13:58:15 +0000 (14:58 +0100)]
tree-sra.c (ipa_sra_check_caller_data): New type.

2015-03-03  Martin Jambor  <mjambor@suse.cz>
            Eric Botcazou  <ebotcazou@adacore.com>

gcc/
        * tree-sra.c (ipa_sra_check_caller_data): New type.
        (has_caller_p): Removed.
        (ipa_sra_check_caller): New function.
        (ipa_sra_preliminary_function_checks): Use it.

gcc/changelog/
        * gnat.dg/specs/pack12.ads: New test.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r221148

9 years agoICF: Use bit or instead of if branch.
Martin Liska [Tue, 3 Mar 2015 12:10:57 +0000 (13:10 +0100)]
ICF: Use bit or instead of if branch.

* ipa-icf.c (sem_item_optimizer::merge_classes): Use bit or
instead of if branch.

From-SVN: r221147

9 years agore PR ipa/65282 (wrong code at -Os and above on x86_64-linux-gnu)
Martin Liska [Tue, 3 Mar 2015 12:09:13 +0000 (13:09 +0100)]
re PR ipa/65282 (wrong code at -Os and above on x86_64-linux-gnu)

Fix PR ipa/65282.

* gcc.dg/ipa/PR65282.c: New test.
PR ipa/65282
* ipa-icf.c (sem_variable::equals): Fix wrong condition.

From-SVN: r221146

9 years agore PR tree-optimization/65241 (ICE (in remove_local_expressions_from_table, at tree...
Jeff Law [Tue, 3 Mar 2015 11:54:49 +0000 (04:54 -0700)]
re PR tree-optimization/65241 (ICE (in remove_local_expressions_from_table, at tree-ssa-dom.c:1081))

PR tree-optimization/65241
* tree-ssa-dom.c (lookup_avail_expr): Only modify the avail_expr
hash table if INSERT is true.

PR tree-optimization/65241
* gcc.c-torture/compile/pr65241.c: New test.

From-SVN: r221145

9 years agore PR target/65296 ([avr] fix various issues with specs file generation)
Georg-Johann Lay [Tue, 3 Mar 2015 11:31:05 +0000 (11:31 +0000)]
re PR target/65296 ([avr] fix various issues with specs file generation)

PR target/65296
* config.gcc (extra_gcc_objs) [avr-*-rtems*]: Remove.

From-SVN: r221144

9 years agore PR target/64331 (regcprop propagates registers noted as REG_DEAD)
Georg-Johann Lay [Tue, 3 Mar 2015 11:25:04 +0000 (11:25 +0000)]
re PR target/64331 (regcprop propagates registers noted as REG_DEAD)

gcc/
PR target/64331
* config/avr/avr.c (context.h, tree-pass.h): Include them.
(avr_pass_data_recompute_notes): New static variable.
(avr_pass_recompute_notes): New class.
(avr_register_passes): New static function.
(avr_option_override): Call it.
gcc/testsuite/
PR target/64331
* gcc.target/avr/torture/pr64331.c: New test.

From-SVN: r221143

9 years agoFix various problems with specs file generation.
Georg-Johann Lay [Tue, 3 Mar 2015 11:03:16 +0000 (11:03 +0000)]
Fix various problems with specs file generation.

gcc/
Fix various problems with specs file generation.
PR target/65296
* config.gcc (extra_gcc_objs) [avr]: Remove.
* config/avr/driver-avr.c: Remove file.
* config/avr/t-avr (driver-avr.o): Remove rule.
(gen-avr-mmcu-specs): Use CXX_FOR_BUILD, CXXFLAGS_FOR_BUILD and
INCLUDES to build.  Depend on TM_H.
* config/avr/gen-avr-mmcu-specs.c: Tidy up code.  Fix various
build warnings.  Fix non-matching types and non-existing %-codes.
(tm.h): Include.
(*lib) [!WITH_AVRLIBC]: Don't link libdev.a.
(*libgcc) [WITH_AVRLIBC]: Add "-lm".
* config/avr/avrlibc.h (LIBGCC_SPEC): Remove definition.
* config/avr/avr.h (DRIVER_SELF_SPECS): Fix handling of -march=.
(CPP_SPEC, CC1PLUS_SPEC, ASM_SPEC, LINK_SPEC, LIB_SPEC)
(LIBGCC_SPEC): Remove definitions.

From-SVN: r221141

9 years agoia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG to create a register in testin...
Eric Botcazou [Tue, 3 Mar 2015 10:41:00 +0000 (10:41 +0000)]
ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG to create a register in testing mode.

* config/ia64/ia64.c (expand_vec_perm_interleave_2): Use gen_raw_REG
to create a register in testing mode.

From-SVN: r221139

9 years agore PR target/65263 (ICE (error: unrecognizable insn / in insn_min_length, at config...
Martin Liska [Tue, 3 Mar 2015 09:26:20 +0000 (10:26 +0100)]
re PR target/65263 (ICE (error: unrecognizable insn / in insn_min_length, at config/rs6000/rs6000.md) on powerpc64le-linux-gnu)

Fix PR ipa/65263.

PR ipa/65263
* cgraph.c (cgraph_node::has_thunk_p): New function.
* cgraph.h (cgraph_node::has_thunk_p: Likewise.
* ipa-icf.c (redirect_all_callers): Do not redirect thunks.
(sem_function::merge): Assert is changed.
* g++.dg/ipa/pr65263.C: New test.

Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
From-SVN: r221134

9 years agore PR ipa/65087 (r220742 causes: ICE: in ipcp_verify_propagated_values, at ipa-cp...
Martin Liska [Tue, 3 Mar 2015 09:21:56 +0000 (10:21 +0100)]
re PR ipa/65087 (r220742 causes: ICE: in ipcp_verify_propagated_values, at ipa-cp.c:1057)

Fix PR ipa/65087.

PR ipa/65087
* ipa-icf.c (sem_item_optimizer::execute): Change function
return value to boolean.
(sem_item_optimizer::merge_classes): Likewise.
(ipa_icf_driver): Return TODO_remove_functions in case there's
a merge operation processed.
* ipa-icf.h: Change function return value to boolean.

Co-Authored-By: Martin Jambor <mjambor@suse.cz>
From-SVN: r221133

9 years agoPR 65138/target
Michael Meissner [Tue, 3 Mar 2015 00:59:56 +0000 (00:59 +0000)]
PR 65138/target

2015-03-02  Michael Meissner  <meissner@linux.vnet.ibm.com>

PR 65138/target
* config/rs6000/rs6000-cpus.def (powerpc64le): Add new generic
processor type for 64-bit little endian PowerPC.

* config/rs6000/rs6000.c (rs6000_option_override_internal): If
-mdebug=reg, print TARGET_DEFAULT.  Fix logic to use
TARGET_DEFAULT if there is no default cpu.  Fix -mdebug=reg
printing built-in mask so it does not pass NULL pointers.

* doc/invoke.texi (IBM RS/6000 and PowerPC options): Document
-mcpu=powerpc64le.

From-SVN: r221132

9 years agoDaily bump.
GCC Administrator [Tue, 3 Mar 2015 00:16:17 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r221131

9 years agore PR target/58158 (ICE with conditional moves on GPRs with a floating point conditio...
Steve Ellcey [Tue, 3 Mar 2015 00:07:19 +0000 (00:07 +0000)]
re PR target/58158 (ICE with conditional moves on GPRs with a floating point conditional on mipsel with loongson2f)

2015-03-02  Steve Ellcey  <sellcey@imgtec.com>

PR target/58158
* config/mips/mips.md (mov<mode>cc): Change ISA_HAS_SEL check to
!ISA_HAS_FP_CONDMOVE.

From-SVN: r221128

9 years agoi386.md (*udivmod<mode>4_pow2): Remove reload_completed.
Aldy Hernandez [Mon, 2 Mar 2015 23:52:42 +0000 (23:52 +0000)]
i386.md (*udivmod<mode>4_pow2): Remove reload_completed.

* config/i386/i386.md (*udivmod<mode>4_pow2): Remove
reload_completed.

From-SVN: r221127

9 years agoinvoke.texi (Options for Code Generation Conventions): Fix URL of DSO paper.
Ulrich Drepper [Mon, 2 Mar 2015 20:44:41 +0000 (20:44 +0000)]
invoke.texi (Options for Code Generation Conventions): Fix URL of DSO paper.

        * doc/invoke.texi (Options for Code Generation Conventions):
        Fix URL of DSO paper.

From-SVN: r221125

9 years agore PR lto/65130 (ICE with LTO on valid code on x86_64-linux-gnu)
Jan Hubicka [Mon, 2 Mar 2015 20:31:21 +0000 (21:31 +0100)]
re PR lto/65130 (ICE with LTO on valid code on x86_64-linux-gnu)

PR ipa/65130
* ipa-inline.c (check_callers): Looks for recursion.
(inline_to_all_callers): Give up on uninlinable or recursive edges.
* ipa-inline-analysis.c (inline_summary_t::duplicate): Do not update
summary of inline clones.
(do_estimate_growth_1): Fix recursion check.

* gcc.dg/lto/pr65130_0.c: New testcase.
* gcc.dg/lto/pr65130_1.c: New testcase.

From-SVN: r221124

9 years agore PR ipa/64988 (ICE: verify_cgraph_node failed: Alias and target's comdat groups...
Jan Hubicka [Mon, 2 Mar 2015 20:10:56 +0000 (21:10 +0100)]
re PR ipa/64988 (ICE: verify_cgraph_node failed: Alias and target's comdat groups differs with -fdeclone-ctor-dtor)

PR ipa/64988
* ipa-inline-transform.c (clone_inlined_nodes): Do not dissolve
comdat groups.
* g++.dg/torture/pr64988.C: New testcase.

From-SVN: r221123

9 years agocheck.c (gfc_check_atomic): Properly check for coarrayness and for being coindexed.
Tobias Burnus [Mon, 2 Mar 2015 18:56:51 +0000 (19:56 +0100)]
check.c (gfc_check_atomic): Properly check for coarrayness and for being coindexed.

2015-03-02  Tobias Burnus  <burnus@net-b.de>

        * check.c (gfc_check_atomic): Properly check for coarrayness
        and for being coindexed.

2015-03-02  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_atomic_6.f90: New.

From-SVN: r221122

9 years agore PR lto/65276 (LTO: ICE add_type_duplicate, at ipa-devirt.c:1462)
Jan Hubicka [Mon, 2 Mar 2015 18:43:56 +0000 (19:43 +0100)]
re PR lto/65276 (LTO: ICE add_type_duplicate, at ipa-devirt.c:1462)

PR lto/65276
* ipa-devirt.c (add_type_duplicate): Remove odr_violated assert
when checking TYPE_BINFO.

Co-Authored-By: Aldy Hernandez <aldyh@redhat.com>
From-SVN: r221121

9 years agore PR libgcc/64885 (libstdc++ all_attributes failure)
Jonathan Wakely [Mon, 2 Mar 2015 18:02:18 +0000 (18:02 +0000)]
re PR libgcc/64885 (libstdc++ all_attributes failure)

PR libgcc/64885
* gthr-single.h: Use __unused__ attribute instead of unused.
* config/gthr-vxworks.h: Likewise.
* config/i386/gthr-win32.h: Likewise.

From-SVN: r221120

9 years agore PR libstdc++/65279 (std::scoped_allocator_adaptor is not assignable)
Jonathan Wakely [Mon, 2 Mar 2015 17:50:55 +0000 (17:50 +0000)]
re PR libstdc++/65279 (std::scoped_allocator_adaptor is not assignable)

PR libstdc++/65279
* include/std/scoped_allocator (__inner_type_impl,
scoped_allocator_adaptor): Add defaulted copy assignment and move
assignment operators.
* testsuite/20_util/scoped_allocator/65279.cc: New.

From-SVN: r221119

9 years agore PR libstdc++/64367 (g++-v5/stdexcept:52:28: error: invalid use of non-static data...
Jonathan Wakely [Mon, 2 Mar 2015 16:50:24 +0000 (16:50 +0000)]
re PR libstdc++/64367 (g++-v5/stdexcept:52:28: error: invalid use of non-static data member '_M_p')

PR libstdc++/64367
* include/std/stdexcept (__sso_string): Don't use non-static member
in sizeof.

From-SVN: r221118