1. 06 Oct, 2015 15 commits
    • Move declarations, assign types, renaming. · 8e4dc590
      1. Move declarations near the assignment/usage.
      2. Assign type to members which were void*.
      3. Rename scop->context to scop::param_context, and scop::ctx to
      scop::isl_context
      
      No functional changes intended. Passes regtest and bootstrap.
      
      gcc/ChangeLog:
      
      2015-10-05  Aditya Kumar  <aditya.k7@samsung.com>
      
              * graphite-dependences.c (scop_get_reads): Renamed scop->context to scop->param_context.
              (scop_get_must_writes): Same.
              (scop_get_may_writes): Same.
              (scop_get_original_schedule): Same.
              (scop_get_transformed_schedule): Same.
              (subtract_commutative_associative_deps): Same.
              * graphite-isl-ast-to-gimple.c (add_parameters_to_ivs_params): Same.
              (generate_isl_context): Same.
              (generate_isl_schedule): Same.
              (scop_to_isl_ast): Same.
              (graphite_regenerate_ast_isl): Same.
              * graphite-optimize-isl.c (scop_get_domains): Same.
              (optimize_isl): Renamed scop->context to scop->param_context.
              * graphite-poly.c (new_poly_bb): Change the type of argument to gimple_poly_bb_p.
              (new_scop): Renamed scop->context to scop->param_context.
              (free_scop): Same.
              (print_scop_context): Same.
              * graphite-poly.h (new_poly_dr): Change the type of argument from void* to data_reference_p.
              (struct poly_bb): Change the type of black_box to gimple_poly_bb_p.
              (new_poly_bb): Change the type of argument from void* to gimple_poly_bb_p.
              (pbb_set_black_box): Same.
              (struct scop): Rename context to param_context, ctx to isl_context.
              * graphite-scop-detection.c (scop_detection::build_scop_bbs_1): Move declarations closer to assignment.
              (find_params_in_bb): Same.
              (find_scop_parameters): Same.
              * graphite-sese-to-poly.c (unsigned ssa_name_version_typesize): Global to be used for statement IDs.
              (isl_id_for_pbb): Use ssa_name_version_typesize.
              (simple_copy_phi_p): Move declarations closer to assignment.
              (build_pbb_scattering_polyhedrons): Same.
              (build_scop_scattering): Same.
              (isl_id_for_ssa_name): Same.
              (extract_affine_name): Same.
              (extract_affine_int): Same.
              (extract_affine): Same.
              (set_scop_parameter_dim): Use renamed member.
              (build_loop_iteration_domains): Same.
              (add_param_constraints): Same.
              (build_scop_iteration_domain): Same.
              (pdr_add_data_dimensions): Same.
              (build_poly_dr): Same.
              (build_scop_drs): Move declarations closer to assignment.
              (analyze_drs_in_stmts): Same.
              (insert_out_of_ssa_copy): Same.
              (insert_out_of_ssa_copy_on_edge): Same.
              (propagate_expr_outside_region): Same.
              (rewrite_phi_out_of_ssa): Same.
              (rewrite_degenerate_phi): Same.
              (rewrite_reductions_out_of_ssa): Same.
              (rewrite_cross_bb_scalar_dependence): Same.
              (handle_scalar_deps_crossing_scop_limits): Same.
              (rewrite_cross_bb_scalar_deps): Same.
              * graphite.c (graphite_transform_loops): Use renamed member.
      
      From-SVN: r228528
      Aditya Kumar committed
    • re PR c/65345 (ICE with _Generic selection on _Atomic int) · 07119921
      	PR c/65345
      	* config/alpha/alpha.c (alpha_atomic_assign_expand_fenv): Use
      	create_tmp_var_raw instead of create_tmp_var.
      
      From-SVN: r228527
      Uros Bizjak committed
    • Fix PR c/65345 for AArch64 · 09ba9ef7
      
      
      2015-10-06  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>
      
      	PR c/65345
      	* config/aarch64/aarch64-builtins.c (aarch64_atomic_assign_expand_fenv):
      	Use create_tmp_var_raw instead of create_tmp_var.
      
      From-SVN: r228526
      Ramana Radhakrishnan committed
    • AVX-512. Avoid upper-bank registers when splitting vec_extract_lo instruction. · 2d83470f
      gcc/
      	PR target/67849
      	* config/i386/sse.md (define_split vec_select/V8FI): Restrict
      	split for upper-bank registers when target does not support
      	AVX512VL.
      	(define_insn "vec_extract_lo_<mode><mask_name>"): Restrict
      	split when target does not support AVX512VL.
      
      From-SVN: r228525
      Alexander Fomin committed
    • re PR c/65345 (ICE with _Generic selection on _Atomic int) · 2d546fb7
              PR c/65345
              * config/rs6000/rs6000.c (rs6000_atomic_assign_expand_fenv):
              Adjust to use create_tmp_var_raw instead of create_tmp_var.
      
      From-SVN: r228524
      David Edelsohn committed
    • builtin_target.c: Fix AVX-512VBMI detection. · bdef5442
      gcc/testsuite/
              * gcc.target/i386/builtin_target.c: Fix AVX-512VBMI detection.
      
      From-SVN: r228523
      Kirill Yukhin committed
    • rl78.c (rl78_rtx_costs): Improve cost estimates for multiplication. · 2ef98fb9
      	* config/rl78/rl78.c (rl78_rtx_costs): Improve cost estimates for
      	multiplication.
      
      From-SVN: r228521
      Nick Clifton committed
    • AMD znver1 enablement. · 9ce29eb0
      2015-10-06  Venkataramanan Kumar  <Venkataramanan.kumar@amd.com>
      	
      	AMD znver1 enablement. 
      	* config.gcc (i[34567]86-*-linux* | ...): Add znver1.
      	(case ${target}): Add znver1.
      	* config/i386/cpuid.h(bit_CLZERO):  Define.
      	* config/i386/driver-i386.c: (host_detect_local_cpu): Let
      	-march=native recognize znver1 processors. 
      	* config/i386/i386-c.c (ix86_target_macros_internal): Add
      	znver1, clzero def_and_undef. 
      	* config/i386/i386.c (struct processor_costs znver1_cost): New.
      	(m_znver1): New definition.
      	(m_AMD_MULTIPLE): Includes m_znver1.
      	(processor_target_table): Add znver1 entry.
      	(ix86_target_string) : Add clzero entry.
      	(static const char *const cpu_names): Add znver1 entry.
      	(ix86_option_override_internal): Add znver1 instruction sets.
      	(PTA_CLZERO) :  New definition.
      	(ix86_option_override_internal): Handle new clzerooption.
      	(ix86_issue_rate): Add znver1.
      	(ix86_adjust_cost): Add znver1.                
      	(ia32_multipass_dfa_lookahead): Add znver1.
      	(has_dispatch): Add znver1.       
      	* config/i386/i386.h (TARGET_znver1): New definition. 
      	(TARGET_CLZERO): Define.
      	(TARGET_CLZERO_P): Define.
      	(struct ix86_size_cost): Add TARGET_ZNVER1.
      	(enum processor_type): Add PROCESSOR_znver1.
      	* config/i386/i386.md (define_attr "cpu"): Add znver1.
      	(set_attr znver1_decode): New definitions for znver1.
      	* config/i386/i386.opt (flag_dispatch_scheduler): Add znver1.
      	(mclzero): New.
      	* config/i386/mmx.md (set_attr znver1_decode): New definitions
      	for znver1.
      	* config/i386/sse.md (set_attr znver1_decode): Likewise.
      	* config/i386/x86-tune.def:  Add znver1 tunings.
      	* config/i386/znver1.md: Introduce znver1 cpu and include new md file.
      	* gcc/doc/invoke.texi: Add details about znver1
      
      From-SVN: r228520
      Venkataramanan Kumar committed
    • re PR tree-optimization/67859 (ICE on valid code at -O2 and -O3 on x86_64-linux-gnu) · 0580f6a1
      2015-10-06  Richard Biener  <rguenther@suse.de>
      
      	PR tree-optimization/67859
      	* tree-ssa-pre.c (create_expression_by_pieces): Properly
      	discard not inserted stmts.
      
      	* gcc.dg/torture/pr67859.c: New testcase.
      
      From-SVN: r228519
      Richard Biener committed
    • Update template instantiation documentation · badfb2fb
      	* doc/extend.texi (Template Instantiation): Reorder options and
      	de-emphasize -frepo.
      	* doc/invoke.texi (C++ Dialect Options): Use -fstrict-enums in
      	example instead of -frepo.
      
      From-SVN: r228518
      Jonathan Wakely committed
    • re PR c/65345 (ICE with _Generic selection on _Atomic int) · 68ea7618
      	PR c/65345
      	* config/sparc/sparc.c (sparc_atomic_assign_expand_fenv): Adjust to
      	use create_tmp_var_raw rather than create_tmp_var.
      
      From-SVN: r228516
      Eric Botcazou committed
    • builtin_target.c: Fix AVX-512VBMI detection. · 4a2fc4d4
      gcc/testsuite/
      	* gcc.target/i386/builtin_target.c: Fix AVX-512VBMI detection.
      
      From-SVN: r228515
      Kirill Yukhin committed
    • tree-vectorizer.h (vec_info): New base class for... · 310213d4
      2015-10-06  Richard Biener  <rguenther@suse.de>
      
      	* tree-vectorizer.h (vec_info): New base class for...
      	(_loop_vec_info): ... this and ...
      	(_bb_vec_info): ... this.
      	(vect_is_simple_use, vect_is_simple_use_1, new_stmt_vec_info,
      	vect_analyze_data_refs_alignment, vect_verify_datarefs_alignment,
      	vect_analyze_data_ref_accesses, vect_analyze_data_refs,
      	vect_schedule_slp, vect_analyze_slp, vect_pattern_recog,
      	vect_destroy_datarefs): Adjust interface to take a vec_info *
      	rather than both a loop_vec_info and a bb_vec_info argument.
      	* tree-vect-data-refs.c (vect_compute_data_refs_alignment,
      	vect_verify_datarefs_alignment, vect_enhance_data_refs_alignment,
      	vect_analyze_data_refs_alignment, vect_analyze_data_ref_accesses,
      	vect_analyze_data_refs, vect_create_data_ref_ptr): Adjust
      	accordingly.
      	* tree-vect-loop.c (new_loop_vec_info): Initialize base class.
      	(destroy_loop_vec_info, vect_analyze_loop_2,
      	vect_is_simple_reduction_1, get_initial_def_for_induction,
      	vect_create_epilog_for_reduction, vectorizable_reduction,
      	vectorizable_live_operation, vect_transform_loop): Adjust.
      	* tree-vect-patterns.c (type_conversion_p,
      	vect_recog_widen_mult_pattern, vect_recog_widen_shift_pattern,
      	vect_recog_rotate_pattern, vect_recog_vector_vector_shift_pattern,
      	vect_recog_divmod_pattern, vect_recog_mixed_size_cond_pattern,
      	check_bool_pattern, vect_recog_bool_pattern,
      	vect_mark_pattern_stmts, vect_pattern_recog): Likewise.
      	* tree-vect-slp.c (vect_get_and_check_slp_defs,
      	vect_build_slp_tree_1, vect_build_slp_tree, vect_analyze_slp_cost_1,
      	vect_analyze_slp_instance, vect_analyze_slp, destroy_bb_vec_info,
      	vect_slp_analyze_bb_1, vect_schedule_slp): Likewise.
      	(new_bb_vec_info): Initialize base classs.
      	* tree-vect-stmts.c (record_stmt_cost, process_use,
      	vect_get_vec_def_for_operand, vect_finish_stmt_generation,
      	vectorizable_mask_load_store, vectorizable_call,
      	vectorizable_simd_clone_call, vectorizable_conversion,
      	vectorizable_assignment, vectorizable_shift,
      	vectorizable_operation, vectorizable_store,
      	vectorizable_load, vect_is_simple_cond, vectorizable_condition,
      	new_stmt_vec_info, vect_is_simple_use, vect_is_simple_use_1): Likewise.
      	* tree-vectorizer.c (vect_destroy_datarefs): Likewise.
      
      From-SVN: r228514
      Richard Biener committed
    • builtin_target.c: Add check for AES and PCLMUL. · 5097195f
      gcc/testsuite/
      	* gcc.target/i386/builtin_target.c: Add check for AES and PCLMUL.
      
      From-SVN: r228513
      Kirill Yukhin committed
    • Daily bump. · 5d51afce
      From-SVN: r228510
      GCC Administrator committed
  2. 05 Oct, 2015 25 commits
    • Fix PR65345 in SH backend · 7c286398
      Adjust to use create_tmp_var_raw rather than create_tmp_var at
      sh_atomic_assign_expand_fenv.
      
      From-SVN: r228502
      Kaz Kojima committed
    • re PR c++/53856 (Default argument allowed on member defined outside of class template) · fcbc0f7c
      /cp
      2015-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53856
      	* pt.c (check_default_tmpl_args): Per [temp.param]/9, do not
      	reject default template arguments in out of class definitions
      	of members of non-template classes.
      
      /testsuite
      2015-10-05  Paolo Carlini  <paolo.carlini@oracle.com>
      
      	PR c++/53856
      	* g++.dg/template/defarg19.C: New.
      	* g++.dg/template/defarg20.C: Likewise.
      
      From-SVN: r228501
      Paolo Carlini committed
    • Remove diffstat from ChangeLog. · 1970d849
      From-SVN: r228500
      Richard Sandiford committed
    • lex: Update unicode letters table to Unicode 8.0.0. · 149ea2cf
          
          Fixes golang/go#12322.
          
          Reviewed-on: https://go-review.googlesource.com/13985
      
      From-SVN: r228497
      Ian Lance Taylor committed
    • * tree-ssa-loop-im.c · f67b07b6
      	(move_computations_dom_walker::before_dom_children): Don't set
      	SSA_NAME_ANTI_RANGE_P.
      	* tree-ssa-phiopt.c (value_replacement): Likewise.
      
      From-SVN: r228496
      Marek Polacek committed
    • increase the number of parameters · 8bc2421c
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r228494
      Aditya Kumar committed
    • move param detection to scop detection · 87ccab5d
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r228493
      Aditya Kumar committed
    • move scop detection related stuff to graphite-scop-detection.c · 076d564d
      Co-Authored-By: Sebastian Pop <s.pop@samsung.com>
      
      From-SVN: r228492
      Aditya Kumar committed
    • IPA-CP Alignment lattice cleanup · c8710b5c
      2015-10-05  Martin Jambor  <mjambor@suse.cz>
      	    Jan Hubicka  <hubicka@ucw.cz>
      
      	* ipa-cp.c (ipcp_alignment_lattice): New type.
      	(ipcp_param_lattices): Use the above to represent alignment.
      	(ipcp_alignment_lattice::print): New function.
      	(print_all_lattices): Use it to print alignment information.
      	(ipcp_alignment_lattice::top_p): New function.
      	(ipcp_alignment_lattice::bottom_p): Likewise.
      	(ipcp_alignment_lattice::set_to_bottom): Likewise.
      	(ipcp_alignment_lattice::meet_with_1): Likewise.
      	(ipcp_alignment_lattice::meet_with): Two new overloaded functions.
      	(set_all_contains_variable): Use set_to_bottom of alignment lattice.
      	(initialize_node_lattices): Likewise.
      	(propagate_alignment_accross_jump_function): Work with the new class
      	for alignment lattices.
      	(propagate_constants_accross_call): Pass only the alignment lattice to
      	propagate_alignment_accross_jump_function.
      	(ipcp_store_alignment_results): Work with the new class for alignment
      	lattices.
      
      testsuite/
      	* gcc.dg/ipa/propalign-4.c: New test.
      	* gcc.dg/ipa/propalign-5.c: Likewise.
      
      
      Co-Authored-By: Jan Hubicka <hubicka@ucw.cz>
      
      From-SVN: r228491
      Martin Jambor committed
    • re PR middle-end/67821 (ICE in duplicate_ssa_name_range_info) · 85339618
      	PR tree-optimization/67821
      	* tree-ssanames.c (duplicate_ssa_name_range_info): Remove an assert.
      
      	* gcc.dg/torture/pr67821-2.c: New test.
      	* gcc.dg/torture/pr67821.c: New test.
      
      From-SVN: r228490
      Marek Polacek committed
    • Move runtime transactional memory tests to libitm testsute. · 66c69a82
      From-SVN: r228489
      Jason Merrill committed
    • [PR other/65021] mkoffloads -save-temps handling, and cleanup cleanup · 4314a3ef
      	gcc/
      	PR other/65021
      	* config/i386/intelmic-mkoffload.c (mkoffload_atexit): Rename
      	function to...
      	(mkoffload_cleanup): ... this.  Adjust all users.
      	(maybe_unlink): Look at save_temps and verbose flags instead of
      	debug flag.
      	(main): Parse "-save-temps" flag.
      	(generate_target_descr_file, generate_target_offloadend_file)
      	(generate_host_descr_file, prepare_target_image): Pass it on.
      	* config/nvptx/mkoffload.c (tool_cleanup): Implement.
      	(mkoffload_cleanup): New function.
      	(maybe_unlink): Look at save_temps and verbose flags instead of
      	debug flag.
      	(main): Instead of calling utils_cleanup, register atexit handler
      	for mkoffload_cleanup.
      	(main): Parse "-save-temps" flag.
      	(compile_native, main): Pass it on.
      	* lto-wrapper.c (compile_offload_image): Likewise.
      
      From-SVN: r228488
      Thomas Schwinge committed
    • make more gimple_x_ptr accessors const correct · 1d10676d
      gcc/ChangeLog:
      
      2015-10-05  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* gimple.h (gimple_op_ptr): Require a non const gimple *.
      	(gimple_assign_lhs_ptr): Likewise.
      	(gimple_assign_rhs1_ptr): Likewise.
      	(gimple_assign_rhs2_ptr): Likewise.
      	(gimple_assign_rhs3_ptr): Likewise.
      	(gimple_call_lhs_ptr): Likewise.
      	(gimple_call_fn_ptr): Likewise.
      	(gimple_call_chain_ptr): Likewise.
      		(gimple_call_arg_ptr): Likewise.
      		(gimple_cond_lhs_ptr): Likewise.
      	(gimple_cond_rhs_ptr): Likewise.
      	(gimple_switch_index_ptr): Likewise.
      	(gimple_return_retval_ptr): Likewise.
      
      From-SVN: r228487
      Trevor Saunders committed
    • remove unused gasm accessors · eedc1884
      gcc/ChangeLog:
      
      2015-10-05  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* gimple.h (gimple_asm_input_op_ptr): Remove.
      	(gimple_asm_output_op_ptr): Likewise.
      
      From-SVN: r228486
      Trevor Saunders committed
    • remove gimple_location_ptr () · b2b91e85
      gcc/ChangeLog:
      
      2015-10-05  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* gimple.h (gimple_location_ptr): Remove.
      	* tree-vrp.c (check_all_array_refs): Adjust.
      
      From-SVN: r228485
      Trevor Saunders committed
    • make build_uses store tree * instead of tree · 572d790a
      gcc/ChangeLog:
      
      2015-10-05  Trevor Saunders  <tbsaunde+gcc@tbsaunde.org>
      
      	* tree-ssa-operands.c (build_uses): store tree * instead of
      	tree.
      	(finalize_ssa_uses): Adjust.
      	(append_use): Likewise.
      	(verify_ssa_operands): Likewise.
      
      From-SVN: r228484
      Trevor Saunders committed
    • Add a build_real_truncate helper function · 73463c5e
      ...which simplifies the match.pd patterns I'm about to add.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.
      
      gcc/
      	* real.h (build_real_truncate): Declare.
      	* tree.c (build_real_truncate): New function.
      	(strip_float_extensions): Use it.
      	* builtins.c (fold_builtin_cabs, fold_builtin_sqrt, fold_builtin_cbrt)
      	(fold_builtin_hypot, fold_builtin_pow): Likewise.
      	* match.pd: Likewise.
      
      From-SVN: r228483
      Richard Sandiford committed
    • [AArch64] Fix output assembly bug under TLSIE ILP32 · 5b295a81
      2015-10-05 James Greenhalgh <james.greenhalgh@arm.com>
      	   Jiong Wang  <jiong.wang@arm.com>
      
      	* config/aarch64/aarch64.md (tlsie_tiny_sidi): Replace "<w>" with "w".
      
      
      Co-Authored-By: Jiong Wang <jiong.wang@arm.com>
      
      From-SVN: r228482
      James Greenhalgh committed
    • cpuinfo.c (get_intel_cpu): Detect "skylake-avx512". · 6a192b5a
      libgcc/
      	* config/i386/cpuinfo.c (get_intel_cpu): Detect "skylake-avx512".
      gcc/testsuite/
      	* gcc.target/i386/builtin_target.c: Add check for "skylake-avx512".
      
      From-SVN: r228481
      Kirill Yukhin committed
    • Cleanup directives. · 4fbf5c4e
      From-SVN: r228479
      Christian Bruel committed
    • Remove REAL_VALUE_FROM_CONST_DOUBLE · 34a72c33
      To maintain symmetry after the previous removal of
      CONST_DOUBLE_FROM_REAL_VALUE, this patch also gets rid of
      REAL_VALUE_FROM_CONST_DOUBLE.  All the macro did was copy the
      contents of CONST_DOUBLE_REAL_VALUE into a temporary real_value
      structure.  In many cases there was no need for this temporary
      and we could simply use the CONST_DOUBLE_REAL_VALUE directly.
      For that reason this patch is less automatic than the others.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/
      	* real.h (REAL_VALUE_FROM_CONST_DOUBLE): Delete.
      	* config/aarch64/aarch64.c (aarch64_float_const_zero_rtx_p)
      	(aarch64_print_operand, aarch64_float_const_representable_p)
      	(aarch64_output_simd_mov_immediate): Use CONST_DOUBLE_REAL_VALUE
      	instead of REAL_VALUE_FROM_CONST_DOUBLE.
      	* config/arc/arc.c (arc_print_operand): Likewise.
      	* config/arm/arm.c (arm_const_double_rtx, vfp3_const_double_index)
      	(neon_valid_immediate, arm_print_operand, arm_emit_fp16_const)
      	(vfp3_const_double_for_fract_bits, vfp3_const_double_for_bits):
      	Likewise.
      	* config/arm/arm.md (*arm32_movhf, consttable_4, consttable_8)
      	(consttable_16): Likewise.
      	* config/arm/vfp.md (*movhf_vfp_neon, *movhf_vfp): Likewise.
      	* config/avr/avr.c (avr_print_operand): Likewise.
      	* config/bfin/bfin.md: Likewise (in a define_split).
      	* config/c6x/c6x.md: Likewise (in a define_split).
      	* config/cr16/cr16.c (cr16_const_double_ok): Likewise.
      	(cr16_print_operand): Likewise.
      	* config/cris/cris.c (cris_print_operand): Likewise.
      	* config/epiphany/epiphany.c (epiphany_print_operand): Likewise.
      	* config/fr30/fr30.c (fr30_print_operand): Likewise.
      	(fr30_const_double_is_zero): Likewise.
      	* config/frv/frv.c (frv_print_operand, output_move_single): Likewise.
      	* config/frv/frv.md: Likewise (in a define_split).
      	* config/frv/predicates.md (int_2word_operand): Likewise.
      	* config/h8300/h8300.c (h8300_print_operand): Likewise.
      	* config/i386/i386.c (standard_80387_constant_p): Likewise.
      	(ix86_print_operand, ix86_split_to_parts): Likewise.
      	* config/i386/i386.md: Likewise (in a define_split).
      	* config/ia64/ia64.c (ia64_split_tmode, ia64_print_operand): Likewise.
      	* config/iq2000/iq2000.md (movsf_lo_sum, movsf_high): Likewise.
      	* config/m32r/m32r.c (easy_df_const, m32r_print_operand): Likewise.
      	* config/m68k/m68k.c (handle_move_double, standard_68881_constant_p)
      	(print_operand): Likewise.
      	* config/m68k/m68k.md (movsf_cf_hard, movdf_cf_hard): Likewise.
      	* config/mep/mep.md: Likewise (in define_split).
      	* config/microblaze/microblaze.c (microblaze_const_double_ok)
      	(print_operand): Likewise.
      	* config/mips/mips.md (consttable_float): Likewise.
      	* config/mmix/mmix.c (mmix_intval): Likewise.
      	* config/mn10300/mn10300.c (mn10300_print_operand): Likewise.
      	* config/nvptx/nvptx.c (nvptx_print_operand): Likewise.
      	* config/pa/pa.c (pa_singlemove_string): Likewise.
      	* config/pdp11/pdp11.c (pdp11_expand_operands): Likewise.
      	(pdp11_asm_print_operand, legitimate_const_double_p): Likewise.
      	* config/rs6000/rs6000.c (num_insns_constant, rs6000_emit_cmove)
      	(output_toc): Likewise.
      	* config/rs6000/rs6000.md: Likewise (in define_splits).
      	* config/rx/rx.c (rx_print_operand): Likewise.
      	* config/s390/s390.c (s390_output_pool_entry): Likewise.
      	* config/sh/sh.c (fp_zero_operand, fp_one_operand): Likewise.
      	* config/sh/sh.md (consttable_sf, consttable_df): Likewise
      	(and also in define_splits).
      	* config/sparc/sparc.c (fp_sethi_p, fp_mov_p): Likewise.
      	(fp_high_losum_p): Likewise.
      	* config/sparc/sparc.md (*movsf_insn, *movsf_lo_sum): Likewise.
      	(*movsf_high): Likewise.
      	* config/spu/spu.c (const_double_to_hwint): Likewise.
      	* config/v850/v850.c (const_double_split): Likewise.
      	* config/vax/vax.c (vax_float_literal): Likewise.
      	* config/visium/visium.c (visium_expand_copysign): Likewise.
      	* config/visium/visium.md: Likewise (in define_split).
      	* config/xtensa/predicates.md (const_float_1_operand): Likewise.
      	* config/xtensa/xtensa.c (print_operand): Likewise.
      	(xtensa_output_literal): Likewise.
      	* cprop.c (implicit_set_cond_p): Likewise.
      	* dwarf2out.c (insert_float): Likewise.
      	* expmed.c (expand_mult, make_tree): Likewise.
      	* expr.c (compress_float_constant): Likewise.
      	* rtlanal.c (split_double): Likewise.
      	* simplify-rtx.c (avoid_constant_pool_reference): Likewise.
      	(simplify_const_unary_operation, simplify_binary_operation_1)
      	(simplify_const_binary_operation): Likewise.
      	(simplify_const_relational_operation): Likewise.
      	* varasm.c (output_constant_pool_2): Likewise.
      
      From-SVN: r228478
      Richard Sandiford committed
    • Remove remaining uses of CONST_DOUBLE_FROM_REAL_VALUE · 555affd7
      This patch replaces all uses of CONST_DOUBLE_FROM_REAL_VALUE
      with the already-existing const_double_from_real_value.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/
      	* real.h (CONST_DOUBLE_ATOF): Use const_double_from_real_value
      	instead of CONST_DOUBLE_FROM_REAL_VALUE.
      	(CONST_DOUBLE_FROM_REAL_VALUE): Delete.
      	* config/c6x/c6x.md (divsf3, divdf3): Use const_double_from_real_value
      	instead of CONST_DOUBLE_FROM_REAL_VALUE.
      	* config/epiphany/epiphany.md (fixuns_truncsfsi2): Likewise.
      	* config/i386/i386.c (standard_80387_constant_rtx): Likewise.
      	(ix86_expand_builtin, ix86_emit_i387_log1p, ix86_emit_i387_round)
      	(ix86_emit_swsqrtsf): Likewise.
      	* config/ia64/ia64.c (ia64_expand_builtin): Likewise.
      	* config/mips/mips.md (fixuns_truncdfsi2, fixuns_truncdfdi2)
      	(fixuns_truncsfsi2, fixuns_truncsfdi2): Likewise.
      	* config/pa/pa.c (pa_expand_builtin): Likewise.
      	* config/rs6000/rs6000.c (rs6000_load_constant_and_splat): Likewise.
      	(rs6000_scale_v2df): Likewise.
      	* config/rs6000/rs6000.md (*cmptf_internal2): Likewise.
      	* config/s390/s390.md (fixuns_truncdddi2, fixuns_trunctddi2)
      	(fixuns_trunc<BFP:mode><GPR:mode>2): Likewise.
      	* config/s390/vx-builtins.md (vec_ctd_s64, vec_ctd_u64, vec_ctsl)
      	(vec_ctul): Likewise.
      	* config/sparc/sparc.c (sparc_emit_fixunsdi): Likewise.
      	* config/spu/spu.c (hwint_to_const_double, spu_float_const): Likewise.
      	* config/spu/spu.md (floatunsdisf2, floatunstisf2): Likewise.
      	* cse.c (fold_rtx): Likewise.
      	* emit-rtl.c (immed_double_const): Likewise (in comments).
      	(init_emit_once): Likewise.
      	* expr.c (compress_float_constant, expand_expr_real_1)
      	(const_vector_from_tree): Likewise.
      	* optabs.c (expand_float, expand_fix): Likewise.
      	* reg-stack.c (reg_to_stack): Likewise.
      	* simplify-rtx.c (avoid_constant_pool_reference): Likewise.
      	(simplify_const_unary_operation, simplify_binary_operation_1)
      	(simplify_const_binary_operation, simplify_relational_operation)
      	(simplify_immed_subreg): Likewise.
      
      From-SVN: r228477
      Richard Sandiford committed
    • Remove remaining uses of REAL_ARITHMETIC · 5c88ea94
      This patch replaces all remaining uses of the old target macro
      REAL_ARITHMETIC with calls to the (now generic) real_arithmetic
      function.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/ada/
      	* gcc-interface/trans.c (convert_with_check): Use real_arithmetic
      	instead of REAL_ARITHMETIC.
      
      gcc/
      	* doc/tm.texi.in (REAL_ARITHMETIC): Delete.
      	* doc/tm.texi: Regenerate.
      	* real.h (REAL_ARITHMETIC): Delete.
      	* config/i386/i386.c (ix86_expand_lround, ix86_expand_round)
      	(ix86_expand_round_sse4): Use real_arithmetic instead of
      	REAL_ARITHMETIC.
      	* config/i386/sse.md (round<mode>2): Likewise.
      	* rtl.h (rtx_to_tree_code): Likewise (in comment).
      	* explow.c (rtx_to_tree_code): Likewise (in comment).
      	* match.pd: Likewise.
      	* simplify-rtx.c (simplify_binary_operation_1): Likewise.
      	* tree-ssa-math-opts.c (representable_as_half_series_p): Likewise.
      	(expand_pow_as_sqrts): Likewise.
      	* tree-pretty-print.c (dump_generic_node): Remove code that
      	was conditional on REAL_ARITHMETIC being undefined.
      
      From-SVN: r228476
      Richard Sandiford committed
    • Replace REAL_VALUES_LESS with real_less · 8cb41028
      This patch continues the removal of real-related macros by
      replacing REAL_VALUES_LESS with real_less.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/ada/
      	* gcc-interface/trans.c (convert_with_check): Use real_less instead
      	of REAL_VALUES_LESS.
      
      gcc/
      	* doc/tm.texi.in (REAL_VALUES_LESS): Delete.
      	* doc/tm.texi: Regenerate.
      	* real.h (real_less): Declare.
      	(REAL_VALUES_LESS): Delete.
      	* real.c (real_less): New function.
      	(real_compare): Use it.
      	* config/m68k/m68k.c (floating_exact_log2): Use real_less instead
      	of REAL_VALUES_LESS.
      	* config/microblaze/microblaze.c (microblaze_const_double_ok):
      	Likewise.
      	* fold-const.c (fold_convert_const_int_from_real): Likewise.
      	* simplify-rtx.c (simplify_const_unary_operation): Likewise.
      	(simplify_const_relational_operation): Likewise.
      	* tree-call-cdce.c (check_pow): Likewise.
      	(gen_conditions_for_pow_cst_base): Likewise.
      
      From-SVN: r228475
      Richard Sandiford committed
    • Remove remaining uses of REAL_VALUES_IDENTICAL · 1a25c6b1
      This patch continues the removal of real-related macros.
      We already had both the old-style REAL_VALUES_IDENTICAL and the
      new-style real_identical, so this patch replaces all remaining
      uses of the former with the latter.
      
      Bootstrapped & regression-tested on x86_64-linux-gnu.  Also tested by
      building one target per CPU directory and checking that there were
      no new warnings and no changes in testsuite output at -O2.
      
      gcc/
      	* real.h (REAL_VALUES_IDENTICAL): Delete.
      	* config/m68k/m68k.c (standard_68881_constant_p): Use real_identical
      	instead of REAL_VALUES_IDENTICAL.
      	* fold-const.c (operand_equal_p): Likewise.
      	* ipa-icf.c (sem_variable::equals): Likewise.
      	* tree-complex.c (some_nonzerop): Likewise.
      	(expand_complex_multiplication): Likewise.
      	* tree.c (simple_cst_equal): Likewise.
      	* varasm.c (compare_constant): Likewise.
      ---
       gcc/config/m68k/m68k.c | 5 ++---
       gcc/fold-const.c       | 3 +--
       gcc/ipa-icf.c          | 4 ++--
       gcc/real.h             | 1 -
       gcc/tree-complex.c     | 4 ++--
       gcc/tree.c             | 2 +-
       gcc/varasm.c           | 2 +-
       7 files changed, 9 insertions(+), 12 deletions(-)
      
      From-SVN: r228474
      Richard Sandiford committed