- 11 Oct, 2016 40 commits
-
-
* 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, 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 -
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 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. * 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 -
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 -
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 -
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 -
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 -
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 -
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 -
* 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 -
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 -
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 -
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 -
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 -
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 -
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 -
From-SVN: r240988
Eric Botcazou committed -
From-SVN: r240987
Nathan Sidwell committed -
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. 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 -
* include/bits/stl_list.h (assign(initializer_list<value_type>)): Call _M_assign_dispatch directly with correct tag. From-SVN: r240984
Jonathan Wakely committed -
* 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 -
* 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 -
* 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 -
* 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 -
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 -
* 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. * gcc-interface/decl.c (compile_time_known_address_p): Also consider references to constants. From-SVN: r240977
Tristan Gingold committed -
* 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 -
* 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 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. * 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 -
From-SVN: r240972
Eric Botcazou committed -
* 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 -
* 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 -
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. * 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 -
* 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
-