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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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