Paolo Carlini
54674a35bd
re PR c++/51640 (Misleading error if the type in the catch() is ambiguous)
...
/cp
2014-05-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51640
* parser.c (cp_parser_diagnose_invalid_type_name): Early return
when cp_parser_lookup_name sets ambiguous_decls.
/testsuite
2014-05-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51640
* g++.dg/parse/error54.C: New.
From-SVN: r210521
2014-05-16 17:42:23 +00:00
Vladimir Makarov
f4e075e7d9
re PR rtl-optimization/60969 (ICE in output_129 in MMXMOV of mode MODE_SF for march=pentium4)
...
2014-05-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60969
* ira-costs.c (record_reg_classes): Allow only memory for pseudo.
Calculate costs for this case.
2014-05-16 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/60969
* g++.dg/pr60969.C: New.
From-SVN: r210520
2014-05-16 17:37:17 +00:00
Eric Botcazou
8b628e86ec
fold-const (fold_unary_loc): New case.
...
* fold-const (fold_unary_loc) <NON_LVALUE_EXPR>: New case.
<CASE_CONVERT>: Pass arg0 instead of op0 to fold_convert_const.
From-SVN: r210518
2014-05-16 16:59:38 +00:00
Jonathan Wakely
53caffbe8d
typedefs-1.cc: Fix test for 32-bit target.
...
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Fix
test for 32-bit target.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/modifiers/reset_neg.cc:
Fix test.
From-SVN: r210517
2014-05-16 15:55:45 +01:00
Alexey Merzlyakov
2a2794f7be
re PR libstdc++/60758 (Infinite backtrace in __cxa_end_cleanup)
...
2014-05-16 Alexey Merzlyakov <alexey.merzlyakov@samsung.com>
PR libstdc++/60758
* libsupc++/eh_arm.cc (__cxa_end_cleanup): Change r4 to lr in save/restore
and add unwind directives.
From-SVN: r210515
2014-05-16 13:16:33 +00:00
Richard Biener
52264dbf66
re PR tree-optimization/61194 (vectorization failed with "bit-precision arithmetic not supported" even if conversion to int is requested)
...
2014-05-16 Richard Biener <rguenther@suse.de>
PR tree-optimization/61194
* tree-vect-patterns.c (adjust_bool_pattern): Also handle
bool patterns ending in a COND_EXPR.
* gcc.dg/vect/pr61194.c: New testcase.
From-SVN: r210514
2014-05-16 11:21:11 +00:00
Jonathan Wakely
cd1464dbc6
parse_numbers.h (__parse_int::_Number_help): Check for overflow.
...
* include/bits/parse_numbers.h (__parse_int::_Number_help): Check for
overflow.
* include/std/chrono (chrono_literals::__select_type::_Select_type):
Remove.
(chrono_literals::_Checked_integral_constant): Define.
Simplify UDL operator templates and check for overflow.
* testsuite/20_util/duration/literals/range.cc: New.
From-SVN: r210513
2014-05-16 12:08:49 +01:00
James Greenhalgh
3d840f7d1f
[AArch64 costs] Fixup to costing of FNMUL
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_mult_cost): Fix FNMUL case.
From-SVN: r210512
2014-05-16 10:15:54 +00:00
Ed Smith-Rowland
a2f4bd2ae1
re PR libstdc++/61166 (overflow when parse number in std::duration operator"")
...
2014-05-15 Ed Smith-Rowland <3dw4rd@verizon.net>
Jonathan Wakely <jwakely@redhat.com>
PR libstdc++/61166
* include/bits/parse_numbers.h: Use integral_constant to remove
duplication and simplify.
* testsuite/20_util/duration/literals/61166.cc: New.
Co-Authored-By: Jonathan Wakely <jwakely@redhat.com>
From-SVN: r210511
2014-05-16 10:30:57 +01:00
James Greenhalgh
88d4fbcf50
[AArch64 costs 18/18] Dump a message if we are unable to cost an insn.
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Handle the case
where we were unable to cost an RTX.
From-SVN: r210510
2014-05-16 09:27:55 +00:00
James Greenhalgh
909734beb7
[AArch64 costs 17/18] Cost for SYMBOL_REF, HIGH and LO_SUM
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost SYMBOL_REF,
HIGH, LO_SUM.
From-SVN: r210509
2014-05-16 09:25:48 +00:00
James Greenhalgh
fb620c4a9a
[AArch64 costs 16/18] Cost TRUNCATE
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost TRUNCATE.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210508
2014-05-16 09:23:28 +00:00
James Greenhalgh
b292109f9e
[AArch64 costs 15/18] Cost more Floating point RTX.
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost FMA,
FLOAT_EXTEND, FLOAT_TRUNCATE, ABS, SMAX, and SMIN.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210507
2014-05-16 09:20:22 +00:00
James Greenhalgh
a8eecd00ec
[AArch64 costs 14/18] Cost comparisons, flag setting operators and IF_THEN_ELSE
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost comparison
operators.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210506
2014-05-16 09:16:23 +00:00
James Greenhalgh
4105fe3885
[AArch64 costs 13/18] Improve costs for div/mod
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for
DIV/MOD.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210505
2014-05-16 09:12:14 +00:00
James Greenhalgh
7cc2145f54
[AArch64 costs 12/18] Improve costs for sign/zero extracts
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for
SIGN/ZERO_EXTRACT.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210504
2014-05-16 09:07:34 +00:00
James Greenhalgh
ba0cfa1700
[AArch64 costs 11/18] Improve costs for rotate and shift operations.
...
* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costs for
rotates and shifts.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210503
2014-05-16 09:03:19 +00:00
James Greenhalgh
b1685e6274
[AArch64 costs 10/18] Improve costs for sign/zero extend operations
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Cost
ZERO_EXTEND and SIGN_EXTEND better.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210502
2014-05-16 09:01:28 +00:00
James Greenhalgh
268c3b4758
[AArch64 costs 9/18] Better cost logical operations
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve cost for
logical operations.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210501
2014-05-16 08:59:07 +00:00
James Greenhalgh
2961177e7d
[AArch64 costs 8/18] Cost memory accesses using address costs
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Use address
costs when costing loads and stores to memory.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210500
2014-05-16 08:56:54 +00:00
James Greenhalgh
ba123b0de5
[AArch64 costs 7/18] Improve SET cost.
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Improve costing
for SET RTX.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210499
2014-05-16 08:55:04 +00:00
James Greenhalgh
7fc5ef02f4
[AArch64 costs 6/18] Set default costs and handle vector modes.
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs): Set default costs.
From-SVN: r210498
2014-05-16 08:52:30 +00:00
James Greenhalgh
4745e70151
[AArch64 costs 5/18] Factor out common MULT cases
...
gcc/
* config/aarch64/aarch64.c (aarch64_strip_shift_or_extend): Rename
to...
(aarch64_strip_extend): ...this, don't strip shifts, check RTX is
well formed.
(aarch64_rtx_mult_cost): New.
(aarch64_rtx_costs): Use it, refactor as appropriate.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210497
2014-05-16 08:50:51 +00:00
James Greenhalgh
9dfc162c47
[AArch64 costs 4/18] Better estimate cost of building a constant
...
gcc/
* config/aarch64/aarch64.c (aarch64_build_constant): Conditionally
emit instructions, return number of instructions which would
be emitted.
(aarch64_add_constant): Update call to aarch64_build_constant.
(aarch64_output_mi_thunk): Likewise.
(aarch64_rtx_costs): Estimate cost of a CONST_INT, cost
a CONST_DOUBLE.
Co-Authored-By: Philipp Tomsich <philipp.tomsich@theobroma-systems.com>
From-SVN: r210496
2014-05-16 08:47:59 +00:00
James Greenhalgh
0ee859b53b
[AArch64 costs 3/18] Wrap aarch64_rtx_costs to dump verbose output
...
gcc/
* config/aarch64/aarch64.c (aarch64_rtx_costs_wrapper): New.
(TARGET_RTX_COSTS): Call it.
From-SVN: r210495
2014-05-16 08:45:39 +00:00
James Greenhalgh
60bff09020
[AArch64 costs 2/18] Add cost tables for Cortex-A57
...
gcc/
* config/aarch64/aarch64.c (cortexa57_addrcost_table): New.
(cortexa57_vector_cost): Likewise.
(cortexa57_tunings): Use them.
From-SVN: r210494
2014-05-16 08:43:51 +00:00
James Greenhalgh
677473677a
[AArch64 costs 1/18] Refactor aarch64_address_costs.
...
gcc/
* config/aarch64/aarch64-protos.h (scale_addr_mode_cost): New.
(cpu_addrcost_table): Use it.
* config/aarch64/aarch64.c (generic_addrcost_table): Initialize it.
(aarch64_address_cost): Rewrite using aarch64_classify_address,
move it.
From-SVN: r210493
2014-05-16 08:41:46 +00:00
Richard Biener
a764d66099
tree-ssa-sccvn.c: Include tree-cfg.h and domwalk.h.
...
2014-05-16 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c: Include tree-cfg.h and domwalk.h.
(set_ssa_val_to): Handle unexpected sets to VN_TOP.
(visit_phi): Ignore edges marked as not executable.
(class cond_dom_walker): New.
(cond_dom_walker::before_dom_children): Value-number
control statements and mark successor edges as not
executable if possible.
(run_scc_vn): First walk all control statements in
dominator order, marking edges as not executable.
* tree-inline.c (copy_edges_for_bb): Be not confused
about random edge flags.
* gcc.dg/tree-ssa/ssa-fre-39.c: New testcase.
* gcc.dg/tree-ssa/ssa-fre-40.c: Likewise.
* gcc.dg/tree-ssa/ssa-pre-8.c: One more elimination.
* gcc.dg/tree-ssa/struct-aliasing-2.c: Scan cddce1 dump.
From-SVN: r210492
2014-05-16 08:05:50 +00:00
Richard Biener
a27c386001
tree-ssa-sccvn.c (visit_use): Also constant-fold calls.
...
2014-05-16 Richard Biener <rguenther@suse.de>
* tree-ssa-sccvn.c (visit_use): Also constant-fold calls.
* gcc.dg/tree-ssa/ssa-fre-41.c: New testcase.
From-SVN: r210491
2014-05-16 07:57:46 +00:00
Peter Bergner
d8c55b91ae
re PR target/61193 (ABI incompatibility between POWER and Z HTM builtins and intrinsics)
...
PR target/61193
* config/rs6000/htmxlintrin.h (_HTM_TBEGIN_STARTED): New define.
(__TM_simple_begin): Use it.
(__TM_begin): Likewise.
From-SVN: r210486
2014-05-15 22:43:12 -05:00
GCC Administrator
ef1f23cc6b
Daily bump.
...
From-SVN: r210484
2014-05-16 00:17:08 +00:00
Jonathan Wakely
c6139a7763
Fix typo in my name.
...
From-SVN: r210479
2014-05-15 20:12:04 +01:00
Martin Jambor
8a2256dda3
re PR ipa/61085 (wrong code with -O2 -fno-early-inlining (maybe wrong devirtualization))
...
2014-05-15 Martin Jambor <mjambor@suse.cz>
PR ipa/61085
* ipa-prop.c (update_indirect_edges_after_inlining): Check
type_preserved flag when the indirect edge is polymorphic.
testsuite/
* g++.dg/ipa/pr61085.C: New test.
From-SVN: r210477
2014-05-15 17:04:18 +02:00
Martin Jambor
9d2681a399
re PR tree-optimization/61090 (ICE in build_ref_for_offset)
...
2014-05-15 Martin Jambor <mjambor@suse.cz>
PR tree-optimization/61090
* tree-sra.c (sra_modify_expr): Pass the current gsi to
build_ref_for_model.
testsuite/
* gcc.dg/tree-ssa/pr61090.c: New test.
From-SVN: r210476
2014-05-15 16:54:29 +02:00
Jason Merrill
8fa53379d5
* call.c (print_conversion_rejection): Use loc consistently.
...
From-SVN: r210475
2014-05-15 08:52:35 -04:00
Jonathan Wakely
c0eef1c8f2
re PR libstdc++/60326 (Incorrect type from std::make_unsigned<wchar_t>)
...
PR libstdc++/60326
* include/std/type_traits (__make_unsigned, __make_signed): Define
specializations for wchar_t, char16_t and char32_t.
* testsuite/20_util/make_signed/requirements/typedefs-4.cc: New.
* testsuite/20_util/make_unsigned/requirements/typedefs-1.cc: Correct
test for make_unsigned<volatile wchar_t>.
* testsuite/20_util/make_unsigned/requirements/typedefs-2.cc:
Likewise.
* testsuite/20_util/declval/requirements/1_neg.cc: Adjust dg-error
line number.
* testsuite/20_util/make_signed/requirements/typedefs_neg.cc:
Likewise.
* testsuite/20_util/make_unsigned/requirements/typedefs_neg.cc:
Likewise.
From-SVN: r210473
2014-05-15 13:31:05 +01:00
Kyrylo Tkachov
927450d08c
[ARM][cleanup] Use enum name instead of integer value for PARAM_SCHED_PRESSURE_ALGORITHM.
...
* config/arm/arm.c (arm_option_override): Use the SCHED_PRESSURE_MODEL
enum name for PARAM_SCHED_PRESSURE_ALGORITHM.
From-SVN: r210471
2014-05-15 11:23:02 +00:00
Jonathan Wakely
3a004764ec
tuple (tuple_size<cv _Tp>): Implement LWG 2313.
...
* include/std/tuple (tuple_size<cv _Tp>): Implement LWG 2313.
* include/std/array (tuple_size, tuple_element): Add Doxygen comments.
* include/std/utility (tuple_size, tuple_element): Likewise.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
Adjust dg-error line number.
From-SVN: r210470
2014-05-15 11:35:29 +01:00
Jakub Jelinek
ceed6e6732
re PR middle-end/61158 (negative shift at fold-const.c:12095)
...
PR tree-optimization/61158
* fold-const.c (fold_binary_loc): If X is zero-extended and
shiftc >= prec, make sure zerobits is all ones instead of
invoking undefined behavior.
* gcc.dg/pr61158.c: New test.
From-SVN: r210467
2014-05-15 12:01:11 +02:00
Rainer Orth
a2555c65a0
Check for -static-libgcc before use (PR lto/60981)
...
PR lto/60981
* configure.ac: Check for -static-libgcc.
* configure: Regenerate.
From-SVN: r210465
2014-05-15 09:52:37 +00:00
Andreas Schwab
c4622c2bed
exceptions-3.mm: Remove check for message no longer emitted.
...
* obj-c++.dg/exceptions-3.mm: Remove check for message no longer
emitted.
* obj-c++.dg/exceptions-5.mm: Likewise.
From-SVN: r210464
2014-05-15 09:34:27 +00:00
Zhenqiang Chen
a2e6c10cbd
regcprop.h: New file.
...
2014-05-15 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* regcprop.h: New file.
* regcprop.c (skip_debug_insn_p): New decl.
(replace_oldest_value_reg): Check skip_debug_insn_p.
(copyprop_hardreg_forward_bb_without_debug_insn.): New function.
* shrink-wrap.c: include regcprop.h
(prepare_shrink_wrap):
Call copyprop_hardreg_forward_bb_without_debug_insn.
testsuite/ChangeLog:
2014-05-15 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* shrink-wrap-loop.c: New test case.
From-SVN: r210458
2014-05-15 06:54:48 +00:00
Zhenqiang Chen
e974b93b6c
shrink-wrap.h: Update comment.
...
2014-05-15 Zhenqiang Chen <zhenqiang.chen@linaro.org>
* shrink-wrap.h: Update comment.
* shrink-wrap.c: Update comment.
(next_block_for_reg): Rename to live_edge_for_reg.
(live_edge_for_reg): Allow live_edge->dest has two predecessors.
(move_insn_for_shrink_wrap): Split live_edge.
(prepre_shrink_wrap): One more parameter for move_insn_for_shrink_wrap.
From-SVN: r210457
2014-05-15 06:30:58 +00:00
GCC Administrator
be60271113
Daily bump.
...
From-SVN: r210455
2014-05-15 00:17:01 +00:00
Sandra Loosemore
707f18393a
configure.ac (target_makefile_frag): Set for nios2-*-elf*.
...
2014-05-14 Sandra Loosemore <sandra@codesourcery.com>
* configure.ac (target_makefile_frag): Set for nios2-*-elf*.
* configure: Regenerated.
config/
* mt-nios2-elf: New file.
From-SVN: r210451
2014-05-14 19:20:59 -04:00
Joseph Myers
e494d89c37
* zh_CN.po: Update.
...
From-SVN: r210449
2014-05-15 00:04:48 +01:00
Torvald Riegel
7321dc60f4
Add myself as maintainer for libitm.
...
From-SVN: r210448
2014-05-14 22:37:28 +00:00
Jonathan Wakely
af222e7486
tuple (__add_c_ref, [...]): Remove.
...
* include/std/tuple (__add_c_ref, __add_ref, __add_r_ref): Remove.
(__tuple_element_t): Define.
(tuple_element): Use __tuple_element_t.
(__cv_tuple_size): Define.
(tuple_size<cv _Tp>): Use __cv_tuple_size.
(get, __get_helper, __get_helper2): Remove uses of __add_ref etc.
(get<_Tp>(tuple<_Types...>&&)): Use forward instead of move.
(__tuple_compare): Remove size check, re-order parameters.
(operator==, operator<): Use static_assert to check requirements.
* include/std/functional (__volget): use __tuple_element_t.
* testsuite/20_util/tuple/element_access/get_by_type.cc: Test rvalues.
* testsuite/20_util/uses_allocator/cons_neg.cc: Adjust dg-error.
From-SVN: r210447
2014-05-14 23:16:35 +01:00
Eric Botcazou
88fe5e91e4
sparc-protos.h (sparc_absnegfloat_split_legitimate): Delete.
...
* config/sparc/sparc-protos.h (sparc_absnegfloat_split_legitimate):
Delete.
* config/sparc/sparc.c (sparc_absnegfloat_split_legitimate): Likewise.
* config/sparc/sparc.md (fptype_ut699): New attribute.
(in_branch_delay): Return false if -mfix-ut699 is specified and
fptype_ut699 is set to single.
(truncdfsf2): Add fptype_ut699 attribute.
(fix_truncdfsi2): Likewise.
(floatsisf2): Change fptype attribute.
(fix_truncsfsi2): Likewise.
(negtf2_notv9): Delete.
(negtf2_v9): Likewise.
(negtf2_hq): New instruction.
(negtf2): New instruction and splitter.
(negdf2_notv9): Rewrite.
(abstf2_notv9): Delete.
(abstf2_hq_v9): Likewise.
(abstf2_v9): Likewise.
(abstf2_hq): New instruction.
(abstf2): New instruction and splitter.
(absdf2_notv9): Rewrite.
From-SVN: r210444
2014-05-14 22:09:26 +00:00
Eric Botcazou
0263d67803
* seh_init.c: Fix copyright year.
...
From-SVN: r210443
2014-05-14 22:00:49 +00:00