gcc.git
10 years ago[AArch64 costs 4/18] Better estimate cost of building a constant
James Greenhalgh [Fri, 16 May 2014 08:47:59 +0000 (08:47 +0000)]
[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

10 years ago[AArch64 costs 3/18] Wrap aarch64_rtx_costs to dump verbose output
James Greenhalgh [Fri, 16 May 2014 08:45:39 +0000 (08:45 +0000)]
[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

10 years ago[AArch64 costs 2/18] Add cost tables for Cortex-A57
James Greenhalgh [Fri, 16 May 2014 08:43:51 +0000 (08:43 +0000)]
[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

10 years ago[AArch64 costs 1/18] Refactor aarch64_address_costs.
James Greenhalgh [Fri, 16 May 2014 08:41:46 +0000 (08:41 +0000)]
[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

10 years agotree-ssa-sccvn.c: Include tree-cfg.h and domwalk.h.
Richard Biener [Fri, 16 May 2014 08:05:50 +0000 (08:05 +0000)]
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

10 years agotree-ssa-sccvn.c (visit_use): Also constant-fold calls.
Richard Biener [Fri, 16 May 2014 07:57:46 +0000 (07:57 +0000)]
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

10 years agore PR target/61193 (ABI incompatibility between POWER and Z HTM builtins and intrinsics)
Peter Bergner [Fri, 16 May 2014 03:43:12 +0000 (22:43 -0500)]
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

10 years agoDaily bump.
GCC Administrator [Fri, 16 May 2014 00:17:08 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210484

10 years agoFix typo in my name.
Jonathan Wakely [Thu, 15 May 2014 19:12:04 +0000 (20:12 +0100)]
Fix typo in my name.

From-SVN: r210479

10 years agore PR ipa/61085 (wrong code with -O2 -fno-early-inlining (maybe wrong devirtualization))
Martin Jambor [Thu, 15 May 2014 15:04:18 +0000 (17:04 +0200)]
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

10 years agore PR tree-optimization/61090 (ICE in build_ref_for_offset)
Martin Jambor [Thu, 15 May 2014 14:54:29 +0000 (16:54 +0200)]
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

10 years ago* call.c (print_conversion_rejection): Use loc consistently.
Jason Merrill [Thu, 15 May 2014 12:52:35 +0000 (08:52 -0400)]
* call.c (print_conversion_rejection): Use loc consistently.

From-SVN: r210475

10 years agore PR libstdc++/60326 (Incorrect type from std::make_unsigned<wchar_t>)
Jonathan Wakely [Thu, 15 May 2014 12:31:05 +0000 (13:31 +0100)]
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

10 years ago[ARM][cleanup] Use enum name instead of integer value for PARAM_SCHED_PRESSURE_ALGORITHM.
Kyrylo Tkachov [Thu, 15 May 2014 11:23:02 +0000 (11:23 +0000)]
[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

10 years agotuple (tuple_size<cv _Tp>): Implement LWG 2313.
Jonathan Wakely [Thu, 15 May 2014 10:35:29 +0000 (11:35 +0100)]
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

10 years agore PR middle-end/61158 (negative shift at fold-const.c:12095)
Jakub Jelinek [Thu, 15 May 2014 10:01:11 +0000 (12:01 +0200)]
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

10 years agoCheck for -static-libgcc before use (PR lto/60981)
Rainer Orth [Thu, 15 May 2014 09:52:37 +0000 (09:52 +0000)]
Check for -static-libgcc before use (PR lto/60981)

PR lto/60981
* configure.ac: Check for -static-libgcc.
* configure: Regenerate.

From-SVN: r210465

10 years agoexceptions-3.mm: Remove check for message no longer emitted.
Andreas Schwab [Thu, 15 May 2014 09:34:27 +0000 (09:34 +0000)]
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

10 years agoregcprop.h: New file.
Zhenqiang Chen [Thu, 15 May 2014 06:54:48 +0000 (06:54 +0000)]
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

10 years agoshrink-wrap.h: Update comment.
Zhenqiang Chen [Thu, 15 May 2014 06:30:58 +0000 (06:30 +0000)]
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

10 years agoDaily bump.
GCC Administrator [Thu, 15 May 2014 00:17:01 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210455

10 years agoconfigure.ac (target_makefile_frag): Set for nios2-*-elf*.
Sandra Loosemore [Wed, 14 May 2014 23:20:59 +0000 (19:20 -0400)]
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

10 years ago* zh_CN.po: Update.
Joseph Myers [Wed, 14 May 2014 23:04:48 +0000 (00:04 +0100)]
* zh_CN.po: Update.

From-SVN: r210449

10 years agoAdd myself as maintainer for libitm.
Torvald Riegel [Wed, 14 May 2014 22:37:28 +0000 (22:37 +0000)]
Add myself as maintainer for libitm.

From-SVN: r210448

10 years agotuple (__add_c_ref, [...]): Remove.
Jonathan Wakely [Wed, 14 May 2014 22:16:35 +0000 (23:16 +0100)]
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

10 years agosparc-protos.h (sparc_absnegfloat_split_legitimate): Delete.
Eric Botcazou [Wed, 14 May 2014 22:09:26 +0000 (22:09 +0000)]
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

10 years ago* seh_init.c: Fix copyright year.
Eric Botcazou [Wed, 14 May 2014 22:00:49 +0000 (22:00 +0000)]
* seh_init.c: Fix copyright year.

From-SVN: r210443

10 years agoChange -g so that it will override -g1 but not -g3.
Cary Coutant [Wed, 14 May 2014 21:48:47 +0000 (21:48 +0000)]
Change -g so that it will override -g1 but not -g3.

gcc/
        PR debug/61013
* opts.c (common_handle_option): Don't special-case "-g".
(set_debug_level): Default to at least level 2 with "-g".

From-SVN: r210442

10 years agomsp430.c (msp430_builtin): Add MSP430_BUILTIN_DELAY_CYCLES.
DJ Delorie [Wed, 14 May 2014 21:27:21 +0000 (17:27 -0400)]
msp430.c (msp430_builtin): Add MSP430_BUILTIN_DELAY_CYCLES.

* config/msp430/msp430.c (msp430_builtin): Add
MSP430_BUILTIN_DELAY_CYCLES.
(msp430_init_builtins): Register void __delay_cycles(long long).
(msp430_builtin_decl): Add it.
(cg_magic_constant): New.
(msp430_expand_delay_cycles): New.
(msp430_expand_builtin): Call it.
(msp430_print_operand_raw): Change integer printing from "int" to
HOST_WIDE_INT.
* config/msp430/msp430.md (define_constants): Add delay_cycles tags.
(delay_cycles_start): New.
(delay_cycles_end): New.
(delay_cycles_32): New.
(delay_cycles_32x): New.
(delay_cycles_16): New.
(delay_cycles_16x): New.
(delay_cycles_2): New.
(delay_cycles_1): New.
* doc/extend.texi: Document __delay_cycles().

From-SVN: r210441

10 years agonios2.md (nios2_cbranch): Fix paste-o in length attribute computation.
Sandra Loosemore [Wed, 14 May 2014 21:18:33 +0000 (17:18 -0400)]
nios2.md (nios2_cbranch): Fix paste-o in length attribute computation.

2014-05-14  Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* config/nios2/nios2.md (nios2_cbranch): Fix paste-o in
length attribute computation.

From-SVN: r210440

10 years agocp-tree.h (DIRECT_LIST_INIT_P): Add.
Paolo Carlini [Wed, 14 May 2014 20:56:04 +0000 (20:56 +0000)]
cp-tree.h (DIRECT_LIST_INIT_P): Add.

2014-05-14  Paolo Carlini  <paolo.carlini@oracle.com>

* cp-tree.h (DIRECT_LIST_INIT_P): Add.
* call.c (convert_like_real, build_new_method_call_1): Use it.
* decl2.c (grokfield): Likewise.
* init.c (perform_member_init, build_aggr_init, expand_default_init,
build_new_1): Likewise.
* mangle.c (write_expression): Likewise.
* parser.c (cp_parser_late_parse_one_default_arg): Likewise.

From-SVN: r210438

10 years agoFix current cygwin build problems.
Bernd Edlinger [Wed, 14 May 2014 17:15:06 +0000 (17:15 +0000)]
Fix current cygwin build problems.

2014-05-14  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix current cygwin build problems.
        * seh_init.c (__gnat_map_SEH): Compile also when __CYGWIN__ and __SEH__
        are defined.  Move include windows.h before system.h.
        * s-oscons-tmplt.c (DTR_CONTROL_ENABLE, RTS_CONTROL_ENABLE): Compile
        also when __CYGWIN__ is defined.  Include windef.h before winbase.h.

From-SVN: r210437

10 years agore PR c++/20332 (poor diagnostic when bind non lvalue to a reference for default...
Jason Merrill [Wed, 14 May 2014 16:48:07 +0000 (12:48 -0400)]
re PR c++/20332 (poor diagnostic when bind non lvalue to a reference for default arguments)

PR c++/20332
PR c++/21631
* call.c (reference_binding): Treat lvalue/rvalue mismatch and
dropped cv-quals as a bad conversion.
(convert_like_real) [ck_ref_bind]: Explain them.
(compare_ics): Check badness before stripping reference
bindings.  Handle comparing bad reference bindings.
* typeck.c (comp_cv_qualification): Add overload that just takes
integers.
* cp-tree.h: Declare it.

From-SVN: r210436

10 years agocall.c (struct conversion_info): Rename 'from_type' to 'from'.
Jason Merrill [Wed, 14 May 2014 16:47:54 +0000 (12:47 -0400)]
call.c (struct conversion_info): Rename 'from_type' to 'from'.

* call.c (struct conversion_info): Rename 'from_type' to 'from'.
(arg_conversion_rejection, bad_arg_conversion_rejection)
(explicit_conversion_rejection, template_conversion_rejection): Adjust.
(add_function_candidate): Pass actual argument, rather than type, to
bad_arg_conversion_rejection.
(print_conversion_rejection): Explain what's wrong with the conversion.
(print_z_candidate): Say "candidate:" before each candidate.
(splice_viable): Be strict if we see a viable or template candidate.
(build_user_type_conversion_1): Pass false to strict parameter.
(perform_overload_resolution, build_conditional_expr_1): Likewise.
(build_new_op_1, build_new_method_call_1): Likewise.
(build_op_call_1): Pass true to strict parameter.

From-SVN: r210435

10 years agore PR debug/61188 (Many -fcompare-debug failures)
Richard Sandiford [Wed, 14 May 2014 15:53:11 +0000 (15:53 +0000)]
re PR debug/61188 (Many -fcompare-debug failures)

gcc/
PR debug/61188
* print-rtl.c (print_rtx): Suppress uids if flag_dump_unnumbered.

From-SVN: r210429

10 years agore PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)
Richard Sandiford [Wed, 14 May 2014 15:42:52 +0000 (15:42 +0000)]
re PR bootstrap/61084 (wide-int merge broke Solaris/SPARC bootstrap)

gcc/
PR target/61084
* config/sparc/sparc.md: Fix types of low and high in DI constant
splitter.  Use gen_int_mode in some other splitters.

From-SVN: r210428

10 years agodecl.c (gnat_to_gnu_entity): Convert integer_one_node to the appropriate type.
Richard Sandiford [Wed, 14 May 2014 15:42:25 +0000 (15:42 +0000)]
decl.c (gnat_to_gnu_entity): Convert integer_one_node to the appropriate type.

gcc/ada/
* gcc-interface/decl.c (gnat_to_gnu_entity): Convert
integer_one_node to the appropriate type.
* gcc-interface/trans.c (gnat_to_gnu): Likewise.
(pos_to_constructor): Likewise.

From-SVN: r210427

10 years agore PR gcov-profile/60897 (Mangled function name in warning during -fprofile-use phase...
Martin Jambor [Wed, 14 May 2014 15:32:31 +0000 (17:32 +0200)]
re PR gcov-profile/60897 (Mangled function name in warning during -fprofile-use phase of Firefox build)

2014-05-14  Martin Jambor  <mjambor@suse.cz>

PR ipa/60897
* ipa-prop.c (ipa_modify_formal_parameters): Reset DECL_LANG_SPECIFIC.

From-SVN: r210426

10 years agocplus-dmem.c (internal_cplus_demangle): Free any resources allocated by possible...
Andrew Burgess [Wed, 14 May 2014 14:18:49 +0000 (14:18 +0000)]
cplus-dmem.c (internal_cplus_demangle): Free any resources allocated by possible previous call to gnu_special.

libiberty/
2014-05-14  Andrew Burgess  <aburgess@broadcom.com>

* cplus-dmem.c (internal_cplus_demangle): Free any resources
allocated by possible previous call to gnu_special.
(squangle_mop_up): Reset pointers to NULL after calling free.
* testsuite/demangle-expected: New test case.

From-SVN: r210425

10 years agocleanup bogus entry
Christian Bruel [Wed, 14 May 2014 14:00:30 +0000 (16:00 +0200)]
cleanup bogus entry

From-SVN: r210424

10 years agoomp-low.c (expand_parallel_call): Remove shadow variable.
James Norris [Wed, 14 May 2014 13:38:57 +0000 (13:38 +0000)]
omp-low.c (expand_parallel_call): Remove shadow variable.

* omp-low.c (expand_parallel_call): Remove shadow variable.
(expand_omp_taskreg): Likewise.

From-SVN: r210423

10 years agoAdd execution tests of ARM TRN Intrinsics.
Alan Lawrence [Wed, 14 May 2014 13:23:29 +0000 (13:23 +0000)]
Add execution tests of ARM TRN Intrinsics.

* gcc.target/arm/simd/vtrnqf32_1.c: New file.
* gcc.target/arm/simd/vtrnqp16_1.c: New file.
* gcc.target/arm/simd/vtrnqp8_1.c: New file.
* gcc.target/arm/simd/vtrnqs16_1.c: New file.
* gcc.target/arm/simd/vtrnqs32_1.c: New file.
* gcc.target/arm/simd/vtrnqs8_1.c: New file.
* gcc.target/arm/simd/vtrnqu16_1.c: New file.
* gcc.target/arm/simd/vtrnqu32_1.c: New file.
* gcc.target/arm/simd/vtrnqu8_1.c: New file.
* gcc.target/arm/simd/vtrnf32_1.c: New file.
* gcc.target/arm/simd/vtrnp16_1.c: New file.
* gcc.target/arm/simd/vtrnp8_1.c: New file.
* gcc.target/arm/simd/vtrns16_1.c: New file.
* gcc.target/arm/simd/vtrns32_1.c: New file.
* gcc.target/arm/simd/vtrns8_1.c: New file.
* gcc.target/arm/simd/vtrnu16_1.c: New file.
* gcc.target/arm/simd/vtrnu32_1.c: New file.
* gcc.target/arm/simd/vtrnu8_1.c: New file.

From-SVN: r210422

10 years agogcc/
Ilya Tocar [Wed, 14 May 2014 12:41:42 +0000 (12:41 +0000)]
gcc/
* common/config/i386/i386-common.c
(OPTION_MASK_ISA_CLFLUSHOPT_SET): Define.
(OPTION_MASK_ISA_XSAVES_SET): Ditto.
(OPTION_MASK_ISA_XSAVEC_SET): Ditto.
(OPTION_MASK_ISA_CLFLUSHOPT_UNSET): Ditto.
(OPTION_MASK_ISA_XSAVES_UNSET): Ditto.
(OPTION_MASK_ISA_XSAVEC_UNSET): Ditto.
(ix86_handle_option): Handle OPT_mxsavec, OPT_mxsaves,
OPT_mclflushopt.
* config.gcc (i[34567]86-*-*): Add clflushoptintrin.h,
xsavecintrin.h, xsavesintrin.h.
(x86_64-*-*): Ditto.
* config/i386/clflushoptintrin.h: New.
* config/i386/xsavecintrin.h: Ditto.
* config/i386/xsavesintrin.h: Ditto.
* config/i386/cpuid.h (bit_CLFLUSHOPT): Define.
(bit_XSAVES): Ditto.
(bit_XSAVES): Ditto.
* config/i386/driver-i386.c (host_detect_local_cpu): Handle
-mclflushopt, -mxsavec, -mxsaves, -mno-xsaves, -mno-xsavec,
-mno-clflushopt.
* config/i386/i386-c.c (ix86_target_macros_internal): Handle
OPTION_MASK_ISA_CLFLUSHOPT, OPTION_MASK_ISA_XSAVEC,
OPTION_MASK_ISA_XSAVES.
* config/i386/i386.c (ix86_target_string): Handle -mclflushopt,
-mxsavec, -mxsaves.
(PTA_CLFLUSHOPT) Define.
(PTA_XSAVEC): Ditto.
(PTA_XSAVES): Ditto.
(ix86_option_override_internal): Handle new options.
(ix86_valid_target_attribute_inner_p): Ditto.
(ix86_builtins): Add IX86_BUILTIN_XSAVEC, IX86_BUILTIN_XSAVEC64,
IX86_BUILTIN_XSAVES, IX86_BUILTIN_XRSTORS, IX86_BUILTIN_XSAVES64,
IX86_BUILTIN_XRSTORS64, IX86_BUILTIN_CLFLUSHOPT.
(bdesc_special_args): Add __builtin_ia32_xsaves, __builtin_ia32_xrstors,
__builtin_ia32_xsavec, __builtin_ia32_xsaves64, __builtin_ia32_xrstors64,
__builtin_ia32_xsavec64.
(ix86_init_mmx_sse_builtins): Add __builtin_ia32_clflushopt.
(ix86_expand_builtin): Handle new builtins.
* config/i386/i386.h (TARGET_CLFLUSHOPT) Define.
(TARGET_CLFLUSHOPT_P): Ditto.
(TARGET_XSAVEC): Ditto.
(TARGET_XSAVEC_P): Ditto.
(TARGET_XSAVES): Ditto.
(TARGET_XSAVES_P): Ditto.
* config/i386/i386.md (ANY_XSAVE): Add UNSPECV_XSAVEC, UNSPECV_XSAVES.
(ANY_XSAVE64)" Add UNSPECV_XSAVEC64, UNSPECV_XSAVES64.
(attr xsave): Add xsavec, xsavec64, xsaves, xsaves64.
(ANY_XRSTOR): New.
(ANY_XRSTOR64): Ditto.
(xrstor): Ditto.
(xrstor): Change into <xrstor>.
(xrstor_rex64): Change into <xrstor>_rex64.
(xrstor64): Change into <xrstor>64
(clflushopt): New.
* config/i386/i386.opt (mclflushopt): New.
(mxsavec): Ditto.
(mxsaves): Ditto.
* config/i386/x86intrin.h: Add clflushoptintrin.h, xsavesintrin.h,
xsavecintrin.h.
* doc/invoke.texi: Document new options.

gcc/testsuite/
* gcc.target/i386/clflushopt-1.c: New.
* gcc.target/i386/xsavec-1.c: Ditto.
* gcc.target/i386/xsavec64-1.c: Ditto.
* gcc.target/i386/xsaves-1.c: Ditto.
* gcc.target/i386/xsaves64-1.c: Ditto.
* gcc.target/i386/sse-12.c: Test new options.
* gcc.target/i386/sse-13.c: Ditto.
* gcc.target/i386/sse-14.c: Ditto.
* gcc.target/i386/sse-22.c: Ditto.
* gcc.target/i386/sse-23.c: Ditto.
* g++.dg/other/i386-2.C: Ditto.
* g++.dg/other/i386-3.C: Ditto.

From-SVN: r210421

10 years agore PR rtl-optimization/60866 (ICE: in get_seqno_for_a_jump, at sel-sched-ir.c:4068...
Andrey Belevantsev [Wed, 14 May 2014 12:09:02 +0000 (16:09 +0400)]
re PR rtl-optimization/60866 (ICE: in get_seqno_for_a_jump, at sel-sched-ir.c:4068 with -fselective-scheduling -fno-if-conversion)

        PR rtl-optimization/60866
        * sel-sched-ir (sel_init_new_insn): New parameter old_seqno.
        Default it to -1.  Pass it down to init_simplejump_data.
        (init_simplejump_data): New parameter old_seqno.  Pass it down
        to get_seqno_for_a_jump.
        (get_seqno_for_a_jump): New parameter old_seqno.  Use it for
        initializing new jump seqno as a last resort.  Add comment.
        (sel_redirect_edge_and_branch): Save old seqno of the conditional
        jump and pass it down to sel_init_new_insn.
        (sel_redirect_edge_and_branch_force): Likewise.

* gcc.dg/pr60866.c: New test.

From-SVN: r210420

10 years agoavr.h (REG_CLASS_CONTENTS): Use unsigned suffix for shifted values to avoid build...
Georg-Johann Lay [Wed, 14 May 2014 11:05:40 +0000 (11:05 +0000)]
avr.h (REG_CLASS_CONTENTS): Use unsigned suffix for shifted values to avoid build warning.

* config/avr/avr.h (REG_CLASS_CONTENTS): Use unsigned suffix for
shifted values to avoid build warning.

From-SVN: r210418

10 years agocfgcleanup.c (try_forward_edges): Use location_t for locations.
Eric Botcazou [Wed, 14 May 2014 10:36:23 +0000 (10:36 +0000)]
cfgcleanup.c (try_forward_edges): Use location_t for locations.

* cfgcleanup.c (try_forward_edges): Use location_t for locations.
* cfgrtl.c (rtl_merge_blocks): Fix comment.
(cfg_layout_merge_blocks): Likewise.
* except.c (emit_to_new_bb_before): Remove prev_bb local variable.

From-SVN: r210416

10 years agore PR rtl-optimization/60901 (ICE: SIGSEGV in add_to_deps_list with -fsel-sched-pipel...
Andrey Belevantsev [Wed, 14 May 2014 09:46:26 +0000 (13:46 +0400)]
re PR rtl-optimization/60901 (ICE: SIGSEGV in add_to_deps_list with -fsel-sched-pipelining-outer-loops)

PR rtl-optimization/60901
* config/i386/i386.c (ix86_dependencies_evaluation_hook): Check that
bb predecessor belongs to the same scheduling region.  Adjust comment.

* gcc.target/i386/pr60901.c: New test.

From-SVN: r210414

10 years agore PR sanitizer/61100 (asan/tsan should have the sanitizer includes)
Yury Gribov [Wed, 14 May 2014 08:33:45 +0000 (08:33 +0000)]
re PR sanitizer/61100 (asan/tsan should have the sanitizer includes)

2014-05-14  Yury Gribov  <y.gribov@samsung.com>

PR sanitizer/61100
* Makefile.am (nodist_saninclude_HEADERS): Install
public headers.
* Makefile.in: Regenerate.

* c-c++-common/asan/asan-interface-1.c: New test.
* lib/asan-dg.exp (asan_include_flags): New function.
(asan_init): Call asan_include_flags to obtain path
to sanitizer headers.

From-SVN: r210413

10 years agoDaily bump.
GCC Administrator [Wed, 14 May 2014 00:17:12 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210410

10 years agosourcebuild.texi: (dfp_hw): Document.
Peter Bergner [Tue, 13 May 2014 23:44:42 +0000 (18:44 -0500)]
sourcebuild.texi: (dfp_hw): Document.

gcc/
* doc/sourcebuild.texi: (dfp_hw): Document.
(p8vector_hw): Likewise.
(powerpc_eabi_ok): Likewise.
(powerpc_elfv2): Likewise.
(powerpc_htm_ok): Likewise.
(ppc_recip_hw): Likewise.
(vsx_hw): Likewise.

gcc/testsuite/
* lib/target-support.exp (check_dfp_hw_available): New function.
(is-effective-target): Check $arg for dfp_hw.
(is-effective-target-keyword): Likewise.
* gcc.target/powerpc/pack03.c: (dg-require-effective-target):
Change target to dfp_hw.

From-SVN: r210404

10 years ago* gcc-interface/decl.c (annotate_value): Fix thinko in latest change.
Eric Botcazou [Tue, 13 May 2014 21:17:07 +0000 (21:17 +0000)]
* gcc-interface/decl.c (annotate_value): Fix thinko in latest change.

From-SVN: r210403

10 years agocall.c (print_error_for_call_failure): Say "no match" rather than "ambiguous" if...
Jason Merrill [Tue, 13 May 2014 21:10:03 +0000 (17:10 -0400)]
call.c (print_error_for_call_failure): Say "no match" rather than "ambiguous" if there were no strict matches.

* call.c (print_error_for_call_failure): Say "no match" rather
than "ambiguous" if there were no strict matches.
(build_new_method_call_1): Likewise.

From-SVN: r210402

10 years agoForce the use of -ggnu-pubnames when using -gsplit-dwarf.
Cary Coutant [Tue, 13 May 2014 17:55:30 +0000 (17:55 +0000)]
Force the use of -ggnu-pubnames when using -gsplit-dwarf.

gcc/
* opts.c (finish_options): Use -ggnu-pubnames with -gsplit-dwarf.

From-SVN: r210395

10 years agore PR c++/61151 (ICE with lambda)
Jason Merrill [Tue, 13 May 2014 17:54:00 +0000 (13:54 -0400)]
re PR c++/61151 (ICE with lambda)

PR c++/61151
* semantics.c (is_this_parameter): Allow capture proxies too.

From-SVN: r210394

10 years agore PR c/61162 (possibly bad error location with -Wc++-compat)
Marek Polacek [Tue, 13 May 2014 17:41:12 +0000 (17:41 +0000)]
re PR c/61162 (possibly bad error location with -Wc++-compat)

PR c/61162
* c-typeck.c (convert_for_assignment): Pass location to
WARN_FOR_ASSIGNMENT instead of input_location.

* gcc.dg/pr61162.c: New test.

From-SVN: r210393

10 years agopr50459.c: Move cdtor tests to a separate testcase.
Marek Polacek [Tue, 13 May 2014 17:37:40 +0000 (17:37 +0000)]
pr50459.c: Move cdtor tests to a separate testcase.

* c-c++-common/pr50459.c: Move cdtor tests to a separate testcase.
* c-c++-common/pr50459-2.c: New test.

From-SVN: r210390

10 years agore PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it...
Jonathan Wakely [Tue, 13 May 2014 17:22:08 +0000 (18:22 +0100)]
re PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it's not required to be a complete type)

PR libstdc++/60497
* include/debug/array (get): Qualify call to other get overload.
* include/profile/array (get): Likewise.
* include/std/array (get): Likewise.
* include/std/functional (_Mu, _Bind, _Bind_result): Qualify std::get.
* include/std/mutex (unique_lock, call_once): Use __addressof.
(__unlock_impl): Remove unused template.
(__try_to_lock): Declare inline.
(__try_lock_impl::__do_try_lock): Qualify function calls.
(lock): Avoid narrowing conversion.
* testsuite/20_util/bind/60497.cc: New.
* testsuite/23_containers/array/element_access/60497.cc: New.
* testsuite/30_threads/call_once/60497.cc: New.
* testsuite/30_threads/unique_lock/cons/60497.cc: New.

From-SVN: r210388

10 years agoEnable Java on Cygwin-64
Bernd Edlinger [Tue, 13 May 2014 16:23:11 +0000 (16:23 +0000)]
Enable Java on Cygwin-64

Currently it is not possible to build GCC's libjava support on Cygwin-64.

This patch fixes the current build-problems on Cygwin-64 and the most
fundamental bugs on that platform.

Note you must still add --enable-threads=posix to successfully build the
java language support.

boehm-gc/ChangeLog:

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix current cygwin-64 build problems.
        * include/gc_config_macros.h (GC_PTHREADS): Use __CYGWIN__ instead
        of __CYGWIN32__ here.
        * win32_threads.c (GC_push_all_stacks): Push all X86_64 registers.
        (GC_get_thread_stack_base): Get the stack base for X86_64.

libffi/ChangeLog:

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix current cygwin-64 build problems.
        * src/java_raw_api.c: Remove if !defined(FFI_NO_RAW_API).
        * src/x86/ffi.c: Add if defined(__CYGWIN__).
        * src/x86/win64.S (ffi_closure_win64, ffi_call_win64): Added
        handling for FFI_TYPE_UINT64, FFI_TYPE_POINTER and FFI_TYPE_INT.
        Added SEH information.  Fixed formatting.

libgcc/ChangeLog:

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * unwind-seh.c (_Unwind_Backtrace): Uncommented, finished
        implementation.

libjava/ChangeLog:

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix current cygwin-64 build problems.
        * configure.host: Added handling for x86_64-*-cygwin/mingw.
        * boehm.cc (_Jv_GCAttachThread, _Jv_GCDetachThread): Don't compile if
        GC_WIN32_THREADS is defined.
        * java/lang/natClass.cc (_Jv_InterfaceAssignableFrom): Rename interface
        to source_interface.

libjava/classpath/ChangeLog:

2014-05-13  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        Fix current cygwin-64 build problems.
        * native/fdlibm/mprec.c (_REENT_CHECK_MP, _REENT_MP_FREELIST,
        _REENT_MP_P5S, __ULong, __Long): Undefine previous definitions.

From-SVN: r210386

10 years agore PR c++/54310 (Order of operations during overload resolution)
Paolo Carlini [Tue, 13 May 2014 16:14:19 +0000 (16:14 +0000)]
re PR c++/54310 (Order of operations during overload resolution)

2014-05-13  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/54310
* g++.dg/template/pr54310.C: New.

From-SVN: r210385

10 years agogengtype: Support explicit pointers in template arguments
David Malcolm [Tue, 13 May 2014 15:17:34 +0000 (15:17 +0000)]
gengtype: Support explicit pointers in template arguments

gcc/
2014-05-13  David Malcolm  <dmalcolm@redhat.com>

* gengtype-parse.c (require3): Eliminate in favor of...
(require4): New.
(require_template_declaration): Update to support optional single *
on a type.

* gengtype.c (get_ultimate_base_class): Add a non-const overload.
(create_user_defined_type): Handle a single level of explicit
pointerness within template arguments.
(struct write_types_data): Add field "kind".
(filter_type_name): Handle "*" character.
(write_user_func_for_structure_ptr): Require a write_types_data
rather than just a prefix string, so that we can look up the kind
of the wtd and use it as an index into wrote_user_func_for_ptr,
ensuring that such functions are written at most once.  Support
subclasses by invoking the marking function of the ultimate base
class.
(write_user_func_for_structure_body): Require a write_types_data
rather than just a prefix string, so that we can pass this to
write_user_func_for_structure_ptr.
(write_func_for_structure): Likewise.
(ggc_wtd): Add initializer of new "kind" field.
(pch_wtd): Likewise.

* gengtype.h (enum write_types_kinds): New.
(struct type): Add field wrote_user_func_for_ptr to the "s"
union member.

From-SVN: r210379

10 years agofold-const.c (optimize_bit_field_compare): Use wi:: operations instead of const_binop.
Richard Sandiford [Tue, 13 May 2014 13:51:32 +0000 (13:51 +0000)]
fold-const.c (optimize_bit_field_compare): Use wi:: operations instead of const_binop.

gcc/
* fold-const.c (optimize_bit_field_compare): Use wi:: operations
instead of const_binop.
(fold_binary_loc): Likewise.

From-SVN: r210378

10 years agotree-dfa.h (get_addr_base_and_unit_offset_1): Update array index calculation to match...
Richard Sandiford [Tue, 13 May 2014 13:51:20 +0000 (13:51 +0000)]
tree-dfa.h (get_addr_base_and_unit_offset_1): Update array index calculation to match get_ref_base_and_extent.

gcc/
* tree-dfa.h (get_addr_base_and_unit_offset_1): Update array index
calculation to match get_ref_base_and_extent.

From-SVN: r210377

10 years agoconfigure.ac: Fix assembly for explicit JALR relocation check.
Catherine Moore [Tue, 13 May 2014 13:36:56 +0000 (09:36 -0400)]
configure.ac: Fix assembly for explicit JALR relocation check.

2014-05-13  Catherine Moore  <clm@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/
* configure.ac: Fix assembly for explicit JALR relocation check.
* configure: Regenerate.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210375

10 years agoloongson-simd.c: Disable micromips too.
Nathan Sidwell [Tue, 13 May 2014 13:35:20 +0000 (13:35 +0000)]
loongson-simd.c: Disable micromips too.

2014-05-13  Nathan Sidwell  <nathan@codesourcery.com>
    Sandra Loosemore  <sandra@codesourcery.com>

gcc/testsuite/
* gcc.target/mips/loongson-simd.c: Disable micromips too.

Co-Authored-By: Sandra Loosemore <sandra@codesourcery.com>
From-SVN: r210374

10 years ago[ARM] Remove builtins for vzup, vuzp, vtrn and cleanup.
Kyrylo Tkachov [Tue, 13 May 2014 13:02:33 +0000 (13:02 +0000)]
[ARM] Remove builtins for vzup, vuzp, vtrn and cleanup.

* config/arm/arm.c (neon_itype): Remove NEON_RESULTPAIR.
(arm_init_neon_builtins): Remove handling of NEON_RESULTPAIR.
Remove associated type declarations and initialisations.
(arm_expand_neon_builtin): Likewise.
(neon_emit_pair_result_insn): Delete.
* config/arm/arm_neon_builtins (vtrn, vzip, vuzp): Delete.
* config/arm/neon.md (neon_vtrn<mode>): Delete.
(neon_vzip<mode>): Likewise.
(neon_vuzp<mode>): Likewise.

From-SVN: r210369

10 years agonear-far-1.c: Adjust expected output to allow the JALS instruction.
Catherine Moore [Tue, 13 May 2014 12:51:39 +0000 (12:51 +0000)]
near-far-1.c: Adjust expected output to allow the JALS instruction.

2014-05-13  Catherine Moore  <clm@cm00re.com>

        * gcc.target/mips/near-far-1.c: Adjust expected output
        to allow the JALS instruction.
        * gcc.target/mips/near-far-2.c: Likewise.
        * gcc.target/mips/near-far-4.c: Likewise.

From-SVN: r210368

10 years agore PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it...
Jonathan Wakely [Tue, 13 May 2014 11:18:01 +0000 (12:18 +0100)]
re PR libstdc++/60497 (unique_ptr<T> tries to complete its type T even though it's not required to be a complete type)

PR libstdc++/60497
* include/std/tuple (get, __tuple_compare): Qualify more calls to
prevent ADL. Cast comparison results to bool.
* testsuite/20_util/tuple/60497.cc: Test accessing rvalues.
* testsuite/20_util/tuple/comparison_operators/overloaded.cc: New.

From-SVN: r210366

10 years agore PR ipa/60973 (Invalid propagation of a tail call in devirt pass)
Richard Biener [Tue, 13 May 2014 11:04:44 +0000 (11:04 +0000)]
re PR ipa/60973 (Invalid propagation of a tail call in devirt pass)

2014-05-13  Richard Biener  <rguenther@suse.de>

PR ipa/60973
* tree-inline.c (remap_gimple_stmt): Clear tail call flag,
it needs revisiting whether the call still may be tail-called.

From-SVN: r210364

10 years agortl.def (SYMBOL_REF): Remove middle "0" field.
Richard Sandiford [Tue, 13 May 2014 10:39:16 +0000 (10:39 +0000)]
rtl.def (SYMBOL_REF): Remove middle "0" field.

gcc/
* rtl.def (SYMBOL_REF): Remove middle "0" field.
* rtl.h (block_symbol): Reduce number of fields to 2.
(rtx_def): Add u2.symbol_ref_flags.
(SYMBOL_REF_FLAGS): Use it.
(SYMBOL_REF_DATA, SET_SYMBOL_REF_DECL, SYMBOL_REF_DECL)
(SET_SYMBOL_REF_CONSTANT, SYMBOL_REF_CONSTANT): Lower index.
* gengtype.c (adjust_field_rtx_def): Remove SYMBOL_REF_FLAGS handling.
Lower index of SYMBOL_REF_DATA.
* print-rtl.c (print_rtx): Lower index for SYMBOL_REF_DATA.
Print SYMBOL_REF_FLAGS at the same time.
* genattrtab.c (attr_rtx_1): Only initialize 1 "0" SYMBOL_REF field.

From-SVN: r210363

10 years agortl.def (VAR_LOCATION): Remove "i" field.
Richard Sandiford [Tue, 13 May 2014 10:39:08 +0000 (10:39 +0000)]
rtl.def (VAR_LOCATION): Remove "i" field.

gcc/
* rtl.def (VAR_LOCATION): Remove "i" field.
* rtl.h (rtx_def): Add u2.var_location_status.
(PAT_VAR_LOCATION_STATUS): Use it.
(gen_rtx_VAR_LOCATION): Declare.
* gengenrtl.c (excluded_rtx): Add VAR_LOCATION.
* emit-rtl.c (gen_rtx_VAR_LOCATION): New function.
* var-tracking.c (emit_note_insn_var_location): Remove casts.

From-SVN: r210362

10 years agortl.def (scratch): Fix outdated comment and remove "0" field.
Richard Sandiford [Tue, 13 May 2014 10:38:57 +0000 (10:38 +0000)]
rtl.def (scratch): Fix outdated comment and remove "0" field.

gcc/
* rtl.def (scratch): Fix outdated comment and remove "0" field.
* gengtype.c (adjust_field_rtx_def): Update accordingly.

From-SVN: r210361

10 years agogcc/
Richard Sandiford [Tue, 13 May 2014 10:38:50 +0000 (10:38 +0000)]
gcc/
* rtl.def (DEBUG_INSN, INSN, JUMP_INSN, CALL_INSN, JUMP_TABLE_DATA)
(BARRIER, CODE_LABEL, NOTE): Remove first "i" field.
* rtl.h (rtx_def): Add insn_uid to u2 field.
(RTX_FLAG_CHECK8): Delete in favor of...
(RTL_INSN_CHAIN_FLAG_CHECK): ...this new macro.
(INSN_DELETED_P): Update accordingly.
(INSN_UID): Use u2.insn_uid.
(INSN_CHAIN_CODE_P): Define.
(PREV_INSN, NEXT_INSN, BLOCK_FOR_INSN, PATTERN, INSN_LOCATION)
(INSN_CODE, REG_NOTES, CALL_INSN_FUNCTION_USAGE, CODE_LABEL_NUMBER)
(NOTE_DATA, NOTE_DELETED_LABEL_NAME, NOTE_BLOCK, NOTE_EH_HANDLER)
(NOTE_BASIC_BLOCK, NOTE_VAR_LOCATION, NOTE_CFI, NOTE_LABEL_NUMBER)
(NOTE_KIND, LABEL_NAME, LABEL_NUSES, JUMP_LABEL, LABEL_REFS): Lower
indices accordingly.
* print-rtl.c (print_rtx): Print INSN_UIDs before the main loop.
Update indices for insn-chain rtxes.
* gengtype.c (gen_rtx_next): Adjust test for insn-chain rtxes.
(adjust_field_rtx_def): Lower '0' indices for all insn-chain rtxes.
* emit-rtl.c (gen_label_rtx): Update gen_rtx_LABEL call.
* caller-save.c (init_caller_save): Update gen_rtx_INSN calls.
* combine.c (try_combine): Likewise.
* ira.c (setup_prohibited_mode_move_regs): Likewise.

From-SVN: r210360

10 years agortl.def (REG): Remove middle field.
Richard Sandiford [Tue, 13 May 2014 10:38:38 +0000 (10:38 +0000)]
rtl.def (REG): Remove middle field.

gcc/
* rtl.def (REG): Remove middle field.
* rtl.h (rtx_def): Add orignal_regno to u2.
(ORIGINAL_REGNO): Use it instead of field 1.
(REG_ATTRS): Lower field index accordingly.
* gengtype.c (adjust_field_rtx_def): Remove handling of
ORIGINAL_REGNO.  Move REG_ATTRS index down.
* print-rtl.c (print_rtx): Move ORIGINAL_REGNO handling to the
code that prints the REGNO.

From-SVN: r210359

10 years agoprint-rtl.c (print_rtx): Guard whole '0' block with ifndef GENERATOR_FILE.
Richard Sandiford [Tue, 13 May 2014 10:38:27 +0000 (10:38 +0000)]
print-rtl.c (print_rtx): Guard whole '0' block with ifndef GENERATOR_FILE.

gcc/
* print-rtl.c (print_rtx): Guard whole '0' block with ifndef
GENERATOR_FILE.

From-SVN: r210358

10 years agortl.h (rtx_def): Mark u2 as GTY ((skip)).
Richard Sandiford [Tue, 13 May 2014 10:38:17 +0000 (10:38 +0000)]
rtl.h (rtx_def): Mark u2 as GTY ((skip)).

gcc/
* rtl.h (rtx_def): Mark u2 as GTY ((skip)).

From-SVN: r210357

10 years agotree-ssa-loop-ivopts.c (contain_complex_addr_expr): New.
Bin Cheng [Tue, 13 May 2014 10:09:54 +0000 (10:09 +0000)]
tree-ssa-loop-ivopts.c (contain_complex_addr_expr): New.

* tree-ssa-loop-ivopts.c (contain_complex_addr_expr): New.
(alloc_iv): Lower base expressions containing ADDR_EXPR.

* gcc.dg/tree-ssa/ivopts-lower_base.c: New test.

From-SVN: r210356

10 years agoImplement HARD_REGNO_CALLER_SAVE_MODE for AArch64
Ian Bolton [Tue, 13 May 2014 09:28:35 +0000 (09:28 +0000)]
Implement HARD_REGNO_CALLER_SAVE_MODE for AArch64

* config/aarch64/aarch64-protos.h
(aarch64_hard_regno_caller_save_mode): New prototype.
* config/aarch64/aarch64.c (aarch64_hard_regno_caller_save_mode):
New function.
* config/aarch64/aarch64.h (HARD_REGNO_CALLER_SAVE_MODE): New macro.

From-SVN: r210355

10 years agotarget.def (mode_switching): New hook vector.
Christian Bruel [Tue, 13 May 2014 08:50:51 +0000 (10:50 +0200)]
target.def (mode_switching): New hook vector.

2014-05-13  Christian Bruel  <christian.bruel@st.com>

* target.def (mode_switching): New hook vector.
(mode_emit, mode_needed, mode_after, mode_entry): New hooks.
(mode_exit, modepriority_to_mode): Likewise.
* mode-switching.c (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Hookify.
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
(default_priority_to_mode): Define.
* targhooks.h (default_priority_to_mode): Declare.
* target.h: Include tm.h and hard-reg-set.h.
* doc/tm.texi.in (EMIT_MODE_SET, MODE_NEEDED, MODE_AFTER, MODE_ENTRY)
(MODE_EXIT, MODE_PRIORITY_TO_MODE): Delete and hookify.
* doc/tm.texi Regenerate.
* config/sh/sh.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.c (sh_emit_mode_set, sh_mode_priority): Hookify.
(sh_mode_needed, sh_mode_after, sh_mode_entry, sh_mode_exit): Likewise.
* config/i386/i386.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/i386/i386-protos.h (ix86_mode_needed, ix86_mode_after)
(ix86_mode_entrym, ix86_emit_mode_set): Remove external declaration.
* config/i386/i386.c (ix86_mode_needed, ix86_mode_after, ix86_mode_exit,
(ix86_mode_entry, ix86_mode_priority, ix86_emit_mode_set): Hookify.
* config/epiphany/epiphany.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY):
Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.h (MODE_NEEDED, MODE_AFTER, MODE_ENTRY): Delete
(MODE_EXIT, MODE_PRIORITY_TO_MODE, EMIT_MODE_SET): Likewise.
* config/sh/sh.c (sh4_emit_mode_set, sh4_mode_needed): Hookify.
(sh4_mode_after, sh4_mode_entry, sh4_mode_exit): Likewise.
* config/epiphany/epiphany-protos.h (epiphany_mode_needed)
(emit_set_fp_mode, epiphany_mode_entry_exit, epiphany_mode_after)
(epiphany_mode_priority_to_mode): Remove declaration.
* config/epiphany/epiphany.c (emit_set_fp_mode): Hookify.
(epiphany_mode_needed, epiphany_mode_priority_to_mode): Likewise.
(epiphany_mode_entry, epiphany_mode_exit, epiphany_mode_after):
Likewise.
(epiphany_mode_priority_to_mode): Change priority type. Hookify.
(epiphany_mode_needed, epiphany_mode_entry_exit): Hookify.
(epiphany_mode_after, epiphany_mode_entry, emit_set_fp_mode): Hookify.

From-SVN: r210354

10 years agore PR target/61060 (ICE: in int_mode_for_mode, at stor-layout.c:400 with -free-ter)
Jakub Jelinek [Tue, 13 May 2014 08:28:53 +0000 (10:28 +0200)]
re PR target/61060 (ICE: in int_mode_for_mode, at stor-layout.c:400 with -free-ter)

PR target/61060
* config/i386/i386.c (ix86_expand_set_or_movmem): If count_exp
is const0_rtx, return immediately.  Don't test count == 0 when
it is always true.

* gcc.dg/pr61060.c: New test.

From-SVN: r210352

10 years agoMakefile.in: add shrink-wrap.o.
Zhenqiang Chen [Tue, 13 May 2014 07:05:46 +0000 (07:05 +0000)]
Makefile.in: add shrink-wrap.o.

2014-05-13  Zhenqiang Chen  <zhenqiang.chen@linaro.org>

* Makefile.in: add shrink-wrap.o.
* config/i386/i386.c: include "shrink-wrap.h"
* function.c: Likewise.
(requires_stack_frame_p, next_block_for_reg,
move_insn_for_shrink_wrap, prepare_shrink_wrap,
dup_block_and_redirect): Move to shrink-wrap.c
(thread_prologue_and_epilogue_insns): Extract three code segments
as functions in shrink-wrap.c
* function.h: Move #ifdef HAVE_simple_return ... #endif block to
shrink-wrap.h
* shrink-wrap.c: New file.
* shrink-wrap.h: New file.

From-SVN: r210351

10 years agocall.c (maybe_print_user_conv_context): New.
Jason Merrill [Tue, 13 May 2014 03:21:18 +0000 (23:21 -0400)]
call.c (maybe_print_user_conv_context): New.

* call.c (maybe_print_user_conv_context): New.
(convert_like_real): Use it.  Print call context for bad
user-defined conversion.
(build_over_call): Print call context for bad 'this' conversion.

From-SVN: r210350

10 years agoDaily bump.
GCC Administrator [Tue, 13 May 2014 00:17:03 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210349

10 years agoextend.texi: Reflect current numbers of pragmas.
David Wohlferd [Mon, 12 May 2014 22:37:23 +0000 (22:37 +0000)]
extend.texi: Reflect current numbers of pragmas.

* doc/extend.texi: Reflect current numbers of pragmas.  Remove
reference to Solaris.

From-SVN: r210343

10 years agosibcall-3.c: MSP430 doesn't have sibcall.
DJ Delorie [Mon, 12 May 2014 22:12:31 +0000 (18:12 -0400)]
sibcall-3.c: MSP430 doesn't have sibcall.

* gcc.dg/sibcall-3.c: MSP430 doesn't have sibcall.
* gcc.dg/sibcall-4.c: Likewise.

From-SVN: r210341

10 years agore PR other/31778 (genattrtab.c doesn't record filename)
Mike Stump [Mon, 12 May 2014 21:22:20 +0000 (21:22 +0000)]
re PR other/31778 (genattrtab.c doesn't record filename)

        PR other/31778
        * genattrtab.c (filename): Add.
        (convert_set_attr_alternative): Improve error message.
(check_defs): Restore read_md_filename for error messages.
        (gen_insn): Save filename.

From-SVN: r210340

10 years agoinvoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar...
Dimitris Papavasiliou [Mon, 12 May 2014 20:55:54 +0000 (20:55 +0000)]
invoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar-visibility.

2014-05-12  Dimitris Papavasiliou  <dpapavas@gmail.com>

            * doc/invoke.texi: Document new switches -Wno-shadow-ivar,
            -fno-local-ivars and -fivar-visibility.
            * c-family/c.opt: Make -Wshadow also implicitly enable
            -Wshadow-ivar.

testsuite:
            * objc.dg/shadow-1.m: New test.
            * objc.dg/shadow-2.m: New test.
            * objc.dg/ivar-scope-1.m: New test.
            * objc.dg/ivar-scope-2.m: New test.
            * objc.dg/ivar-scope-3.m: New test.
            * objc.dg/ivar-scope-4.m: New test.
            * objc.dg/ivar-visibility-1.m: New test.
            * objc.dg/ivar-visibility-2.m: New test.
            * objc.dg/ivar-visibility-3.m: New test.
            * objc.dg/ivar-visibility-4.m: New test.

Now, actuatally add the files....

From-SVN: r210339

10 years agoFix stack overflow crash in getcwd intrinsic.
Janne Blomqvist [Mon, 12 May 2014 19:23:11 +0000 (22:23 +0300)]
Fix stack overflow crash in getcwd intrinsic.

2014-05-12  Janne Blomqvist  <jb@gcc.gnu.org>

PR libfortran/61035
* intrinsics/getcwd.c (getcwd_i4_sub): Avoid potentially large
stack allocation, avoid extra copying in the common case.

From-SVN: r210335

10 years agoUse -std=gnu11 instead of -std=gnu99 for libgfortran C code.
Janne Blomqvist [Mon, 12 May 2014 19:20:50 +0000 (22:20 +0300)]
Use -std=gnu11 instead of -std=gnu99 for libgfortran C code.

2014-05-12  Janne Blomqvist  <jb@gcc.gnu.org>

* configure.ac (AM_CFLAGS): Use -std=gnu11.
(CFLAGS): Likewise.
* configure: Regenerated.

From-SVN: r210334

10 years agoinvoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar...
Dimitris Papavasiliou [Mon, 12 May 2014 19:12:27 +0000 (19:12 +0000)]
invoke.texi: Document new switches -Wno-shadow-ivar, -fno-local-ivars and -fivar-visibility.

2014-05-12  Dimitris Papavasiliou  <dpapavas@gmail.com>

    * doc/invoke.texi: Document new switches -Wno-shadow-ivar,
    -fno-local-ivars and -fivar-visibility.
    * c-family/c.opt: Make -Wshadow also implicitly enable
    -Wshadow-ivar.

testsuite:
    * objc.dg/shadow-1.m: New test.
    * objc.dg/shadow-2.m: New test.
    * objc.dg/ivar-scope-1.m: New test.
    * objc.dg/ivar-scope-2.m: New test.
    * objc.dg/ivar-scope-3.m: New test.
    * objc.dg/ivar-scope-4.m: New test.
    * objc.dg/ivar-visibility-1.m: New test.
    * objc.dg/ivar-visibility-2.m: New test.
    * objc.dg/ivar-visibility-3.m: New test.
    * objc.dg/ivar-visibility-4.m: New test.

From-SVN: r210333

10 years agocall.c (convert_like_real): Use inform for identifying the declaration point.
Jason Merrill [Mon, 12 May 2014 19:07:55 +0000 (15:07 -0400)]
call.c (convert_like_real): Use inform for identifying the declaration point.

* call.c (convert_like_real): Use inform for identifying the
declaration point.

From-SVN: r210332

10 years agore PR fortran/60127 (ICE with OpenMP and DO CONCURRENT)
Tobias Burnus [Mon, 12 May 2014 19:00:08 +0000 (21:00 +0200)]
re PR fortran/60127 (ICE with OpenMP and DO CONCURRENT)

2014-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60127
        * openmp.c (resolve_omp_do): Reject do concurrent loops.

2014-05-12  Tobias Burnus  <burnus@net-b.de>

        PR fortran/60127
        * gfortran.dg/gomp/omp_do_concurrent.f90: New.

From-SVN: r210331

10 years agotm.texi: Remove reference to deleted macro.
David Wohlferd [Mon, 12 May 2014 16:22:15 +0000 (16:22 +0000)]
tm.texi: Remove reference to deleted macro.

2014-05-12  David Wohlferd <dw@LimeGreenSocks.com>

* doc/tm.texi: Remove reference to deleted macro.
* doc/tm.texi.in: Likewise.

From-SVN: r210330

10 years agore PR fortran/60834 ([OOP] ICE with ASSOCIATE construct (gimplify_var_or_parm_decl...
Thomas Koenig [Mon, 12 May 2014 16:17:09 +0000 (16:17 +0000)]
re PR fortran/60834 ([OOP] ICE with ASSOCIATE  construct (gimplify_var_or_parm_decl, at gimplify.c:1721))

2014-05-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60834
* frontend-passes.c (in_assoc_list):  New variable.
(optimize_namespace):  Initialize in_assoc_list
(combine_array_constructor): Don't try to combine
assoc lists.
(gfc_code_walker):  Keep track of in_assoc_list.

2014-05-12  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/60834
* gfortran.dg/associate_16.f90:  New test.

From-SVN: r210329

10 years agocvt.c (cp_convert_to_pointer): Don't call error_at if complain & tf_error is false.
Paolo Carlini [Mon, 12 May 2014 15:33:35 +0000 (15:33 +0000)]
cvt.c (cp_convert_to_pointer): Don't call error_at if complain & tf_error is false.

2014-05-12  Paolo Carlini  <paolo.carlini@oracle.com>

* cvt.c (cp_convert_to_pointer): Don't call error_at if
complain & tf_error is false.

* decl.c (make_unbound_class_template): Prefer inform for
"declared here"-type message.

From-SVN: r210326

10 years agore PR target/60991 ([avr] Stack corruption when using 24-bit integers __int24 or...
Senthil Kumar Selvaraj [Mon, 12 May 2014 15:33:00 +0000 (15:33 +0000)]
re PR target/60991 ([avr] Stack corruption when using 24-bit integers __int24 or __memx pointers in large stack frame)

gcc/ChangeLog

PR target/60991
* config/avr/avr.c (avr_out_store_psi): Use correct constant
to restore Y.

gcc/testsuite/ChangeLog

PR target/60991
* gcc.target/avr/pr60991.c: New testcase.

From-SVN: r210325

10 years agore PR c++/60054 ([c++1y] ICE with auto* cast)
Paolo Carlini [Mon, 12 May 2014 09:17:46 +0000 (09:17 +0000)]
re PR c++/60054 ([c++1y] ICE with auto* cast)

2014-05-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60054
* g++.dg/cpp1y/pr60054.C: New.

From-SVN: r210323

10 years agoarm.h (License): Add GCC Runtime Library Exception.
Georg-Johann Lay [Mon, 12 May 2014 09:02:36 +0000 (09:02 +0000)]
arm.h (License): Add GCC Runtime Library Exception.

gcc/
* config/arm/arm.h (License): Add GCC Runtime Library Exception.
* config/arm/aout.h (License): Same.
* config/arm/bpabi.h (License): Same.
* config/arm/elf.h (License): Same.
* config/arm/linux-elf.h (License): Same.
* config/arm/linux-gas.h (License): Same.
* config/arm/netbsd-elf.h (License): Same.
* config/arm/uclinux-eabi.h (License): Same.
* config/arm/uclinux-elf.h (License): Same.
* config/arm/vxworks.h (License): Same.

libgcc/
* config/arm/bpabi-lib.h (License): Add GCC Runtime Library Exception.

From-SVN: r210322

10 years agore PR c++/51199 ([C++11][DR 547] gcc forms impossible types derived from function...
Paolo Carlini [Mon, 12 May 2014 08:42:41 +0000 (08:42 +0000)]
re PR c++/51199 ([C++11][DR 547] gcc forms impossible types derived from function types with cv-qualifier-seq)

2014-05-12  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51199
* g++.dg/template/pr51199.C: New.

From-SVN: r210321

10 years agoDaily bump.
GCC Administrator [Mon, 12 May 2014 00:17:17 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r210319

10 years ago* gcc.c-torture/execute/20101011-1.c [__MMIX__] (DO_TEST): Define as 0.
Hans-Peter Nilsson [Sun, 11 May 2014 20:48:31 +0000 (20:48 +0000)]
* gcc.c-torture/execute/20101011-1.c [__MMIX__] (DO_TEST): Define as 0.

From-SVN: r210315