1. 11 Oct, 2016 40 commits
    • sparc.c (emit_scc_insn): Remove direct support for EQ and GEU in DImode if TARGET_SUBXC. · 4803de58
      	* config/sparc/sparc.c (emit_scc_insn): Remove direct support for EQ
      	and GEU in DImode if TARGET_SUBXC.
      	* config/sparc/sparc.md (seqdi<W:mode>_zero): Remove TARGET_SUBXC.
      	(seqdi<W:mode>_zero_subxc): Delete.
      	(neg_seqdi<W:mode>_zero): Remove TARGET_VIS3.
      	(neg_seqdi<W:mode>_zero_vis3): Delete.
      	(plus_seqdi<W:mode>_zero): Likewise.
      	(minus_seqdi<W:mode>_zero): Likewise.
      	(plus_plus_sltu<W:mode>): Accept only register.
      	(addx<W:mode>): Likewise.
      	(plus_sltu<W:mode>_vis3): Likewise.
      	(plus_plus_sltu<W:mode>_vis3): Likewise.
      	(neg_sgeu<W:mode>_vis3): Delete.
      	(minus_sgeu<W:mode>_vis3): Likewise.
      	(addxc<W:mode>): Accept only registers.
      	(neg_sltu<W:mode>_subxc): Write %%g0 instead of 0.
      	(minus_neg_sltu<W:mode>_subxc): Accept only register.
      	(neg_plus_sltu<W:mode>_subxc): Likewise.
      	(minus_sltu<W:mode>_subxc): Write %%g0 instead of 0.
      	(minus_minus_sltu<W:mode>_subxc): Accept only register.
      	(sgeu<W:mode>_insn_subxc): Delete.
      	(plus_sgeu<W:mode>_subxc): Likewise.
      	(subxc<W:mode>): Accept only register.
      	(scc splitter): Split always GEU again.
      
      From-SVN: r241012
      Eric Botcazou committed
    • iresolve.c (is_trig_resolved, [...]): Formatting fixes. · 0a4613f0
      	* iresolve.c (is_trig_resolved, resolve_trig_call): Formatting fixes.
      	* simplify.c (simplify_trig_call, degrees_f, radians_f,
      	gfc_simplify_atrigd, gfc_simplify_cotan): Likewise.
      
      From-SVN: r241010
      Jakub Jelinek committed
    • re PR tree-optimization/77424 (Identical statements in if-else branches) · 1fdf74c7
      	PR tree-optimization/77424
      	* tree-ssa-threadupdate.c (thread_through_all_blocks): Remove
      	dead conditionals.  Assert that all e->aux fields are NULL.
      
      From-SVN: r241009
      Jeff Law committed
    • re PR fortran/77942 (ICE: Floating point exception, in gfc_simplify_cshift, at… · f6cf4810
      re PR fortran/77942 (ICE: Floating point exception, in gfc_simplify_cshift, at fortran/simplify.c:1845)
      
      2016-10-11  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/77942
      	* simplify.c (gfc_simplify_cshift): Check for zero.
      
      2016-10-11  Steven G. Kargl  <kargl@gcc.gnu.org>
      
      	PR fortran/77942
      	* gfortran.dg/pr77942.f90
      
      From-SVN: r241008
      Steven G. Kargl committed
    • system-linux-armeb.ads (Backend_Overflow_Checks): Change to True. · 25607230
      	* system-linux-armeb.ads (Backend_Overflow_Checks): Change to True.
      	* system-linux-mips.ads (Backend_Overflow_Checks): Likewise.
      	* system-linux-mips64el.ads (Backend_Overflow_Checks): Likewise.
      	* system-linux-mipsel.ads (Backend_Overflow_Checks): Likewise.
      	* system-linux-sparcv9.ads (Backend_Overflow_Checks): Likewise.
      	* system-rtems.ads: Likewise.
      
      From-SVN: r241003
      Eric Botcazou committed
    • Split print_rtx into subroutines · acda0629
      gcc/ChangeLog:
      	* print-rtl.c (print_rtx): Rename "i" to "idx".  Split out the
      	operand-printing "switch" statement into...
      	(print_rtx_operand_code_0): ...this new function, ...
      	(print_rtx_operand_code_e): ...this new function, ...
      	(print_rtx_operand_codes_E_and_V): ...this new function, ...
      	(print_rtx_operand_code_i): ...this new function, ...
      	(print_rtx_operand_code_r): ...this new function, ...
      	(print_rtx_operand_code_u): ...this new function, ...
      	(print_rtx_operand): ...and this new function.
      
      From-SVN: r241002
      David Malcolm committed
    • Fix bad commit for -fdec-math. · ec08df86
      2016-10-11  Fritz Reese  <fritzoreese@gmail.com>
      
      Fix bad commit for -fdec-math.
      
      	* iresolve.c (get_radians, get_degrees): Fix sloppy commit.
      	* simplify.c (degrees_f, radians_f): Ditto.
      
      From-SVN: r241001
      Fritz Reese committed
    • simplify.c (radians_f): Fix mpdr_mod. · e8e5329d
      2016-10-11  Jerry DeLisle  <jvdelisle@gcc.gnu.org>
      
      	* simplify.c (radians_f): Fix mpdr_mod.
      	* ireolce.c (get_degrees): Declare tmp.
      
      From-SVN: r241000
      Jerry DeLisle committed
    • adaint.c: Include process.h, signal.h, dir.h and utime.h for DJGPP. · 91f2eb13
      2016-10-11  Andris Pavenis  <andris.pavenis@iki.fi>
      
      	* adaint.c: Include process.h, signal.h, dir.h and utime.h for DJGPP.
      	ISALPHA: include <ctype.h> and define to isalpha for DJGPP when IN_RTS is defined.
      	(DIR_SEPARATOR) define to '\\' for DJGPP.
      	(__gnat_get_file_names_case_sensitive): return 0 for DJGPP unless
      	overriden in environment
      	(__gnat_is_absolute_path): Support MS-DOS style absolute paths for DJGPP.
      	(__gnat_portable_spawn): Use spewnvp for DJGPP.
      	(__gnat_portable_no_block_spawn): Use spawnvp for DJGPP.
      	(__gnat_portable_wait): Return 0 for DJGPP.
      
      From-SVN: r240999
      Andris Pavenis committed
    • Makefile.in (LIBGNAT_TARGET_PAIRS): Define for DJGPP target · a5297b04
      2016-10-11  Andris Pavenis  <andris.pavenis@iki.fi>
      
      	* gcc-interface/Makefile.in (LIBGNAT_TARGET_PAIRS): Define for DJGPP target
      	(EH_MECHANISM): Define to -gcc for DJGPP
      	* system-djgpp.ads: New file
      
      From-SVN: r240998
      Andris Pavenis committed
    • ctrl_c.c: Do not use macro SA_RESTART for DJGPP. · 4f100fd7
      2016-10-11  Andris Pavenis  <andris.pavenis@iki.fi>
      
      	* ctrl_c.c: Do not use macro SA_RESTART for DJGPP.
      	* gsocket.h: Do not support sockets for DJGPP.
      	* init.c (__gnat_install_handler): Implememt for DJGPP
      	* sysdep.c: Include <io.h> for DJGPP
      	(_setmode): Define to setmode for DJGPP
      	(__gnat_set_mode): Add implementation for DJGPP
      	(__gnat_localtime_tzoff): Use localtime_r for DJGPP
      	* terminals.c: Add DJGPP to list of unsupported platforms.
      	* env.c (__gnat_clearenv): use _gnat_unsetenv on all entries for DJGPP
      
      From-SVN: r240997
      Andris Pavenis committed
    • alpha-passes.def: New file. · a32fc216
      	* config/alpha/alpha-passes.def: New file.
      	* config/alpha/t-alpha: New file.
      	* config/alpha/alpha-protos.h (gcc::context, rtl_opt_pass): Declare.
      	(make_pass_handle_trap_shadows): New prototype.
      	(make_pass_align_insns): Ditto.
      	* config/alpha/alpha.c (alpha_option_override): Don't register
      	passes here.
      	* config.gcc (alpha*-*-*) Add alpha/t-alpha to tmake_file.
      
      From-SVN: r240996
      Uros Bizjak committed
    • re PR target/77924 (-mfloat128-type change broke AIX) · 66d76fc9
      2016-10-11  Michael Meissner  <meissner@linux.vnet.ibm.com>
      
      	PR target/77924
      	* config/rs6000/rs6000.c (rs6000_init_builtins): Only create the
      	distinct __ibm128 IBM extended double type if long doubles are
      	128-bits and the default format for long double is IEEE 128-bit.
      
      From-SVN: r240994
      Michael Meissner committed
    • configure: redirect -fsplit-stack compilation to dev/null · 207f844e
          
          Avoid an error message in the middle of the configure output.
          
          Patch by Eric Botcazou.
          
          Reviewed-on: https://go-review.googlesource.com/30813
      
      From-SVN: r240993
      Ian Lance Taylor committed
    • dwarf2out.c (DEBUG_STR_OFFSETS_SECTION): Remove conditional. · a26ff5b5
      2016-10-11  Richard Biener  <rguenther@suse.de>
      
      	* dwarf2out.c (DEBUG_STR_OFFSETS_SECTION): Remove conditional.
      	(init_sections_and_labels): Use DEBUG_DWO_STR_OFFSETS_SECTION.
      	(verify_die): New function.
      	(dwarf2out_finish): Call it.
      	(output_line_info): Handle case of -gsplit-dwarf without
      	DWARF2_ASM_LINE_DEBUG_INFO.
      
      From-SVN: r240992
      Richard Biener committed
    • re PR debug/77931 (PASS->FAIL: gdb.cp/namespace.exp: print ina) · b13ff1f5
      2016-10-11  Richard Biener  <rguenther@suse.de>
      
      	PR debug/77931
      	* gimple-low.c (lower_gimple_bind): Handle arbitrary common
      	sub-chains of BLOCK_VARS and gimple_bind_vars.
      
      From-SVN: r240991
      Richard Biener committed
    • Fix integer load reservation for -march=znver1 · 1d0eabee
      2016-10-11  Venkataramanan Kumar  <Venkataramanan.kumar@amd.com>
      
      	* config/i386/znver1.md : Fix imov/imovx load type reservations.
      
      From-SVN: r240990
      Venkataramanan Kumar committed
    • New flag -fdec-math for COTAN and degree trig intrinsics. · 8e8c2744
      2016-10-11  Fritz Reese  <fritzoreese@gmail.com>
      
      New flag -fdec-math for COTAN and degree trig intrinsics.
      
      	gcc/fortran/
      	* lang.opt: New flag -fdec-math.
      	* options.c (set_dec_flags): Enable with -fdec.
      	* invoke.texi, gfortran.texi, intrinsic.texi: Update documentation.
      	* intrinsics.c (add_functions, do_simplify): New intrinsics
      	with -fdec-math.
      	* gfortran.h (gfc_isym_id): New isym GFC_ISYM_COTAN.
      	* gfortran.h (gfc_resolve_atan2d, gfc_resolve_cotan,
      	gfc_resolve_trigd, gfc_resolve_atrigd): New prototypes.
      	* iresolve.c (resolve_trig_call, get_degrees, get_radians,
      	is_trig_resolved, gfc_resolve_cotan, gfc_resolve_trigd,
      	gfc_resolve_atrigd, gfc_resolve_atan2d): New functions.
      	* intrinsics.h (gfc_simplify_atan2d, gfc_simplify_atrigd,
      	gfc_simplify_cotan, gfc_simplify_trigd): New prototypes.
      	* simplify.c (simplify_trig_call, degrees_f, radians_f,
      	gfc_simplify_cotan, gfc_simplify_trigd, gfc_simplify_atrigd,
      	gfc_simplify_atan2d): New functions.
      
      	gcc/testsuite/gfortran.dg/
      	* dec_math.f90: New testsuite.
      
      From-SVN: r240989
      Fritz Reese committed
    • Minor tweaks · 9760fbe0
      From-SVN: r240988
      Eric Botcazou committed
    • * MAINTAINERS: Update email address. · fbf4c502
      From-SVN: r240987
      Nathan Sidwell committed
    • Fix gcc.dg/tree-ssa/pr59597.c failure for avr · ddefad9a
      Declare loop index variable j as a 32 bit int instead of assuming ints 
      are 32 bits. The smaller int size on the avr makes prior passes optimize
      away the loop exit check (j < 10000000), as the constant is outside
      the range of a 16 bit int.
      
      gcc/testsuite/ChangeLog
      
      2016-10-11  Senthil Kumar Selvaraj  <senthil_kumar.selvaraj@atmel.com>
      
      	* gcc.dg/tree-ssa/pr59597.c: Typedef  __INT32_TYPE__ to i32.
      	(main): Declare j as i32 instead of int.
      
      From-SVN: r240986
      Senthil Kumar Selvaraj committed
    • exp_dbug.adb (Debug_Renaming_Declaration): Process underlying types. · 656b0311
      	* exp_dbug.adb (Debug_Renaming_Declaration): Process underlying types.
      	Emit GNAT encodings for object renamings involving record components
      	whose normalized bit offset is not null.
      	* uintp.h (UI_No_Uint): Declare.
      	* gcc-interface/gigi.h (can_materialize_object_renaming_p): New.
      	* gcc-interface/utils.c (can_materialize_object_renaming_p): New
      	function.
      	* gcc-interface/trans.c (gnat_to_gnu) <N_Object_Renaming_Declaration>:
      	In code generation mode, materialize all renamings as long as they need
      	debug info and we are not optimizing.
      
      From-SVN: r240985
      Pierre-Marie de Rodat committed
    • Optimise std::list::assign(initializer_list<T>) slightly · 4bb4acee
      	* include/bits/stl_list.h (assign(initializer_list<value_type>)): Call
      	_M_assign_dispatch directly with correct tag.
      
      From-SVN: r240984
      Jonathan Wakely committed
    • Simplify std::rethrow_if_nested definition · 0470fad0
      	* doc/xml/manual/intro.xml: Document LWG 2484 status.
      	* libsupc++/nested_exception.h (_Throw_with_nested_impl)
      	(_Throw_with_nested_helper): Remove.
      	(__throw_with_nested_impl): New overloaded functions to implement
      	throw_with_nested logic.
      	(throw_with_nested): Call __throw_with_nested_impl.
      	(_Rethrow_if_nested_impl): Remove
      	(__rethrow_if_nested_impl): New overloaded functions to implement
      	rethrow_if_nested logic.
      	(rethrow_if_nested): Call __rethrow_if_nested_impl.
      	* testsuite/18_support/nested_exception/rethrow_if_nested.cc: Test
      	problem cases from LWG 2484.
      
      From-SVN: r240983
      Jonathan Wakely committed
    • Enable printers and xmethods for std::__cxx11::list · bf1de1ac
      	* python/libstdcxx/v6/printers.py (build_libstdcxx_dictionary):
      	Register printer for std::__cxx11::list.
      	* python/libstdcxx/v6/xmethods.py (ListMethodsMatcher.match): Match
      	std::__cxx11::list as well as std::list.
      
      From-SVN: r240982
      Jonathan Wakely committed
    • Remove redundant const qualifliers from string_view · 7571121f
      	* include/experimental/string_view (basic_string_view::_S_compare):
      	Remove redundant const from return type.
      	* include/std/string_view (basic_string_view:_S_compare): Likewise.
      
      From-SVN: r240981
      Jonathan Wakely committed
    • More noexcept for standard mutex types and locks · 2c15eace
      	* include/bits/std_mutex.h (mutex::native_handle)
      	(lock_guard(mutex_type&, adopt_lock_t)
      	(unique_lock(mutex_type&, adopt_lock_t): Add noexcept.
      	* include/std/mutex (recursive_mutex, timed_mutex)
      	(recursive_timed_mutex): Likewise.
      
      From-SVN: r240980
      Jonathan Wakely committed
    • PR77710: fix triplet in builtin-sprintf-warn-4.c · e7b08761
      2016-10-11  Thomas Preud'homme  <thomas.preudhomme@arm.com>
      
          gcc/testsuite/
          PR testsuite/PR77710
          * gcc.dg/tree-ssa/builtin-sprintf-warn-4.c: Use *-*-* as catch-all
          target triplet instead of *-*-*-*.
      
      From-SVN: r240979
      Thomas Preud'homme committed
    • utils2.c (build_binary_op): Add a NO_FOLD argument. · 08ef2c16
      	* gcc-interface/utils2.c (build_binary_op): Add a NO_FOLD
      	argument.  Disable folding when true.
      	* gcc-interface/gigi.h (choices_to_gnu): Remove declaration.
      	(build_binary_op): Update signature and comment.
      	* gcc-interface/decl.c (choices_to_gnu): Make static.  Disable
      	folding for all calls to build_binary_op.
      
      From-SVN: r240978
      Pierre-Marie de Rodat committed
    • fe.h (Constant_Value): Declare. · abb3ea16
      	* fe.h (Constant_Value): Declare.
      	* gcc-interface/decl.c (compile_time_known_address_p): Also consider
      	references to constants.
      
      From-SVN: r240977
      Tristan Gingold committed
    • trans.c (gnat_to_gnu): Adjust comment. · 87e25aac
      	* gcc-interface/trans.c (gnat_to_gnu) <N_Op_Add>: Adjust comment.
      	<N_Op_Minus>: Add comment and missing guard.
      	* gcc-interface/trans.c (build_binary_op_trapv): Use an explicit test.
      
      From-SVN: r240976
      Eric Botcazou committed
    • utils.c (type_unsigned_for_rm): New predicate. · 9fd7cd44
      	* gcc-interface/utils.c (type_unsigned_for_rm): New predicate.
      	(make_type_from_size): Use it.
      	(unchecked_convert): Likewise.  Do not skip the extension step if the
      	source type is not integral.
      
      From-SVN: r240975
      Eric Botcazou committed
    • c-common.c (warning_candidate_p): Change the return type to bool and return… · 78f61294
      c-common.c (warning_candidate_p): Change the return type to bool and return true/false instead of 1/0.
      
      	* c-common.c (warning_candidate_p): Change the return type to bool
      	and return true/false instead of 1/0.
      	(vector_mode_valid_p): Likewise.
      
      From-SVN: r240974
      Marek Polacek committed
    • system-linux-ppc64.ads: Delete. · f153e9d5
      	* system-linux-ppc64.ads: Delete.
      	* system-linux-ppc.ads: Make 32-bit/64-bit neutral.
      	* gcc-interface/Makefile.in (PowerPC/Linux): Simplify.
      
      Co-Authored-By: Tristan Gingold <gingold@adacore.com>
      
      From-SVN: r240973
      Eric Botcazou committed
    • Add missing file · d2d58b10
      From-SVN: r240972
      Eric Botcazou committed
    • sparc.opt (msubxc): New option. · ff7e7ee0
      	* config/sparc/sparc.opt (msubxc): New option.
      	* doc/invoke.texi (SPARC options): Document it and tidy up.
      	* doc/tm.texi.in (Condition Codes): Adjust SPARC example.
      	* doc/tm.texi: Regenerate.
      	* config/sparc/sparc-modes.def (CC_NOOV): Rename into...
      	(CCNZ): ...this.
      	(CCX_NOOV): Rename into...
      	(CCXNZ): ...this.
      	(CCC): New.
      	(CCXC): Likewise.
      	* config/sparc/predicates.m (fcc_register_operand): Simplify.
      	(fcc0_register_operand): Likewise.
      	(icc_register_operand): New.
      	(icc_or_fcc_register_operand): Simplify.
      	(nz_comparison_operator): New.
      	(c_comparison_operator): Likewise.
      	(noov_compare_operator): Rename into...
      	(icc_comparison_operator): ...this.  Use above predicates.
      	(noov_compare64_operator): Rename into...
      	(v9_comparison_operator): ...this and tidy up.
      	(fcc_comparison_operator): New.
      	(icc_or_fcc_comparison_operator): Likewise.
      	(v9_register_compare_operator): Rename info...
      	(v9_register_comparison_operator): ...this.
      	* config/sparc/sparc.c (TARGET_FIXED_CONDITION_CODE_REGS): Define.
      	(sparc_option_override): Remove redundant VIS masks and add MASK_SUBXC
      	for Niagara-7.
      	(sparc_fixed_condition_code_regs): New function.
      	(select_cc_mode): Remove ATTRIBUTE_UNUSED.  Adjust for CCNZ/CCXNZ
      	renaming and add support for CCC/CCXC.
      	(output_cbranch): Likewise.
      	(sparc_print_operand): Likewise.
      	(gen_v9_scc): Remove obsolete assertion.
      	(emit_scc_insn): Emit RTL directly for EQ and NE.  Add direct support
      	for EQ in DImode if TARGET_SUBXC.  Remove test on TARGET_VIS3 for GEU.
      	(output_cbcond): Remove bogus handling of CC modes.
      	(sparc_register_move_cost): Return 100 for NO_REGS.
      	* config/sparc/sparc.md (W): New mode iterator.
      	(length): Adjust for noov_compare64_operator renaming.
      	(cmpsi_sne): New instruction.
      	(cmpdi_sne): Likewise.
      	(seqdi_special): Delete.
      	(seqdi_special): Likewise.
      	(snesi<P:mode>_special): Likewise.
      	(snedi_special): Likewise.
      	(snedi_special_vis3): Likewise.
      	(snesi patterns): Use W iterator.
      	(snedi patterns): Likewise.  Add TARGET_SUBXC patterns.
      	(sltu patterns): Likewise.
      	(sgeu patterns): Likewise.
      	(scc splitter): Do not split GEU in DImode if TARGET_SUBXC.
      	(normal_branch): Use icc_comparison_operator predicate.
      	(inverted_branch): Likewise.
      	(cbcond_sp32): Use comparison_operator predicate.
      	(cbcond_sp64): Likewise.
      	(normal_int_branch_sp64): Adjust for renaming
      	(inverted_int_branch_sp64): Likewise.
      	(mov<I:mode>_cc_reg_sp64): Likewise.
      	(movsf_cc_reg_sp6): Likewise.
      	(movdf_cc_reg_sp64): Likewise.
      	(movtf_cc_reg_hq_sp64): Likewise.
      	(movtf_cc_reg_sp64): Likewise.
      	(mov<I:mode>_cc_v9): Use icc_or_fcc_comparison_operator predicate.
      	(movsf_cc_v9): Likewise.
      	(movdf_cc_v9): Likewise.
      	(movtf_cc_hq_v9): Likewise.
      	(movtf_cc_v9): Likewise.
      	(adddi3): Call gen_adddi3_sp32.
      	(adddi3_insn_sp32): Rename to...
      	(adddi3_sp32): ...this.  Accept only register_operand as operand #1
      	and use CCCmode for the carry.
      	(addx_extend_sp32): Use CCCmode for the carry.
      	(addx_extend_sp64): Delete.
      	(adddi3_extend_sp32): Use CCCmode for the carry.
      	(cmp_plus patterns): Use CCNZ/CCXNZ mode and add C variants.
      	(subdi3): Call gen_subdi3_sp32.
      	(subdi3_insn_sp32): Rename to...
      	(subdi3_sp32): ...this and use CCmode for the carry.
      	(subx_extend_sp32): Use CCCmode for the carry.
      	(subx_extend_sp64): Delete.
      	(subdi3_extend_sp32): Use CCmode for the carry.
      	(cmp_minus patterns): Use CCNZ/CCXNZ mode and add C variants.
      	(negdi3): Call gen_negdi3_sp32.
      	(negdi3_sp32): Use CCCmode for the carry.
      	(cmp_neg patterns): Use CCNZ/CCXNZ mode and add C variants.
      	(cmp_nz_ashift_1): Use CCNZ mode.
      	(cmp_nz_set_ashift_1): Likewise.
      	(ctrapsi4): Use comparison_operator predicate.
      	(ctrapdi4): Likewise.
      	(trapsi_insn): Use icc_comparison_operator predicate.
      	(trapdi_insn): Likewise.
      	(edge8 patterns): Use CCNZmode.
      	(edge16 patterns): Likewise.
      	(edge32 patterns): Likewise.
      
      From-SVN: r240971
      Eric Botcazou committed
    • visium-modes.def (CC_NOOV): Rename into... · 8d946ecc
      	* config/visium/visium-modes.def (CC_NOOV): Rename into...
      	(CCNZ): ...this.
      	(CC_BTST): Rename into...
      	(CCC): ...this.
      	* config/visium/predicates.md (real_add_operand): New.
      	(visium_btst_operator): Rename into...
      	(visium_equality_comparison_operator): ...this.
      	(visium_noov_operator): Rename into...
      	(visium_nz_comparison_operator): ...this.
      	(visium_c_comparison_operator): New.
      	(visium_branch_operator): Adjust and deal with all CC modes.
      	* config/visium/visium.c (visium_adjust_cost): Adjust.
      	(visium_split_double_add): Use the *_set_carry patterns.
      	(visium_select_cc_mode): Add support for CCC mode and adjust.
      	(output_cbranch): Adjust and use the carry-based operators for
      	floating-point comparisons.
      	* config/visium/visium.md (flags_subst_arith): Adjust.
      	(addsi3_insn_set_carry): New instruction.
      	(subsi3_insn_set_carry): Likewise.
      	(negsi2_insn_set_carry): Likewise.
      	(btst): Adjust.
      	(cmp<mode>_sne): Likewise.
      	(cbranch<mode>4): Use ordered_comparison_operator.
      	(cbranch<mode>4_insn): Likewise.
      	(cbranchsi4_btst_insn): Adjust.
      
      From-SVN: r240969
      Eric Botcazou committed
    • Remove RECORD_TYPE special-casing in std_canonical_va_list_type · 431e31a9
      2016-10-11  Tom de Vries  <tom@codesourcery.com>
      
      	PR middle-end/77558
      	* builtins.c (std_canonical_va_list_type): Remove RECORD_TYPE
      	special-casing.
      
      From-SVN: r240968
      Tom de Vries committed
    • tree.h (build_complex_type): Add second parameter with default. · 2e33e1c4
      	* tree.h (build_complex_type): Add second parameter with default.
      	* tree.c (build_complex_type): Add NAMED second parameter and adjust
      	recursive call.  Create a TYPE_DECL only if NAMED is true.
      	(build_common_tree_nodes): Pass true in calls to build_complex_type.
      
      From-SVN: r240967
      Eric Botcazou committed
    • New avr-passes.def to register AVR specific passes. · 76beabf4
      	* config/avr/avr-passes.def: New file.
      	* config/avr/t-avr (PASSES_EXTRA): Add avr-passes.def.
      	* config/avr/avr-protos.h (gcc::context, rtl_opt_pass): Declare.
      	(make_avr_pass_recompute_note): New proto.
      	* config/avr/avr.c (make_avr_pass_recompute_notes): New function.
      	(avr_pass_recompute_notes): Use anonymous namespace.
      	(avr_register_passes): Remove function...
      	(avr_option_override): ...and its call.
      
      From-SVN: r240966
      Georg-Johann Lay committed