platform/upstream/linaro-gcc.git
9 years ago2015-01-17 Andre Vehreschild <vehre@gmx.de>
pault [Sat, 17 Jan 2015 11:07:57 +0000 (11:07 +0000)]
2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60334
* trans-decl.c (gfc_get_symbol_decl):Use a ref on the string
length when the symbol is declared to be a result.
* trans-expr.c (gfc_conv_procedure_call): Strip deref on the
string length when functions are nested and the string length
is a reference already.

2015-01-17  Andre Vehreschild  <vehre@gmx.de>

PR fortran/60334
* gfortran.dg/deferred_type_param_6.f90: Add tests for this PR.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219798 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-17 Jan Kratochvil <jan.kratochvil@redhat.com>
jkratoch [Sat, 17 Jan 2015 08:00:13 +0000 (08:00 +0000)]
2015-01-17  Jan Kratochvil  <jan.kratochvil@redhat.com>

* dwarf2out.c (gen_producer_string): Ignore also OPT_fpreprocessed.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219797 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/52773
law [Sat, 17 Jan 2015 07:35:40 +0000 (07:35 +0000)]
PR rtl-optimization/52773
* calls.c (emit_library_call_value): When pushing arguments use
stack_pointer_rtx rather than virtual_outgoing_args_rtx in
CALL_INSN_FUNCTION_USAGE.  Only emit one of use of the magic
stack pointer reference into CALL_INSN_FUNCTION_USAGE.

PR rtl-optimization/52773
* gcc.c-torture/compile/pr52773.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219796 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/32790
law [Sat, 17 Jan 2015 07:24:24 +0000 (07:24 +0000)]
PR rtl-optimization/32790
        * reginfo.c (reg_scan_mark_refs): Look for ZERO_EXTRACT,
        not ZERO_EXTEND in SET_DESTs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219795 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-17 Ville Voutilainen <ville.voutilainen@gmail.com>
redi [Sat, 17 Jan 2015 03:23:52 +0000 (03:23 +0000)]
2015-01-17  Ville Voutilainen  <ville.voutilainen@gmail.com>
    Jonathan Wakely  <jwakely@redhat.com>

* doc/xml/manual/status_cxx2011.xml: Update C++11 status.
* doc/html/*: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219794 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago DR 488
redi [Sat, 17 Jan 2015 03:15:52 +0000 (03:15 +0000)]
DR 488
PR libstdc++/58357
* include/bits/algorithmfwd.h (rotate): Return an iterator.
* include/bits/stl_algo.h (rotate, __rotate): Likewise.
* testsuite/25_algorithms/rotate/dr488.cc: New.
* testsuite/25_algorithms/rotate/check_type.cc: Adjust function type.
* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
2.cc: Likewise.
* testsuite/25_algorithms/rotate/requirements/explicit_instantiation/
pod.cc: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219793 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRevert last change
amodra [Sat, 17 Jan 2015 03:04:55 +0000 (03:04 +0000)]
Revert last change

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219792 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* config/rl78/rl78-real.md (addqi3_real): Allow volatiles.
dj [Sat, 17 Jan 2015 02:57:53 +0000 (02:57 +0000)]
* config/rl78/rl78-real.md (addqi3_real): Allow volatiles.
(addhi3_real): Likewise.  Fix [HL+0] syntax.
(subqi3_real): Likewise.
(subhi3_real): Likewise.
(cbranchqi4_real): Likewise.  Allow saddr,#imm.
(cbranchhi4_real): Likewise.
(cbranchhi4_real_inverted): Likewise.
(cbranchsi4_real_lt): Likewise.
(cbranchsi4_real_ge): Likewise.
(cbranchsi4_real_ge): Likewise.
* config/rl78/rl78-virt.md (add<mode>3_virt): Likewise.
(sub<mode>3_virt): Likewise.
(cbranchqi4_virt): Likewise.
(cbranchhi4_virt): Likewise.
* config/rl78/rl78.c (rl78_print_operand_1): 'p' modifier means
always use '[reg+imm]' even when imm is zero.
* config/rl78/predicates.md (rl78_volatile_memory_operand): New.
(rl78_general_operand): New.
(rl78_nonimmediate_operand): New.
(rl78_nonfar_operand): Use them.
(rl78_nonfar_nonimm_operand): Likewise.
(rl78_stack_based_mem): Fix.
* config/rl78/constraints.md (Ibqi): New.
(IBqi): New.
(Wsa): New.
(Wsf): New.
(Cs1): Fix.
* config/rl78/rl78-expand.md (andqi3): Accept volatiles.
(iorqi3): Likewise.
(xorqi3): Likewise.
* config/rl78/rl78-protos.h (rl78_sfr_p): New.

        * config/rl78/constrains (Qs8): New constraint.
        * config/rl78/rl78.c (rl78_flags_already_set): New function.
        * config/rl78/rl78-protos.h (rl78_flags_already_set): New prototype.
        * config/rl78/rl78-real.md (update_Z): New attribute.
        Update patterns to set it.
        (cbranchqi4_real): Call rl78_flags_already_set() to determine if a
        shorter compare and branch sequence can be used.
        (cbranchhi4_real): Likewise.
        (cbranchhi4_real_inverted): Likewise.

* config/rl78/predicates.md (uword_operand): Allow symbol_refs.
* config/rl78/rl78-c.c (rl78_register_pragmas): Register __near
address space.
* config/rl78/rl78.c (rl78_get_name_encoding): New.
(rl78_option_override): Allow -mes0 only if C.
(characterize_address): Support subregs of symbol_refs.
(rl78_addr_space_address_mode): Move.  Add __near.
(rl78_far_p): Likewise.
(rl78_addr_space_pointer_mode): Likewise.
(rl78_as_legitimate_address): Likewise.
(rl78_addr_space_subset_p): Likewise.
(rl78_addr_space_convert): Likewise.
(rl78_print_operand_1): Support 16-bit addressing of 32-bit
symbols with -mes0.
(transcode_memory_rtx): Don't copy ES if -mes0.  Allow symbol[BC]
addressing.
(rl78_alloc_physical_registers_op1): Change logic to prefer
symbol[BC] addressing.
(frodata_section): New.
(rl78_asm_init_sections): Initialize it.
(rl78_select_section): Put __far readonly symbols in .frodata.
(rl78_make_type_far): New.
(rl78_insert_attributes): Force all readonly symbols to be __far when -mes0.
(rl78_asm_out_integer): New.
* config/rl78/rl78.h (ADDR_SPACE_NEAR): New.
* config/rl78/rl78.opt (-mes0): New.

* config/rl78/rl78.h (ASM_OUTPUT_LABELREF): New.
(ASM_OUTPUT_ALIGNED_DECL_COMMON): New.
(ASM_OUTPUT_ALIGNED_DECL_LOCAL): New.
* config/rl78/rl78-protos.h (rl78_output_labelref): New.
(rl78_saddr_p): New.
(rl78_output_aligned_common): New.
* config/rl78/rl78.c (rl78_output_symbol_ref): Strip encodings.
(rl78_handle_saddr_attribute): New.
(rl78_handle_naked_attribute): New.
(rl78_attribute_table): Add saddr.
(rl78_print_operand_1): Don't print '!' on saddr operands.
(rl78_print_operand_1): Strip encodings.
(rl78_sfr_p): New.
(rl78_strip_name_encoding): New.
(rl78_attrlist_to_encoding): New.
(rl78_encode_section_info): New.
(rl78_asm_init_sections): New.
(rl78_select_section): New.
(rl78_output_labelref): New.
(rl78_output_aligned_common): New.
(rl78_asm_out_integer): New.
(rl78_asm_ctor_dtor): New.
(rl78_asm_constructor): New.
(rl78_asm_destructor): New.

* config/rl78/rl78-real.md (movqi_es): Rename to movqi_to_es.
* config/rl78/rl78.c (rl78_expand_epilogue): Update.
(transcode_memory_rtx): Update.
(rl78_expand_epilogue): Use A_REG instead of 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219791 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/60940
redi [Sat, 17 Jan 2015 01:23:28 +0000 (01:23 +0000)]
PR libstdc++/60940
* include/bits/atomic_base.h: Remove atomic integral typedefs as
synonyms for __atomic_base<int> etc.
* include/std/atomic: Make atomic_int a synonym for atomic<int> and
likewise for all atomic integral types.
* testsuite/29_atomics/atomic_integral/cons/copy_list.cc: New.
* testsuite/29_atomics/atomic/60695.cc: Adjust dg-error line number.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219790 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoModel cache auto-prefetcher in scheduler
mkuvyrkov [Sat, 17 Jan 2015 01:06:43 +0000 (01:06 +0000)]
Model cache auto-prefetcher in scheduler

* config/arm/arm-protos.h (struct tune_params): New field
sched_autopref_queue_depth.
* config/arm/arm.c (sched-int.h): Include header.
(arm_first_cycle_multipass_dfa_lookahead_guard,)
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD): Define hook.
(arm_slowmul_tune, arm_fastmul_tune, arm_strongarm_tune,)
(arm_xscale_tune, arm_9e_tune, arm_v6t2_tune, arm_cortex_tune,)
(arm_cortex_a8_tune, arm_cortex_a7_tune, arm_cortex_a15_tune,)
(arm_cortex_a53_tune, arm_cortex_a57_tune, arm_xgene1_tune,)
(arm_cortex_a5_tune, arm_cortex_a9_tune, arm_cortex_a12_tune,)
(arm_v7m_tune, arm_cortex_m7_tune, arm_v6m_tune, arm_fa726te_tune):
Specify sched_autopref_queue_depth value.  Enabled for A15 and A57.
* config/arm/t-arm (arm.o): Update.
* haifa-sched.c (update_insn_after_change): Update.
(rank_for_schedule): Use auto-prefetcher model, if requested.
(autopref_multipass_init): New static function.
(autopref_rank_for_schedule): New rank_for_schedule heuristic.
(autopref_multipass_dfa_lookahead_guard_started_dump_p): New static
variable for debug dumps.
(autopref_multipass_dfa_lookahead_guard_1): New static helper function.
(autopref_multipass_dfa_lookahead_guard): New global function that
implements TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD_GUARD hook.
(init_h_i_d): Update.
* params.def (PARAM_SCHED_AUTOPREF_QUEUE_DEPTH): New tuning knob.
* sched-int.h (enum autopref_multipass_data_status): New const enum.
(autopref_multipass_data_): Structure for auto-prefetcher data.
(autopref_multipass_data_def, autopref_multipass_data_t): New typedefs.
(struct _haifa_insn_data:autopref_multipass_data): New field.
(INSN_AUTOPREF_MULTIPASS_DATA): New access macro.
(autopref_multipass_dfa_lookahead_guard): Declare.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219789 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoHandle SCRATCH in decompose_address
mkuvyrkov [Sat, 17 Jan 2015 01:06:29 +0000 (01:06 +0000)]
Handle SCRATCH in decompose_address

* rtlanal.c (get_base_term): Handle SCRATCH.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219788 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoEnable max_issue for AArch32 and AArch64
mkuvyrkov [Sat, 17 Jan 2015 01:06:17 +0000 (01:06 +0000)]
Enable max_issue for AArch32 and AArch64
* config/aarch64/aarch64.c
(aarch64_sched_first_cycle_multipass_dfa_lookahead): Implement hook.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.
* config/arm/arm.c
(arm_first_cycle_multipass_dfa_lookahead): Implement hook.
(TARGET_SCHED_FIRST_CYCLE_MULTIPASS_DFA_LOOKAHEAD): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219787 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * cprop.c (do_local_cprop): Disallow replacement of fixed
amodra [Sat, 17 Jan 2015 00:41:52 +0000 (00:41 +0000)]
* cprop.c (do_local_cprop): Disallow replacement of fixed
hard registers.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219786 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR libstdc++/56785
redi [Sat, 17 Jan 2015 00:21:41 +0000 (00:21 +0000)]
PR libstdc++/56785
* include/std/tuple (_Tuple_impl): Remove zero-element specialization
and define one-element specialization.
* testsuite/20_util/tuple/56785.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219785 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Sat, 17 Jan 2015 00:16:37 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219784 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
redi [Sat, 17 Jan 2015 00:12:50 +0000 (00:12 +0000)]
* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc:
Remove unused header.
* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc:
Likewise.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219781 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
redi [Fri, 16 Jan 2015 23:38:48 +0000 (23:38 +0000)]
* include/bits/locale_conv.h (wstring_convert, wbuffer_convert): New.
* include/std/locale: Include new header.
* include/Makefile.am: Add it.
* include/Makefile.in: Regenerate.
* testsuite/22_locale/conversions/buffer/requirements/typedefs.cc: New.
* testsuite/22_locale/conversions/string/1.cc: New.
* testsuite/22_locale/conversions/string/2.cc: New.
* testsuite/22_locale/conversions/string/requirements/typedefs.cc: New.
* testsuite/22_locale/conversions/string/requirements/typedefs-2.cc:
New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219780 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoImplement C++11 <codecvt> header.
redi [Fri, 16 Jan 2015 23:38:35 +0000 (23:38 +0000)]
Implement C++11 <codecvt> header.

* config/abi/pre/gnu.ver: Export new symbols.
* include/Makefile.am: Add codecvt.
* include/Makefile.in: Regenerate.
* include/std/codecvt: New header.
* src/c++11/codecvt.cc (__codecvt_utf8_base, __codecvt_utf16_base,
__codecvt_utf8_utf16_base): Define specializations.
* testsuite/22_locale/codecvt/codecvt_utf8/requirements/1.cc: New.
* testsuite/22_locale/codecvt/codecvt_utf16/requirements/1.cc: New.
* testsuite/22_locale/codecvt/codecvt_utf8_utf16/requirements/1.cc:
New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219779 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoruntime: Add __sparc__ case for SETCONTEXT_CLOBBERS_TLS.
ian [Fri, 16 Jan 2015 23:23:31 +0000 (23:23 +0000)]
runtime: Add __sparc__ case for SETCONTEXT_CLOBBERS_TLS.

The glibc setcontext incorrectly modifies %g7 on SPARC.

From Richard Henderson.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219778 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agotesting/quick: Revert Alpha specific change.
ian [Fri, 16 Jan 2015 23:19:20 +0000 (23:19 +0000)]
testing/quick: Revert Alpha specific change.

No longer needed now that libffi supports complex types.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219777 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocompiler, reflect, runtime: Use static chain for closures.
ian [Fri, 16 Jan 2015 22:58:53 +0000 (22:58 +0000)]
compiler, reflect, runtime: Use static chain for closures.

Change from using __go_set_closure to passing the closure
value in the static chain field.  Uses new backend support for
setting the closure chain in a call from C via
__builtin_call_with_static_chain.  Uses new support in libffi
for Go closures.

The old architecture specific support for reflect.MakeFunc is
removed, replaced by the libffi support.

All work done by Richard Henderson.

* go-gcc.cc (Gcc_backend::call_expression): Add chain_expr argument.
(Gcc_backend::static_chain_variable): New method.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219776 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/invoke.texi (--param early-inlining-insns): Update default value.
hubicka [Fri, 16 Jan 2015 22:21:50 +0000 (22:21 +0000)]
* doc/invoke.texi (--param early-inlining-insns): Update default value.
* params.def (PARAM_EARLY_INLINING_INSNS): Set to 14.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219775 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoParallelize the jit testsuite
dmalcolm [Fri, 16 Jan 2015 21:30:26 +0000 (21:30 +0000)]
Parallelize the jit testsuite

gcc/jit/ChangeLog:
* Make-lang.in (lang_checks_parallelized): Add "check-jit".
(check_jit_parallelize): Set this to an arbitrary value (10).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219774 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR libffi/64607
rth [Fri, 16 Jan 2015 20:51:14 +0000 (20:51 +0000)]
PR libffi/64607

 * Makefile.am (AM_MAKEFLAGS): Use double quotes on subvariables.
 * Makefile.in: Rebuilt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219772 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibgomp: Don't use <alloca.h>.
tschwinge [Fri, 16 Jan 2015 20:05:21 +0000 (20:05 +0000)]
libgomp: Don't use <alloca.h>.

libgomp/
* oacc-parallel.c: Don't include <alloca.h>.
(GOACC_parallel): Use gomp_alloca instead of alloca.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219771 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibstdc++: Optimize synchronization in std::future if futexes are available.
torvald [Fri, 16 Jan 2015 19:50:43 +0000 (19:50 +0000)]
libstdc++: Optimize synchronization in std::future if futexes are available.

* src/c++11/futex.cc: New file.
* include/bits/atomic_futex.h: New file.
* include/std/future (__future_base::_State_baseV2): Use
atomic_futex_unsigned instead of mutex+condvar.
* src/c++11/futex.cc: Likewise.
* include/Makefile.am: Add atomic_futex.h.
* include/Makefile.in: Likewise.
* src/c++11/Makefile.am: Add futex.cc.
* src/c++11/Makefile.in: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219770 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM/AArch64][testsuite] Add vld1_lane tests.
clyon [Fri, 16 Jan 2015 18:26:57 +0000 (18:26 +0000)]
[ARM/AArch64][testsuite] Add vld1_lane tests.

* gcc.target/aarch64/advsimd-intrinsics/vld1_lane.c: New file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219767 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 16 Jan 2015 18:24:52 +0000 (18:24 +0000)]
2015-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62134
* g++.dg/cpp0x/alias-decl-46.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219766 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM/AArch64][testsuite] Be more verbose, and actually confirm that a
clyon [Fri, 16 Jan 2015 18:21:53 +0000 (18:21 +0000)]
[ARM/AArch64][testsuite] Be more verbose, and actually confirm that a
test was checked.

* gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h (CHECK):
Add trace.
        (CHECK_FP): Likewise.
        (CHECK_CUMULATIVE_SAT): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219765 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM/AArch64][testsuite] Add explicit dependency on Neon Cumulative Saturation flag
clyon [Fri, 16 Jan 2015 18:19:42 +0000 (18:19 +0000)]
[ARM/AArch64][testsuite] Add explicit dependency on Neon Cumulative Saturation flag

        * gcc.target/aarch64/advsimd-intrinsics/arm-neon-ref.h
        (Set_Neon_Cumulative_Sat): Add parameter.
        (__set_neon_cumulative_sat): Support new parameter.
        * gcc.target/aarch64/advsimd-intrinsics/binary_sat_op.inc
        (TEST_BINARY_SAT_OP1): Call Set_Neon_Cumulative_Sat with new
        argument.
        * gcc.target/aarch64/advsimd-intrinsics/unary_sat_op.inc
        (TEST_UNARY_SAT_OP1): Call Set_Neon_Cumulative_Sat with new
        argument.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219764 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] PR 62066: Call va_end on early return from va_list processing function
ktkachov [Fri, 16 Jan 2015 18:14:37 +0000 (18:14 +0000)]
[ARM] PR 62066: Call va_end on early return from va_list processing function

PR target/62066
* config/arm/arm-builtins.c (arm_expand_neon_args): Call va_end before
early return 0.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219763 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agooops.. fixed typo in ChangeLog
edlinger [Fri, 16 Jan 2015 18:02:25 +0000 (18:02 +0000)]
oops.. fixed typo in ChangeLog

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219762 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Bernd Edlinger <bernd.edlinger@hotmail.de>
edlinger [Fri, 16 Jan 2015 17:49:56 +0000 (17:49 +0000)]
2015-01-16  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * sanititer.def (BUILT_IN_TSAN_VPTR_UPDATE): Fixed parameters.
        * tsan.c (instrument_expr): Fixed parameters of __tsan_vptr_update.

gcc/testsuite/ChangeLog
2015-01-16  Bernd Edlinger  <bernd.edlinger@hotmail.de>

        * g++.dg/tsan/vptr_benign_race.C: New testcase.
        * g++.dg/tsan/vptr_harmful_race.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219761 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 16 Jan 2015 17:47:43 +0000 (17:47 +0000)]
2015-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/60056
* g++.dg/tls/thread_local-ice4.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219760 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * expr.c (cpp_classify_number): Add N_() around ?: string
jakub [Fri, 16 Jan 2015 17:40:15 +0000 (17:40 +0000)]
* expr.c (cpp_classify_number): Add N_() around ?: string
literals used in cpp_error_with_line call as format string.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219759 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Obvious, ARM Testsuite] mangle-arm-crypto.C needs arm_crypto arguments added
jgreenhalgh [Fri, 16 Jan 2015 17:36:18 +0000 (17:36 +0000)]
[Obvious, ARM Testsuite] mangle-arm-crypto.C needs arm_crypto  arguments added

gcc/testsuite/

* g++.dg/abi/mangle-abi-crypto.C: Add crypto options, rather
than Neon options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219758 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd missing testcase accidentally omitted from r219681
dmalcolm [Fri, 16 Jan 2015 17:26:08 +0000 (17:26 +0000)]
Add missing testcase accidentally omitted from r219681

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219757 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2014-01-16 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Fri, 16 Jan 2015 17:10:20 +0000 (17:10 +0000)]
2014-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/62276
* g++.dg/cpp0x/vt-62276.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219756 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARM] Move comment about splitting Thumb1 patterns to thumb1.md
ktkachov [Fri, 16 Jan 2015 16:58:58 +0000 (16:58 +0000)]
[ARM] Move comment about splitting Thumb1 patterns to thumb1.md

* config/arm/arm.md: Move comment about splitting Thumb1 patterns to...
* config/arm/thumb1.md: ... Here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219755 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.c (rs6000_scalar_mode_supported_p): Disallow
segher [Fri, 16 Jan 2015 16:46:32 +0000 (16:46 +0000)]
* config/rs6000/rs6000.c (rs6000_scalar_mode_supported_p): Disallow
TImode for TARGET_32BIT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219754 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.c (TARGET_LIBGCC_CMP_RETURN_MODE,
segher [Fri, 16 Jan 2015 16:36:16 +0000 (16:36 +0000)]
* config/rs6000/rs6000.c (TARGET_LIBGCC_CMP_RETURN_MODE,
TARGET_LIBGCC_SHIFT_COUNT_MODE, TARGET_UNWIND_WORD_MODE): Implement
as ...
(rs6000_abi_word_mode): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219753 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.c (rs6000_va_start): Use MIN_UNITS_PER_WORD
segher [Fri, 16 Jan 2015 16:34:31 +0000 (16:34 +0000)]
* config/rs6000/rs6000.c (rs6000_va_start): Use MIN_UNITS_PER_WORD
instead of UNITS_PER_WORD to describe the size of stack slots.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219752 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.c (TARGET_PROMOTE_FUNCTION_MODE): Implement
segher [Fri, 16 Jan 2015 16:32:51 +0000 (16:32 +0000)]
* config/rs6000/rs6000.c (TARGET_PROMOTE_FUNCTION_MODE): Implement
as rs6000_promote_function_mode.  Move comment to there.
(rs6000_promote_function_mode): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219751 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/rs6000/rs6000.h (PROMOTE_MODE): Correct test for when -m32
segher [Fri, 16 Jan 2015 16:31:37 +0000 (16:31 +0000)]
* config/rs6000/rs6000.h (PROMOTE_MODE): Correct test for when -m32
-mpowerpc64 is active.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219750 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agonet: Restore earlier Solaris-specific version of setKeepAlivePeriod.
ian [Fri, 16 Jan 2015 15:57:32 +0000 (15:57 +0000)]
net: Restore earlier Solaris-specific version of setKeepAlivePeriod.

The version from the master repository seems to be appropriate
for OpenSolaris but not for Solaris itself.  Solaris 11.2
proper does not define TCP_KEEPIDLE or TCP_KEEPINTVL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219749 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Fri, 16 Jan 2015 15:38:21 +0000 (15:38 +0000)]
gcc/

PR middle-end/64353
* tree-cfg.c (pass_data_fixup_cfg): Update SSA for
virtuals on start.

gcc/testsuite/

PR middle-end/64353
* g++.dg/pr64353.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219748 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * acinclude.m4: Fix typo in comment.
redi [Fri, 16 Jan 2015 15:02:35 +0000 (15:02 +0000)]
* acinclude.m4: Fix typo in comment.
* configure: Regenerate.
* include/bits/codecvt.h (codecvt<char16_t, char, mbstate_t>,
codecvt<char16_t, char, mbstate_t>): Declare specializations.
* include/bits/locale_facets.h: Reserve space for new specializations.
* src/c++11/Makefile.am: Add codecvt.cc.
* src/c++11/Makefile.in: Regenerate.
* src/c++11/codecvt.cc: New.
* src/c++98/Makefile.am: Compile locale_init.cc and localename.cc
with -std=gnu++11.
* src/c++98/Makefile.in: Regenerate.
* src/c++98/locale_init.cc: Initialize new codecvt specializations.
* src/c++98/localename.cc: Likewise.
* config/abi/pre/gnu.ver: Exports for new codecvt specializations.
* testsuite/22_locale/codecvt/utf8.cc: New.
* testsuite/22_locale/locale/cons/unicode.cc: Check that new
specializations are installed in locale objects.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219747 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64, Obvious] Fix broken commit r219724
jgreenhalgh [Fri, 16 Jan 2015 14:59:36 +0000 (14:59 +0000)]
[AArch64, Obvious] Fix broken commit r219724

gcc/

* config/arm/cortex-a57.md: Remove duplicate of file accidentally
introduced in revision 219724.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219746 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Fix PR 64263: Do not try to split constants when destination is SIMD reg
ktkachov [Fri, 16 Jan 2015 14:50:39 +0000 (14:50 +0000)]
[AArch64] Fix PR 64263: Do not try to split constants when destination is SIMD reg

PR target/64263
* config/aarch64/aarch64.md (*movsi_aarch64): Don't split if the
destination is not a GP reg.
(*movdi_aarch64): Likewise.

* gcc.target/aarch64/pr64263_1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219745 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * jit-builtins.h (DEF_FUNCTION_TYPE_VAR_5): Fix spelling of
jakub [Fri, 16 Jan 2015 14:38:14 +0000 (14:38 +0000)]
* jit-builtins.h (DEF_FUNCTION_TYPE_VAR_5): Fix spelling of
last argument.
(DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12): Define and
undef afterwards.
* jit-builtins.c (DEF_FUNCTION_TYPE_VAR_8, DEF_FUNCTION_TYPE_VAR_12):
Likewise.
@@ -334,6 +343,8 @@ builtins_manager::make_type (enum jit_bu
 #undef DEF_FUNCTION_TYPE_VAR_3
 #undef DEF_FUNCTION_TYPE_VAR_4
 #undef DEF_FUNCTION_TYPE_VAR_5
+#undef DEF_FUNCTION_TYPE_VAR_8
+#undef DEF_FUNCTION_TYPE_VAR_12
 #undef DEF_POINTER_TYPE

     default:

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219744 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRevert ISA change
dje [Fri, 16 Jan 2015 14:30:03 +0000 (14:30 +0000)]
Revert ISA change

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219743 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * target.c (num_devices): Guard with PLUGIN_SUPPORT.
gerald [Fri, 16 Jan 2015 14:27:55 +0000 (14:27 +0000)]
* target.c (num_devices): Guard with PLUGIN_SUPPORT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219742 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/testsuite/
ienkovich [Fri, 16 Jan 2015 14:22:57 +0000 (14:22 +0000)]
gcc/testsuite/

PR tree-optimization/64434
* gcc.dg/torture/pr64434.c: Move to...
* gcc.dg/pr64434.c: ... here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219741 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd missing } to gcc.c-torture/compile/20150108.c
trippels [Fri, 16 Jan 2015 13:59:08 +0000 (13:59 +0000)]
Add missing } to gcc.c-torture/compile/20150108.c

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219740 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Richard Biener <rguenther@suse.de>
rguenth [Fri, 16 Jan 2015 13:26:10 +0000 (13:26 +0000)]
2015-01-16  Richard Biener  <rguenther@suse.de>

PR middle-end/64614
* tree-ssa-uninit.c: Include tree-cfg.h.
(MAX_SWITCH_CASES): New define.
(convert_control_dep_chain_into_preds): Handle switch statements.
(is_pred_expr_subset_of): Handle x == CST vs. (x & CST) != 0.
(normalize_one_pred_1): Do not split bit-manipulations.
Record (x & CST).

* gcc.dg/uninit-18.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219739 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agolibstdc++: Add POSIX variant of shared_timed_mutex.
torvald [Fri, 16 Jan 2015 13:22:00 +0000 (13:22 +0000)]
libstdc++: Add POSIX variant of shared_timed_mutex.

* include/std/shared_mutex (shared_timed_mutex): Add POSIX-based
implementation.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219737 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Richard Biener <rguenther@suse.de>
rguenth [Fri, 16 Jan 2015 13:21:11 +0000 (13:21 +0000)]
2015-01-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/64568
* tree-ssa-forwprop.c (pass_forwprop::execute): Guard
complex load rewriting for TARGET_MEM_REFs.

* g++.dg/torture/pr64568-2.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219736 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * builtins.c (expand_builtin_acc_on_device): Check target for NULL.
uros [Fri, 16 Jan 2015 13:16:46 +0000 (13:16 +0000)]
* builtins.c (expand_builtin_acc_on_device): Check target for NULL.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219735 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Remove -mlra/-mno-lra option for Aarch64
jiwang [Fri, 16 Jan 2015 13:11:53 +0000 (13:11 +0000)]
[AArch64] Remove -mlra/-mno-lra option for Aarch64

2015-01-16  Matthew Wahab  <matthew.wahab@arm.com>

gcc/
PR target/64149
* config/aarch64/aarch64.opt: Remove lra option and aarch64_lra_flag
variable.
* config/aarch64/aarch64.c (TARGET_LRA_P): Set to hook_bool_void_true.
(aarch64_lra_p): Remove.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219734 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Fri, 16 Jan 2015 13:08:24 +0000 (13:08 +0000)]
gcc/

PR target/64363
* ipa-chkp.h (chkp_instrumentable_p): New.
* ipa-chkp.c: Include tree-inline.h.
(chkp_instrumentable_p): New.
(chkp_maybe_create_clone): Use chkp_instrumentable_p.
Fix processing of not instrumentable functions.
(chkp_versioning): Use chkp_instrumentable_p. Warn about
not instrumentable functions.
* tree-chkp.c (chkp_add_bounds_to_call_stmt): Use
chkp_instrumentable_p.
* tree-inline.h (copy_forbidden): New.
* tree-inline.c (copy_forbidden): Not static anymore.

gcc/testsuite/

PR target/64363
* gcc.target/i386/chkp-label-address.c: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219733 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMark cl_target_option_print_diff args unused
ro [Fri, 16 Jan 2015 12:58:20 +0000 (12:58 +0000)]
Mark cl_target_option_print_diff args unused

* optc-save-gen.awk (cl_target_option_print_diff): Mark indent,
ptr1, ptr2 unused.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219732 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Janus Weil <janus@gcc.gnu.org>
janus [Fri, 16 Jan 2015 12:49:46 +0000 (12:49 +0000)]
2015-01-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45290
* decl.c (match_pointer_init): Error out if resolution of init expr
failed.

2015-01-16  Janus Weil  <janus@gcc.gnu.org>

PR fortran/45290
* gfortran.dg/pointer_init_6.f90: Extended.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219731 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdjust handling of word sized subregs for OP_OUT
mpf [Fri, 16 Jan 2015 12:31:11 +0000 (12:31 +0000)]
Adjust handling of word sized subregs for OP_OUT

gcc/
* lra-constraints.c (curr_insn_transform): Change a reload pseudo of
type OP_OUT to OP_INOUT.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219730 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAccount for high/lo_sum simplification with displacements
mpf [Fri, 16 Jan 2015 12:31:01 +0000 (12:31 +0000)]
Account for high/lo_sum simplification with displacements

gcc/
* simplify-rtx.c (simplify_replace_fn_rtx): Simplify (lo_sum
(high x) y) to y if x and y have the same base.

gcc/testsuite/
* gcc.c-torture/compile/20150108.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219729 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.target/visium: New directory.
ebotcazou [Fri, 16 Jan 2015 12:21:32 +0000 (12:21 +0000)]
* gcc.target/visium: New directory.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219728 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-16 Richard Biener <rguenther@suse.de>
rguenth [Fri, 16 Jan 2015 12:06:07 +0000 (12:06 +0000)]
2015-01-16  Richard Biener  <rguenther@suse.de>

PR tree-optimization/61743
* gcc.dg/tree-ssa/pr61743-1.c: Add -fno-tree-vectorize.
* gcc.dg/tree-ssa/pr61743-2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219725 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Add a new scheduling description for the ARM Cortex-A57 processor
jgreenhalgh [Fri, 16 Jan 2015 11:52:35 +0000 (11:52 +0000)]
[AArch64] Add a new scheduling description for the ARM Cortex-A57 processor

gcc/

* config/arm/cortex-a57.md: New.
* config/aarch64/aarch64.md: Include it.
* config/aarch64/aarch64-cores.def (cortex-a57): Tune for it.
* config/aarch64/aarch64-tune.md: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219724 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Enable CCMP support for AArch64, PR64015 resolved
jiwang [Fri, 16 Jan 2015 11:48:00 +0000 (11:48 +0000)]
[AArch64] Enable CCMP support for AArch64, PR64015 resolved

gcc/
2015-01-16  Zhenqiang Chen  <zhenqiang.chen@arm.com>

PR target/64015
* ccmp.c (expand_ccmp_next): New function.
(expand_ccmp_expr_1, expand_ccmp_expr): Handle operand insn sequence
and compare insn sequence.
* config/aarch64/aarch64.c (aarch64_code_to_ccmode,
aarch64_gen_ccmp_first, aarch64_gen_ccmp_next): New functions.
(TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): New MICRO.
* config/aarch64/aarch64.md (*ccmp_and): Changed to ccmp_and<mode>.
(*ccmp_ior): Changed to ccmp_ior<mode>.
(cmp<mode>): New pattern.
* doc/tm.texi (TARGET_GEN_CCMP_FIRST, TARGET_GEN_CCMP_NEXT): Update
parameters.
* target.def (gen_ccmp_first, gen_ccmp_next): Update parameters.

gcc/testsuite/
2015-01-16  Zhenqiang Chen <zhenqiang.chen@arm.com>

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219723 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR testsuite/64605
iverbin [Fri, 16 Jan 2015 11:29:54 +0000 (11:29 +0000)]
PR testsuite/64605

libatomic/
* testsuite/lib/libatomic.exp: Do not load gcc-dg.exp.
* testsuite/libatomic.c/c.exp: Load gcc-dg.exp.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219722 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agog++.dg/ipa/pr64612.C: New test.
trippels [Fri, 16 Jan 2015 11:12:52 +0000 (11:12 +0000)]
g++.dg/ipa/pr64612.C: New test.

2015-01-16  Markus Trippelsdorf  <markus@trippelsdorf.de>

PR ipa/64163
PR ipa/64612
* g++.dg/ipa/pr64612.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219721 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AARCH64]Enable gcc/testsuite/gcc.dg/builtin-apply2.c fro aarch64 target
renlin [Fri, 16 Jan 2015 11:04:52 +0000 (11:04 +0000)]
[AARCH64]Enable gcc/testsuite/gcc.dg/builtin-apply2.c fro aarch64 target

testsuite/
2015-01-16  Renlin Li <renlin.li@arm.com>

* gcc.dg/builtin-apply2.c: Remove aarch64 target from skip list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219720 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd new names for intrinsics.
tocarip [Fri, 16 Jan 2015 11:01:08 +0000 (11:01 +0000)]
Add new names for intrinsics.

gcc/
* config/i386/avx2intrin.h (_mm256_bslli_epi128,
_mm256_bsrli_epi128): New.
* config/i386/emmintrin.h (_mm_bsrli_si128, _mm_bslli_si128): Ditto.

testsuite/
* gcc.target/i386/sse-14.c: Test new intrinsic.
* gcc.target/i386/sse-22.c: Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219719 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch] Improve warning message
jiwang [Fri, 16 Jan 2015 10:20:40 +0000 (10:20 +0000)]
[Patch] Improve warning message

  gcc/
    * expmed.c (store_bit_field_using_insv): Improve warning message.
    Use %wu instead of HOST_WIDE_INT_PRINT_UNSIGNED.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219718 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch] Warn and truncate bitsize when partial overflow happen
jiwang [Fri, 16 Jan 2015 10:14:51 +0000 (10:14 +0000)]
[Patch] Warn and truncate bitsize when partial overflow happen

  PR rtl-optimization/64011
  gcc/
    * expmed.c (store_bit_field_using_insv): Warn and truncate bitsize when
    there is partial overflow.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219717 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/cp
paolo [Fri, 16 Jan 2015 09:38:59 +0000 (09:38 +0000)]
/cp
2015-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58614
* pt.c (unify): When BRACE_ENCLOSED_INITIALIZER_P (arg), handle
TREE_TYPE (elt) == error_mark_node.

/testsuite
2015-01-16  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/58614
* g++.dg/cpp0x/auto44.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219716 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoBump copyright year
ebotcazou [Fri, 16 Jan 2015 09:35:57 +0000 (09:35 +0000)]
Bump copyright year

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219715 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-15 Martin Uecker <uecker@eecs.berkeley.edu>
uecker [Fri, 16 Jan 2015 07:37:11 +0000 (07:37 +0000)]
2015-01-15  Martin Uecker  <uecker@eecs.berkeley.edu>

* MAINTAINERS: (Write After Approval): Add myself.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219714 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[NDS32] Have sibling calls optmization to be performed on nds32 target.
jasonwucj [Fri, 16 Jan 2015 06:45:09 +0000 (06:45 +0000)]
[NDS32] Have sibling calls optmization to be performed on nds32 target.

gcc/
* config/nds32/nds32-protos.h (nds32_expand_epilogue): Change
prototype.
(nds32_expand_epilogue_v3pop): Likewise.
* config/nds32/nds32.md (sibcall): Define this for sibling call
optimization.
(sibcall_register): Likewise.
(sibcall_immediate): Likewise.
(sibcall_value): Likewise.
(sibcall_value_register): Likewise.
(sibcall_value_immediate): Likewise.
(sibcall_epilogue): Likewise.
(epilogue): Pass false to indicate this is not a sibcall epilogue.
* config/nds32/nds32.c (nds32_expand_epilogue): Consider sibcall case.
(nds32_expand_epilogue_v3pop): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219712 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[NDS32] Have shirnk-wrapping optimization to be performed on nds32 target.
jasonwucj [Fri, 16 Jan 2015 06:20:22 +0000 (06:20 +0000)]
[NDS32] Have shirnk-wrapping optimization to be performed on nds32 target.

gcc/
* config/nds32/nds32-protos.h (nds32_can_use_return_insn): New.
* config/nds32/nds32.md (unspec_volatile_func_return): Remove.
(return_internal): New.
(return): Define this named pattern.
(simple_return): Define this named pattern.
* config/nds32/nds32.c (nds32_expand_epilogue): Emit return_internal
pattern instead of unspec_volatile_func_return.
(nds32_expand_epilogue_v3pop): Likewise.
(nds32_can_use_return_insn): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219711 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[NDS32] Fix wrong data flow when building nds32 target with --enable-checking=yes.
jasonwucj [Fri, 16 Jan 2015 06:02:11 +0000 (06:02 +0000)]
[NDS32] Fix wrong data flow when building nds32 target with --enable-checking=yes.

gcc/
* config/nds32/constants.md (UNSPEC_VOLATILE_POP25_RETURN): New.
* config/nds32/nds32.md (pop25return): New.
* config/nds32/nds32.c (nds32_expand_epilogue_v3pop): Emit
pop25return pattern.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219710 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[NDS32][DOC] Remove -mforce-fp-as-gp, -mforbid-fp-as-gp, and -mex9 options from docum...
jasonwucj [Fri, 16 Jan 2015 05:02:41 +0000 (05:02 +0000)]
[NDS32][DOC] Remove -mforce-fp-as-gp, -mforbid-fp-as-gp, and -mex9 options from documentation.

gcc/
* doc/invoke.texi (NDS32 Options): Remove -mforce-fp-as-gp,
-mforbid-fp-as-gp, and -mex9 options.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219707 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[NDS32][DOC] Describe -mcmodel= option instead of -mgp-direct in the documentation.
jasonwucj [Fri, 16 Jan 2015 04:56:27 +0000 (04:56 +0000)]
[NDS32][DOC] Describe -mcmodel= option instead of -mgp-direct in the documentation.

gcc/
* doc/invoke.texi (NDS32 Options): Add -mcmodel= option and
remove -mgp-direct option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219706 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/62053
hubicka [Fri, 16 Jan 2015 04:45:53 +0000 (04:45 +0000)]
PR tree-optimization/62053
* tree.c (build_cplus_array_type): Layout type after variants are set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219705 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMinor date fix in gcc/ChangeLog and gcc/testsuite/ChangeLog file.
jasonwucj [Fri, 16 Jan 2015 04:21:38 +0000 (04:21 +0000)]
Minor date fix in gcc/ChangeLog and gcc/testsuite/ChangeLog file.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219704 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/invoke.texi (--param early-inlining-insns): Update default value.
hubicka [Fri, 16 Jan 2015 03:08:33 +0000 (03:08 +0000)]
* doc/invoke.texi (--param early-inlining-insns): Update default value.
* params.def (PARAM_EARLY_INLINING_INSNS): Set to 14.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219703 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * ipa-inline.c (inline_small_functions): Work around hints
hubicka [Fri, 16 Jan 2015 03:05:31 +0000 (03:05 +0000)]
* ipa-inline.c (inline_small_functions): Work around hints
cache issue.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219702 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoruntime: Use a struct, not void, for an empty struct for libffi.
ian [Fri, 16 Jan 2015 02:54:13 +0000 (02:54 +0000)]
runtime: Use a struct, not void, for an empty struct for libffi.

A recent libffi upgrade caused the reflect test to fail on
386.  The problem case is a function that returns an empty
struct--a struct with no fields.  The libffi library does not
recognize the existence of empty structs, presumably since
they can't happen in C.  To work around this, the Go interface
to the libffi library changes an empty struct to void.  This
normally works fine, but with the new libffi upgrade it fails
for a function that returns an empty struct.  On 386 a
function that returns a struct is expected to pop the hidden
pointer when it returns.  So when we convert an empty struct
to void, libffi is calling a function that pops the hidden
pointer but does not expect that to happen.

In the older version of libffi, this didn't matter, because
the libffi code for 386 used a frame pointer, so the fact that
the stack pointer was wonky when the function returned was
ignored as the stack pointer was immediately replaced by the
saved frame pointer.  In the newer version of libffi, the 386
code is more efficient and does not use a frame pointer, and
therefore it matters whether libffi expects the function to
pop the hidden pointer or not.

This patch changes libgo to convert an empty to a struct with
a single field of type void.  This seems to be enough to get
the test cases working again.

Of course the real fix would be to change libffi to handle
empty types, but as libffi uses size == 0 as a marker for an
uninitialized type, that would be a non-trivial change.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219701 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-15 Sandra Loosemore <sandra@codesourcery.com>
sandra [Fri, 16 Jan 2015 00:43:24 +0000 (00:43 +0000)]
2015-01-15  Sandra Loosemore  <sandra@codesourcery.com>

PR target/59710

gcc/
* doc/invoke.texi (Option Summary): Document new Nios II
-mgpopt= syntax.
(Nios II Options): Likewise.
* config/nios2/nios2.opt: Add -mgpopt= option support.
Modify existing -mgpopt and -mno-gpopt options to be aliases.
* config/nios2/nios2-opts.h (enum nios2_gpopt_type): New.
* config/nios2/nios2.c (nios2_option_override): Adjust
-mgpopt defaulting.
(nios2_in_small_data_p): Return true for explicit small data
sections even with -G0.
(nios2_symbol_ref_in_small_data_p): Adjust to handle new -mgpopt=
option choices.

gcc/testsuite/
* gcc.target/nios2/gpopt-all.c: New test case.
* gcc.target/nios2/gpopt-local.c: New test case.
* gcc.target/nios2/gpopt-global.c: New test case.
* gcc.target/nios2/gpopt-data.c: New test case.
* gcc.target/nios2/gpopt-none.c: New test case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219700 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 16 Jan 2015 00:16:47 +0000 (00:16 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219699 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR ipa/64612
hubicka [Thu, 15 Jan 2015 23:11:49 +0000 (23:11 +0000)]
PR ipa/64612
* ipa-inline-transform.c (can_remove_node_now_p): Fix handling
of comdat locals.
(inline_call): Fix removal of aliases.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219696 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * flag-types.h (enum sanitize_code): Add SANITIZE_VPTR,
jakub [Thu, 15 Jan 2015 22:58:42 +0000 (22:58 +0000)]
* flag-types.h (enum sanitize_code): Add SANITIZE_VPTR,
include SANITIZE_VPTR in SANITIZE_UNDEFINED.
* opts.c (common_handle_option): Add -fsanitize=vptr.
* sanitizer.def (BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS,
BUILT_IN_UBSAN_HANDLE_DYNAMIC_TYPE_CACHE_MISS_ABORT): New.
* ubsan.h (enum ubsan_null_ckind): Add UBSAN_DOWNCAST_POINTER,
UBSAN_DOWNCAST_REFERENCE, UBSAN_UPCAST and UBSAN_CAST_TO_VBASE.
(ubsan_expand_vptr_ifn): New prototype.
* internal-fn.c (expand_ANNOTATE, expand_GOMP_SIMD_LANE,
expand_GOMP_SIMD_VF, expand_GOMP_SIMD_LAST_LANE, expand_UBSAN_NULL,
expand_UBSAN_BOUNDS, expand_UBSAN_OBJECT_SIZE, expand_ASAN_CHECK,
expand_LOOP_VECTORIZED): Make argument nameless, remove
ATTRIBUTE_UNUSED.
(expand_UBSAN_VPTR): New function.
* internal-fn.def (UBSAN_NULL, ASAN_CHECK): Use R instead of W
in fn spec.
(UBSAN_VPTR): New internal function.
* sanopt.c (tree_map_traits): Renamed to ...
(sanopt_tree_map_traits): ... this.
(sanopt_tree_triplet, sanopt_tree_triplet_map_traits): New classes.
(sanopt_ctx): Adjust asan_check_map type for tree_map_traits
to sanopt_tree_map_traits renaming.  Add vptr_check_map field.
(maybe_optimize_ubsan_vptr_ifn): New function.
(sanopt_optimize_walker): Handle IFN_UBSAN_VPTR.
(pass_sanopt::execute): Likewise.  Call sanopt_optimize even for
-fsanitize=vptr.
* tree-ssa-alias.c (call_may_clobber_ref_p_1): Handle certain
internal calls like pure functions for aliasing, even when they
have other side-effects that prevent making them ECF_PURE.
* ubsan.c (ubsan_vptr_type_cache_decl): New variable.
(ubsan_expand_vptr_ifn): New function.
cp/
* cp-gimplify.c (cp_genericize_r): Call
cp_ubsan_maybe_instrument_member_call for member calls.
(cp_ubsan_check_member_access_r): New function.
(cp_genericize_tree): Call cp_ubsan_instrument_member_accesses.
* cp-tree.h (cp_ubsan_maybe_instrument_member_call,
cp_ubsan_instrument_member_accesses,
cp_ubsan_maybe_instrument_downcast,
cp_ubsan_maybe_instrument_cast_to_vbase): New prototypes.
* cp-ubsan.c: New file.
* Make-lang.in (CXX_AND_OBJCXX_OBJS): Add cp/cp-ubsan.o.
* constexpr.c (cxx_eval_call_expression): Return void_node
for IFN_UBSAN_VPTR.
(potential_constant_expression_1): Return true for
UBSAN_NULL, UBSAN_BOUNDS and UBSAN_VPTR internal calls.
* typeck.c (build_class_member_access_expr): Provide locus
for COMPONENT_REFs.
(build_static_cast_1): Instrument downcasts.
* class.c (build_base_path): For -fsanitize=vptr and !fixed_type_p
add ubsan instrumentation for virtual_access.
* call.c: Include internal-fn.h.
(set_flags_from_callee): Handle internal calls.
gcc/testsuite/
* g++.dg/ubsan/vptr-1.C: New test.
* g++.dg/ubsan/vptr-2.C: New test.
* g++.dg/ubsan/vptr-3.C: New test.
* g++.dg/ubsan/vptr-4.C: New test.
* g++.dg/ubsan/vptr-5.C: New test.
* g++.dg/ubsan/vptr-6.C: New test.
* g++.dg/ubsan/vptr-7.C: New test.
* g++.dg/ubsan/vptr-8.C: New test.
* g++.dg/ubsan/vptr-9.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219695 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-15 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 15 Jan 2015 22:17:09 +0000 (22:17 +0000)]
2015-01-15  Tobias Burnus  <burnus@net-b.de>

        * openmp.c (check_symbol_not_pointer, resolve_oacc_data_clauses,
        resolve_oacc_deviceptr_clause, resolve_omp_clauses,
        gfc_resolve_oacc_declare): Replace '%s' by %qs.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219694 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2015-01-15 Richard Sandiford <richard.sandiford@arm.com>
rsandifo [Thu, 15 Jan 2015 22:15:47 +0000 (22:15 +0000)]
2015-01-15  Richard Sandiford  <richard.sandiford@arm.com>

Update copyright years in docs/.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219693 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agocontrib/
rsandifo [Thu, 15 Jan 2015 22:09:13 +0000 (22:09 +0000)]
contrib/
* update-copyright.py (Copyright.__init__): Add a regexp for
"copyright = u'".
(Copyright.update_copyright): Don't add a space before the year
in that case.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219692 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogo/build: cgo works on linux/alpha.
ian [Thu, 15 Jan 2015 22:06:54 +0000 (22:06 +0000)]
go/build: cgo works on linux/alpha.

From Uros Bizjak.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219691 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * configure.ac: Check for networking libraries; see NET_LIBS.
ian [Thu, 15 Jan 2015 21:10:09 +0000 (21:10 +0000)]
* configure.ac: Check for networking libraries; see NET_LIBS.
* Makefile.am (go$(EXEEXT)): Link against NET_LIBS.
(gofmt$(EXEEXT), cgo$(EXEEXT)): Likewise.
* configure, Makefile.in: Rebuild.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219690 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/59366
jason [Thu, 15 Jan 2015 21:02:15 +0000 (21:02 +0000)]
PR c++/59366
* name-lookup.c (pushdecl_maybe_friend_1): Hide friend functions
and function templates, declared only in the class.
* decl.c (duplicate_decls): Reveal hidden friend functions or
function templates, if they are redeclared outside the class.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219689 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoPR libffi/64572
rth [Thu, 15 Jan 2015 21:01:21 +0000 (21:01 +0000)]
PR libffi/64572

        * include/ffi.h.in (FFI_TYPE_LAST): Set to COMPLEX only if complex
        numbers are supported by the backend.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219688 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/64356
jason [Thu, 15 Jan 2015 20:46:09 +0000 (20:46 +0000)]
PR c++/64356
* constexpr.c (cxx_eval_binary_expression): Fix pasto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219687 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/63283
jason [Thu, 15 Jan 2015 20:46:03 +0000 (20:46 +0000)]
PR c++/63283
* constexpr.c (potential_constant_expression_1): Handle reference
args in templates.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@219686 138bc75d-0d04-0410-961f-82ee72b054a4