Ludovic Courtès
bcd119b7a3
re PR target/65711 (arm*-linux* "link" spec passes '-dynamic-linker' even for '-shared')
...
PR 65711
* config/arm/linux-elf.h (LINUX_TARGET_LINK_SPEC): Move
'-dynamic-linker' within %{!shared: ...}.
From-SVN: r224826
2015-06-23 09:06:55 +00:00
Ludovic Courtès
b837291d5a
* MAINTAINERS (Write After Approval): Add myself.
...
From-SVN: r224825
2015-06-23 08:52:51 +00:00
Uros Bizjak
7121e32bea
re PR target/66560 (Fails to generate ADDSUBPS)
...
PR target/66560
* config/i386/predicates.md (addsub_vm_operator): New predicate.
(addsub_vs_operator): Ditto.
(addsub_vs_parallel): Ditto.
* config/i386/sse.md (ssedoublemode): Add V4SF and V2DF modes.
(avx_addsubv4df3, avx_addsubv8sf3, sse3_addsubv2df3, sse3_addsubv4sf3):
Put minus RTX before plus and adjust vec_merge selector.
(*avx_addsubv4df3_1, *avx_addsubv4df3_1s, *sse3_addsubv2df3_1)
(*sse_addsubv2df3_1s, *avx_addsubv8sf3_1, *avx_addsubv8sf3_1s)
(*sse3_addsubv4sf3_1, *sse_addsubv4sf3_1s): Remove insn patterns.
(addsub vec_merge splitters): New combiner splitters.
(addsub vec_select/vec_concat splitters): Ditto.
testsuite/ChangeLog:
PR target/66560
* gcc.target/i386/pr66560-1.c: New test.
* gcc.target/i386/pr66560-2.c: Ditto.
* gcc.target/i386/pr66560-3.c: Ditto.
* gcc.target/i386/pr66560-4.c: Ditto.
From-SVN: r224824
2015-06-23 10:50:12 +02:00
Thomas Schwinge
31575896b2
[nvptx] gcc/testsuite/gcc.target/nvptx/
...
We don't claim to support "K&R C" for nvptx, but needed this corresponding
functionality ("incomplete prototypes") to support the Fortran
libgomp/openacc_lib.h file.
gcc/testsuite/
* gcc.target/nvptx/nvptx.exp: New file.
* gcc.target/nvptx/proto-1.c: Likewise.
From-SVN: r224822
2015-06-23 10:17:23 +02:00
Richard Biener
f9180d0e87
update_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES.
...
2015-06-23 Richard Biener <rguenther@suse.de>
* update_version_svn: Add gcc-4_8-branch to IGNORE_BRANCHES.
From-SVN: r224771
2015-06-23 07:48:06 +00:00
Bin Cheng
109bd2e61f
re PR tree-optimization/66449 (ICE: in build2_stat, at tree.c:4376 with -O3)
...
PR tree-optimization/66449
* tree-ssa-loop-niter.c (loop_exits_before_overflow): Use
POINTER_PLUS_EXPR for pointers.
gcc/testsuite
PR tree-optimization/66449
* gcc.dg/vect/pr66449.c: New test.
From-SVN: r224769
2015-06-23 02:27:49 +00:00
Alan Modra
350911e651
rtlanal.c (commutative_operand_precedence): Correct comments.
...
* rtlanal.c (commutative_operand_precedence): Correct comments.
* simplify-rtx.c (simplify_plus_minus_op_data_cmp): Delete forward
declaration. Return an int. Distinguish REG,REG return from
others.
(struct simplify_plus_minus_op_data): Make local to function.
(simplify_plus_minus): Don't set canonicalized if merely sorting
registers. Avoid packing ops if nothing changes. White space fixes.
From-SVN: r224768
2015-06-23 10:35:04 +09:30
GCC Administrator
6536a0a875
Daily bump.
...
From-SVN: r224767
2015-06-23 00:16:16 +00:00
Andreas Tobler
2a97995f81
MAINTAINERS (OS Port Maintainers): Add myself.
...
2015-06-22 Andreas Tobler <andreast@gcc.gnu.org>
* MAINTAINERS (OS Port Maintainers): Add myself.
(Various Maintainers): Remove myself from libffi testsuite.
From-SVN: r224760
2015-06-22 22:33:41 +02:00
Pierre-Marie de Rodat
6935a9233d
gcc.c (default_compilers): Pass "-o %g.s" to cc1 for headers even if -fdump-ada-spec is passed but not if...
...
* gcc.c (default_compilers): Pass "-o %g.s" to cc1 for headers even if
-fdump-ada-spec is passed but not if -fsyntax-only is.
cp/
* lang-specs.h: Pass "-o %g.s" to cc1plus for headers even if
-fdump-ada-spec is passed.
From-SVN: r224755
2015-06-22 19:19:48 +00:00
Pierre-Marie de Rodat
c6a2f2d98d
c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
...
c-family/
* c-ada-spec.h (cpp_operation): Add HAS_DEPENDENT_TEMPLATE_ARGS.
* c-ada-spec.c (collect_ada_nodes): Skip NAMESPACE_DECL
(dump_ada_template): Skip partially specialized types.
cp/
* decl2.c (cpp_check): Deal with HAS_DEPENDENT_TEMPLATE_ARGS.
From-SVN: r224754
2015-06-22 19:16:58 +00:00
Vladimir Makarov
a42e72d1d2
re PR bootstrap/63740 (GCC 4.9.2 bootstrap fails on ARM, haifa-sched.c:6507:1: internal compiler error: in lra_create)
...
2015-06-22 Vladimir Makarov <vmakarov@redhat.com>
PR bootstrap/63740
* lra-lives.c (process_bb_lives): Check insn copying the same
reload pseudo and don't create a copy for it.
From-SVN: r224753
2015-06-22 18:45:58 +00:00
Paolo Carlini
ea663be91a
decl.c (grokdeclarator): Use declspecs->locations[ds_virtual].
...
/cp
2015-06-22 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokdeclarator): Use declspecs->locations[ds_virtual].
/testsuite
2015-06-22 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/inherit/pure1.C: Test location too.
2015-06-22 Paolo Carlini <paolo.carlini@oracle.com>
* decl.c (grokdeclarator): Remove pointless code.
From-SVN: r224750
2015-06-22 17:35:34 +00:00
Jason Merrill
33273def7c
re PR testsuite/66621 (Mistakenly unsupported tests in g++.dg/torture/)
...
PR testsuite/66621
* g++.dg/debug, g++.dg/torture: Use dg-options rather than target
requirements for C++11 tests.
From-SVN: r224749
2015-06-22 13:24:37 -04:00
Jason Merrill
e8a3c59754
re PR c++/66515 (g++ segfaults when creating an std::initializer_list)
...
PR c++/66515
* call.c (implicit_conversion): Only reshape for classes.
From-SVN: r224748
2015-06-22 13:24:25 -04:00
Tom de Vries
5a5fd95154
Add missing update_stmt in transform_to_exit_first_loop_alt
...
2015-06-22 Tom de Vries <tom@codesourcery.com>
* tree-parloops.c (transform_to_exit_first_loop_alt): Add update_stmt
for cond_stmt.
From-SVN: r224746
2015-06-22 16:26:16 +00:00
Tom de Vries
2b9f69fd8a
Test for flag_parallelize_loops > 1
...
2015-06-22 Tom de Vries <tom@codesourcery.com>
* builtins.def (DEF_GOMP_BUILTIN): Test
'flag_tree_parallelize_loops > 1' instead of
'flag_tree_parallelize_loops'. Test flag_cilkplus.
From-SVN: r224745
2015-06-22 16:26:08 +00:00
Tom de Vries
f3c676e118
Verify dominators in early-out calculate_dominance_info
...
2015-06-22 Tom de Vries <tom@codesourcery.com>
* dominance.c (calculate_dominance_info): Verify dominators if
early-out.
From-SVN: r224744
2015-06-22 16:26:00 +00:00
Nick Clifton
a82484a2ee
isl-ast-gen-if.c (main): Increase size of a array to allow a[50] to be a valid location.
...
* gcc.dg/graphite/isl-ast-gen-if.c (main): Increase size of a
array to allow a[50] to be a valid location.
From-SVN: r224743
2015-06-22 16:25:08 +00:00
Jonathan Wakely
e39c4966c7
1.cc: Use non-negative rho argument.
...
* testsuite/26_numerics/complex/value_operations/1.cc: Use
non-negative rho argument.
From-SVN: r224739
2015-06-22 16:09:32 +01:00
Jonathan Wakely
e51d877098
list (__gnu_debug::list): Use allocator-aware _Safe_container base.
...
* include/debug/list (__gnu_debug::list): Use allocator-aware
_Safe_container base.
* include/debug/string (__gnu_debug::basic_string): Use
allocator-aware _Safe_container base for cxx11 ABI.
From-SVN: r224738
2015-06-22 16:09:27 +01:00
Jonathan Wakely
9eb659e003
locale_conv.h (__do_str_codecvt): Handle empty range.
...
* include/bits/locale_conv.h (__do_str_codecvt): Handle empty range.
(wstring_convert): Move into __cxx11 namespace.
(wbuffer_convert(streambuf*, _Codecvt*, state_type)): Fix exception
message.
From-SVN: r224737
2015-06-22 16:09:22 +01:00
Jonathan Wakely
4db6c2f585
re PR libstdc++/64657 (Support iterators with overloaded operator-comma)
...
PR libstdc++/64657
* include/bits/stl_uninitialized.h
(__uninitialized_copy::__uninit_copy): Cast expression to void.
From-SVN: r224736
2015-06-22 16:09:14 +01:00
Marek Polacek
9ea65ca688
match.pd ((x ^ y) ^ (x | y) -> x & y, (x & y) + (x ^ y) -> x | y, (x & y) | (x ^ y) -> x | y, (x & y) ^ (x ^ y) -> x | y, (x & y) + (x | y) -> x + y, (x | y) - (x ^ y) -> x & y, (x | y) - (x & y) -> x ^ y): New patterns.
...
* match.pd ((x ^ y) ^ (x | y) -> x & y,
(x & y) + (x ^ y) -> x | y, (x & y) | (x ^ y) -> x | y,
(x & y) ^ (x ^ y) -> x | y, (x & y) + (x | y) -> x + y,
(x | y) - (x ^ y) -> x & y, (x | y) - (x & y) -> x ^ y): New patterns.
* gcc.dg/fold-ior-1.c: New test.
* gcc.dg/fold-minus-2.c: New test.
* gcc.dg/fold-minus-3.c: New test.
* gcc.dg/fold-plus-1.c: New test.
* gcc.dg/fold-plus-2.c: New test.
* gcc.dg/fold-xor-4.c: New test.
* gcc.dg/fold-xor-5.c: New test.
From-SVN: r224734
2015-06-22 14:46:14 +00:00
Joseph Myers
f4f9641b12
* sv.po: Update.
...
From-SVN: r224730
2015-06-22 15:06:40 +01:00
Uros Bizjak
1ea0e674b0
re PR target/65871 (bzhi builtin/intrinsic wrongly assumes bzhi instruction doesn't set the ZF flag)
...
PR target/65871
* config/i386/i386.c (ix86_rtx_costs) <case COMPARE>: Ignore the
cost of embedded comparison.
From-SVN: r224729
2015-06-22 15:54:58 +02:00
Bill Schmidt
8f77aa9086
re PR target/65914 (error: unrecognizable insn)
...
[gcc]
2015-06-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/65914
* config/rs6000/predicates.md (altivec_register_operand): Permit
virtual stack registers.
(vsx_register_operand): Likewise.
(vfloat_operand): Likewise.
(vint_operand): Likewise.
(vlogical_operand): Likewise.
[gcc/testsuite]
2015-06-22 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
PR target/65914
* g++.dg/torture/pr65914.C: New.
From-SVN: r224725
2015-06-22 13:16:04 +00:00
Richard Biener
1a7611575b
c-torture.exp: Set LTO_TORTURE_OPTIONS conditional on not existing TORTURE_OPTIONS only.
...
2015-06-22 Richard Biener <rguenther@suse.de>
* lib/c-torture.exp: Set LTO_TORTURE_OPTIONS conditional on
not existing TORTURE_OPTIONS only.
* lib/gcc-dg.exp: Likewise.
From-SVN: r224724
2015-06-22 10:45:47 +00:00
Richard Biener
6d098c572a
tree-vectorizer.h (_loop_vec_info): Add scalar_cost_vec and single_scalar_iteration_cost members.
...
2015-06-22 Richard Biener <rguenther@suse.de>
* tree-vectorizer.h (_loop_vec_info): Add scalar_cost_vec
and single_scalar_iteration_cost members.
(LOOP_VINFO_SCALAR_ITERATION_COST): New.
(LOOP_VINFO_SINGLE_SCALAR_ITERATION_COST): Likewise.
(vect_get_single_scalar_iteration_cost): Remove.
* tree-vect-data-refs.c (vect_peeling_hash_get_lowest_cost):
Use LOOP_VINFO_SCALAR_ITERATION_COST.
* tree-vect-loop.c (destroy_loop_vec_info): Free
scalar_cost_vec.
(vect_get_single_scalar_iteration_cost): Compute result into
LOOP_VINFO_SINGLE_SCALAR_ITERATION_COST and
LOOP_VINFO_SCALAR_ITERATION_COST. Make static.
(vect_analyze_loop_2): Call vect_get_single_scalar_iteration_cost.
(vect_estimate_min_profitable_iters): Use them.
From-SVN: r224723
2015-06-22 10:44:02 +00:00
Christian Bruel
606e3099e8
add PR reference
...
From-SVN: r224722
2015-06-22 09:38:23 +02:00
Christian Bruel
e65530503a
Add -mflip-thumb for testing.
...
PR target/52144n
* config/arm/arm.c (add_attribute, arm_insert_attributes): New functions
(TARGET_INSERT_ATTRIBUTES): Define.
(thumb_flipper): New var.
* config/arm/arm.opt (-mflip-thumb): New switch.
PR target/52144
* gcc.target/arm/flip-thumb.c: New test.
From-SVN: r224721
2015-06-22 09:32:15 +02:00
Jan Hubicka
1628e36bcf
re PR ipa/65908 (ICE: in expand_thunk, at cgraphunit.c:1700)
...
PR ipa/65908
* ipa-icf.c (sem_item::target_supports_symbol_aliases): Remove
construction of arg_types.
(sem_function::sem_function): Likewise.
(sem_function::~sem_function): Remove destruction of arg_types.
(sem_function::compatible_parm_types_p): New function.
(sem_function::equals_wpa): Reorg matching of return values
and parameter types.
(sem_function::equals_private): Reorg mathcing of argument types.
(sem_function::parse_tree_args): Remove.
* ipa-icf.h (init_wpa): Do not call it.
(parse_tree_args): Remove.
(compatible_parm_types_p): Declare.
(result_type): Remove.
(arg_types): Remove.
* testsuite/g++.dg/ipa/pr65908.C: New testcase.
Co-Authored-By: Martin Liska <mliska@suse.cz>
From-SVN: r224720
2015-06-22 07:12:22 +00:00
Jan Hubicka
7083621fad
re PR rtl-optimization/66351 (r223883 miscompiles stage2 compiler on ia64)
...
PR ipa/66351
* ipa-polymorphic-call.c
(ipa_polymorphic_call_context::get_dynamic_type): Fix thinko when
initializing alias oracle; fix formating; set base_alias_set if it
is known.
From-SVN: r224719
2015-06-22 07:02:50 +00:00
Mikhail Maltsev
6b4db50158
Use std::swap instead of manual swaps.
...
gcc/
* auto-inc-dec.c (reverse_mem, reverse_inc): Remove.
(parse_add_or_inc): Use std::swap instead of reverse_{mem,inc}.
(find_inc): Likewise.
* combine.c (combine_simplify_rtx): Use std::swap instead of manually
swapping.
* df-core.c (df_worklist_dataflow_doublequeue): Likewise.
* df-scan.c (df_swap_refs): Remove.
(df_sort_and_compress_refs): Use std::swap instead of df_swap_refs.
* dominance.c (link_roots): Use std::swap instead of manually swapping.
* expr.c (expand_expr_real_2, do_store_flag): Likewise.
* fold-const.c (fold_relational_const): Likewise.
* genattrtab.c (simplify_test_exp): Likewise.
* gimple-match-head.c (gimple_resimplify2, gimple_resimplify3,
gimple_simplify): Likewise.
* ifcvt.c (noce_try_abs, find_if_header): Likewise.
* internal-fn.c (expand_addsub_overflow, expand_mul_overflow): Likewise.
* ipa-devirt.c (add_type_duplicate): Likewise.
* loop-iv.c (get_biv_step_1, iv_number_of_iterations): Likewise.
* lra-lives.c (lra_setup_reload_pseudo_preferenced_hard_reg): Likewise.
* lra.c (lra_create_copy): Likewise.
* lto-streamer-out.c (DFS::DFS): Likewise.
* modulo-sched.c (get_sched_window): Likewise.
* omega.c (omega_pretty_print_problem): Likewise.
* optabs.c (prepare_float_lib_cmp, expand_mult_highpart): Likewise.
* reload1.c (reloads_unique_chain_p): Likewise.
* sel-sched-ir.c (exchange_lv_sets, exchange_av_sets): Remove.
(exchange_data_sets): Move logic from exchange_{av,lv}_sets here and
use std::swap.
* simplify-rtx.c (simplify_unary_operation_1): Use std::swap instead of
manually swapping.
* tree-if-conv.c (is_cond_scalar_reduction, predicate_scalar_phi,
predicate_mem_writes): Likewise.
* tree-loop-distribution.c (pg_add_dependence_edges): Likewise.
* tree-predcom.c (combine_chains): Likewise.
* tree-ssa-alias.c (nonoverlapping_component_refs_p,
refs_may_alias_p_1): Likewise.
* tree-ssa-ifcombine.c (recognize_if_then_else): Likewise.
* tree-ssa-loop-ivopts.c (extract_cond_operands): Likewise.
* tree-ssa-loop-niter.c (refine_bounds_using_guard,
number_of_iterations_cond): Likewise.
* tree-ssa-phiopt.c (tree_ssa_phiopt_worker): Likewise.
* tree-ssa-sccvn.c (vn_nary_op_compute_hash): Likewise.
* tree-vect-slp.c (vect_build_slp_tree): Likewise.
* tree-vect-stmts.c (supportable_widening_operation): Likewise.
* tree-vrp.c (extract_range_from_binary_expr_1,
extract_range_from_unary_expr_1): Likewise.
gcc/cp/
* pt.c (maybe_adjust_types_for_deduction): Use std::swap instead of
manually swapping.
* semantics.c (finish_omp_atomic): Likewise.
* typeck.c (cp_build_array_ref): Likewise.
gcc/c-family/
* c-common.c (scalar_to_vector): Use std::swap instead of manually
swapping.
From-SVN: r224718
2015-06-22 02:54:11 +00:00
GCC Administrator
b40bfc067d
Daily bump.
...
From-SVN: r224717
2015-06-22 00:16:20 +00:00
GCC Administrator
1fa37db378
Daily bump.
...
From-SVN: r224712
2015-06-21 00:16:16 +00:00
Marek Polacek
0115b91d4c
* common.opt (fsanitize-undefined-trap-on-error): Add Driver.
...
From-SVN: r224708
2015-06-20 12:11:52 +00:00
GCC Administrator
b684754590
Daily bump.
...
From-SVN: r224706
2015-06-20 00:16:15 +00:00
Mikhail Maltsev
cd95a0d559
re PR c++/65882 (Internal compiler error: Error reporting routines re-entered)
...
PR c++/65882
gcc/cp/
* call.c (build_new_op_1): Check tf_warning flag in all cases.
gcc/testsuite/
* g++.dg/diagnostic/inhibit-warn-1.C: New test.
* g++.dg/diagnostic/inhibit-warn-2.C: New test.
From-SVN: r224702
2015-06-20 00:10:00 +00:00
Kaz Kojima
3cad5f64a8
re PR target/66591 ([SH] ICE: in get_reload_reg, at lra-constraints.c:633 with -mlra)
...
PR target/66591
* config/sh/sh.c (prepare_move_operands): Pre-allocate R0 for subreg
index term for base and index addressing when LRA is used.
From-SVN: r224701
2015-06-19 22:58:58 +00:00
Eric Botcazou
c1a569ef31
gigi.h (record_builtin_type): Adjust comment.
...
* gcc-interface/gigi.h (record_builtin_type): Adjust comment.
(tree create_type_decl): Likewise.
(create_var_decl_1): Add artificial_p and debug_info_p parameters.
(create_var_decl): Likewise.
(create_true_var_decl): Delete.
(create_subprog_decl): Add debug_info_p parameter.
* gcc-interface/decl.c (gnat_to_gnu_entity): Add artificial_p local
variable and use it throughout. Remove DECL_ARTIFICIAL settings.
<E_Variable>: Adjust calls to create_var_decl and create_var_decl_1.
Remove DECL_IGNORED_P settings.
<E_Enumeration_Type>: Likewise.
<E_Record_Type>: Likewise.
<E_Subprogram_Type>: Likewise. Remove artificial_flag local variable.
Adjust call to create_subprog_decl.
(get_minimal_subprog_decl): Likewise.
(elaborate_expression_1): Adjust call to create_var_decl.
* gcc-interface/trans.c (gigi): Adjust calls to create_var_decl and
create_subprog_decl. Remove DECL_ARTIFICIAL & DECL_IGNORED_P settings.
* gcc-interface/utils.c (maybe_pad_type): Likewise.
(record_builtin_type): Adjust comment.
(create_type_stub_decl): Remove obsolete comment.
(create_var_decl_1): Add artificial_p and debug_info_p parameters.
Set DECL_ARTIFICIAL and DECL_IGNORED_P accordingly.
(create_subprog_decl): Add debug_info_p parameter. Set DECL_IGNORED_P
accordingly.
From-SVN: r224699
2015-06-19 20:25:38 +00:00
Eric Botcazou
034e7d4912
* gcc-interface/misc.c (LANG_HOOKS_WARN_UNUSED_GLOBAL_DECL): Define.
...
From-SVN: r224698
2015-06-19 20:17:36 +00:00
Eric Botcazou
b24f734536
decl.c (gnat_to_gnu_entity): Make sure the size of a padding type built around the return type is positive.
...
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Function>: Make sure
the size of a padding type built around the return type is positive.
* gcc-interface/trans.c (gnat_to_gnu) <N_Simple_Return_Statement>:
Use INIT_EXPR instead of MODIFY_EXPR to assign to the return object.
From-SVN: r224697
2015-06-19 20:10:50 +00:00
Jason Merrill
1539357d45
fix ChangeLog date
...
From-SVN: r224696
2015-06-19 15:55:21 -04:00
Jason Merrill
2ddf4350d3
re PR c++/66585 (Internal compiler error when initialize field with lambda)
...
PR c++/66585
* pt.c (instantiate_class_template_1): Clear
cp_unevaluated_operand and c_inhibit_evaluation_warnings.
From-SVN: r224684
2015-06-19 14:37:41 -04:00
Jason Merrill
62245e6f7e
re PR c++/65880 (Member function issue with argument "pointer to const array of member function pointers")
...
PR c++/65880
* decl.c (build_ptrmemfunc_type): Check TYPE_GET_PTRMEMFUNC_TYPE after
cv-qualifiers.
* typeck.c (merge_types): build_ptrmemfunc_type before applying
quals and attributes.
From-SVN: r224678
2015-06-19 14:15:36 -04:00
Jason Merrill
30ac6e80ba
re PR c++/65973 (segmentation fault when compiling C++14 code)
...
PR c++/65973
* constexpr.c (build_constexpr_constructor_member_initializers):
Handle an empty STATEMENT_LIST.
From-SVN: r224677
2015-06-19 14:15:30 -04:00
Jason Merrill
892562cf28
re PR c++/65843 (multiple use of const variable in lamba in template function causes compile error)
...
PR c++/65843
* pt.c (tsubst_copy_and_build): Register a capture proxy in
local_specializations.
From-SVN: r224676
2015-06-19 14:15:24 -04:00
Jason Merrill
2e56298708
re PR c++/66061 (Internal Compiler Error when specializing a variable template when the specialization is variadic)
...
PR c++/66061
* g++.dg/cpp1y/var-templ31.C: New.
From-SVN: r224675
2015-06-19 14:15:17 -04:00
Jim Wilson
490948ca36
aarch64.md (mov<mode>:GPF): Don't call force_reg if op1 is an fp zero.
...
gcc/
* config/aarch64/aarch64.md (mov<mode>:GPF): Don't call force_reg if
op1 is an fp zero.
(movsf_aarch64): Change condition from register_operand to
aarch64_reg_or_fp_zero for op1. Change type for alternative 6 to
load1. Change type for alternative 7 to store1.
(movdf_aarch64): Likewise.
gcc/testsuite/
* gcc.target/aarch64/fmovd-zero-mem.c: New.
* gcc.target/aarch64/fmovd-zero-reg.c: New.
* gcc.target/aarch64/fmovf-zero-mem.c: New.
* gcc.target/aarch64/fmovf-zero-reg.c: New.
* gcc.target/aarch64/fmovld-zero-mem.c: New.
* gcc.target/aarch64/fmovld-zero-mem.c: New.
* gcc.target/aarch64/fmovd-zero.c: Delete.
* gcc.target/aarch64/fmovf-zero.c: Delete.
From-SVN: r224673
2015-06-19 10:22:38 -07:00