- 22 Sep, 2014 19 commits
-
-
From-SVN: r215466
Jonathan Wakely committed -
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01509.html gcc/: * fold-const.c (tree_swap_operands_p): Strip only sign-preserving NOPs. From-SVN: r215465
Alan Lawrence committed -
PR libstdc++/54316 PR libstdc++/53626 * config/abi/pre/gnu.ver: Add new exports. * config/io/basic_file_stdio.h (__basic_file): Support moving and swapping. * include/bits/basic_ios.h (basic_ios::move, basic_ios::swap): Likewise. * include/bits/ios_base.h (ios_base::_M_move, ios_base::_M_swap): Likewise. * include/bits/fstream.tcc (basic_filebuf): Likewise. * include/bits/move.h (__exchange): Define for C++11 mode. * include/ext/stdio_filebuf.h (stdio_filebuf): Support moving and swapping. * include/ext/stdio_sync_filebuf.h (stdio_sync_filebuf): Likewise. * include/std/fstream (basic_filebuf, basic_ifstream, basic_ofstream, basic_fstream): Likewise. * include/std/ios: Remove whitespace. * include/std/istream (basic_istream, basic_iostream): Support moving and swapping. * include/std/ostream (basic_ostream): Likewise. * include/std/sstream (basic_stringbuf, basic_istringstream, basic_ostringstream, basic_stringstream): Likewise. * include/std/streambuf (basic_streambuf): Do not default copy constructor and assignment on first declaration. * include/std/utility (exchange): Forward to __exchange. * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New. * src/c++11/Makefile.am: Add stream-related files. * src/c++11/Makefile.in: Regenerate. * src/c++11/ext11-inst.cc (stdio_filebuf, stdio_sync_filebuf): New file for explicit instantiation definitions. * src/c++11/ios.cc: Move from src/c++98 to here. (ios_base::_M_move, ios_base::_M_swap): Define. * src/c++11/ios-inst.cc: Move from src/c++98 to here. * src/c++11/iostream-inst.cc: Likewise. * src/c++11/istream-inst.cc: Likewise. * src/c++11/ostream-inst.cc: Likewise. * src/c++11/sstream-inst.cc: Likewise. * src/c++11/streambuf-inst.cc: Likewise. * src/c++98/Makefile.am: Remove stream-related files. * src/c++98/Makefile.in: Regenerate. * src/c++98/ext-inst.cc (stdio_filebuf): Remove explicit instantiations. * src/c++98/misc-inst.cc (stdio_sync_filebuf): Likewise. * src/c++98/ios-inst.cc: Move to src/c++11/. * src/c++98/ios.cc: Move to src/c++11/. * src/c++98/iostream-inst.cc: Likewise. * src/c++98/istream-inst.cc: Likewise. * src/c++98/ostream-inst.cc: Likewise. * src/c++98/sstream-inst.cc: Likewise. * src/c++98/streambuf-inst.cc: Likewise. * testsuite/27_io/basic_filebuf/cons/char/copy_neg.cc: New. * testsuite/27_io/basic_fstream/cons/move.cc: New. * testsuite/27_io/basic_fstream/assign/1.cc: New. * testsuite/27_io/basic_ifstream/cons/move.cc: New. * testsuite/27_io/basic_ifstream/assign/1.cc: New. * testsuite/27_io/basic_istringstream/assign/1.cc: New. * testsuite/27_io/basic_istringstream/cons/move.cc: New. * testsuite/27_io/basic_ofstream/cons/move.cc: New. * testsuite/27_io/basic_ofstream/assign/1.cc: New. * testsuite/27_io/basic_ostringstream/assign/1.cc: New. * testsuite/27_io/basic_ostringstream/cons/move.cc: New. * testsuite/27_io/basic_stringstream/assign/1.cc: New. * testsuite/27_io/basic_stringstream/cons/move.cc: New. From-SVN: r215463
Jonathan Wakely committed -
2014-09-22 Tom de Vries <tom@codesourcery.com> * mklog: Add --inline option. From-SVN: r215462
Tom de Vries committed -
2014-09-22 Richard Biener <rguenther@suse.de> * gimplify.c (gimplify_init_constructor): Do not leave non-GIMPLE vector constructors around. * tree-cfg.c (verify_gimple_assign_single): Verify that CONSTRUCTORs have gimple elements. From-SVN: r215461
Richard Biener committed -
PR target/63312 * config/ia64/sfp-machine.h (FE_EX_ALL, FP_TRAPPING_EXCEPTIONS): New macros. From-SVN: r215458
Joseph Myers committed -
PR debug/63328 * omp-low.c (ipa_simd_modify_stmt_ops): For debug stmts insert a debug source bind stmt setting DEBUG_EXPR_DECL instead of a normal gimple assignment stmt. * c-c++-common/gomp/pr63328.c: New test. From-SVN: r215454
Jakub Jelinek committed -
gcc/ * config/bfin/bfin.md: Fix use of constraints in define_split. From-SVN: r215453
James Greenhalgh committed -
2014-09-21 Dominique d'Humieres <dominiq@lps.ens.fr> * resolve.c (resolve_fl_procedure): Remove duplicated lines. From-SVN: r215452
Dominique d'Humieres committed -
* g++.dg/lto/pr63270_0.C: New test. * g++.dg/lto/pr63270_1.C: New test. From-SVN: r215451
Martin Liska committed -
gcc/ * config/i386/i386.c (ix86_cannot_change_mode_class): Remove GET_MODE_SIZE (to) < GET_MODE_SIZE (from) test. From-SVN: r215450
Richard Sandiford committed -
gcc/ * hard-reg-set.h: Include hash-table.h. (target_hard_regs): Add a finalize method and a x_simplifiable_subregs field. * target-globals.c (target_globals::~target_globals): Call hard_regs->finalize. * rtl.h (subreg_shape): New structure. (shape_of_subreg): New function. (simplifiable_subregs): Declare. * reginfo.c (simplifiable_subreg): New structure. (simplifiable_subregs_hasher): Likewise. (simplifiable_subregs): New function. (invalid_mode_changes): Delete. (alid_mode_changes, valid_mode_changes_obstack): New variables. (record_subregs_of_mode): Remove subregs_of_mode parameter. Record valid mode changes in valid_mode_changes. (find_subregs_of_mode): Remove subregs_of_mode parameter. Update calls to record_subregs_of_mode. (init_subregs_of_mode): Remove invalid_mode_changes and bitmap handling. Initialize new variables. Update call to find_subregs_of_mode. (invalid_mode_change_p): Check new variables instead of invalid_mode_changes. (finish_subregs_of_mode): Finalize new variables instead of invalid_mode_changes. (target_hard_regs::finalize): New function. * ira-costs.c (print_allocno_costs): Call invalid_mode_change_p even when CLASS_CANNOT_CHANGE_MODE is undefined. From-SVN: r215449
Richard Sandiford committed -
gcc/ * combine.c (subst): Use simplify_subreg_regno rather than REG_CANNOT_CHANGE_MODE_P to detect invalid mode changes. From-SVN: r215448
Richard Sandiford committed -
gcc/ * rtl.h (subreg_info): Expand commentary * rtlanal.c (subreg_get_info): Likewise. From-SVN: r215447
Richard Sandiford committed -
* hard-reg-set.h (COPY_HARD_REG_SET, COMPL_HARD_REG_SET) (AND_HARD_REG_SET, AND_COMPL_HARD_REG_SET, IOR_HARD_REG_SET) (IOR_COMPL_HARD_REG_SET): Allow the "from" set to be constant. From-SVN: r215446
Richard Sandiford committed -
* gcc-interface/decl.c (gnat_to_gnu_entity): Adjust comment. * gcc-interface/utils.c (gnat_write_global_declarations): Fix typo. From-SVN: r215445
Eric Botcazou committed -
2014-09-22 Zhenqiang Chen <zhenqiang.chen@arm.com> * config/arm/arm.c: #include "tm-constrs.h" (thumb1_size_rtx_costs): Adjust rtx costs. From-SVN: r215444
Zhenqiang Chen committed -
* crtstuff.c (USE_EH_FRAME_REGISTRY): Let USE_EH_FRAME_REGISTRY_ALWAYS override USE_PT_GNU_EH_FRAME. [__LIBGCC_EH_FRAME_SECTION_NAME__ && !USE_PT_GNU_EH_FRAME]: Sanity- check USE_EH_FRAME_REGISTRY_ALWAYS against __LIBGCC_EH_FRAME_SECTION_NAME__, emit error if unsane. * Makefile.in (FORCE_EXPLICIT_EH_REGISTRY): New variable for substituted force_explicit_eh_registry. (CRTSTUFF_CFLAGS): Add FORCE_EXPLICIT_EH_REGISTRY. * configure.ac (explicit-exception-frame-registration): New AC_ARG_ENABLE. * configure: Regenerate. From-SVN: r215443
Hans-Peter Nilsson committed -
From-SVN: r215442
GCC Administrator committed
-
- 21 Sep, 2014 14 commits
-
-
configure.ac (target_header_dir): Move block defining this to before the block setting inhibit_libc. * configure.ac (target_header_dir): Move block defining this to before the block setting inhibit_libc. (inhibit_libc): When considering $with_headers, just check it it's explicitly "no". If not, also check if $target_header_dir/stdio.h is present. If not, set inhibit_libc=true. * configure: Regenerate. From-SVN: r215439
Hans-Peter Nilsson committed -
From-SVN: r215438
Patrick Oppenlander committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (div<mode>3): Fix comment. Use a different insn for divides by integer powers of two. (div<mode>3_sra, *div<mode>3_sra_dot, *div<mode>3_sra_dot2): New. (mod<mode>3): Fix formatting. (three anonymous define_insn and two define_split): Delete. From-SVN: r215437
Segher Boessenkool committed -
* config/rs6000/rs6000.md (ashr<mode>3, *ashr<mode>3, *ashrsi3_64, *ashr<mode>3_dot, *ashr<mode>3_dot2): Clobber CA_REGNO. (floatdisf2_internal2): Ditto. (ashrdi3_no_power): Ditto. Fix formatting. From-SVN: r215436
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (ctz<mode>2, ffs<mode>2, popcount<mode>2, popcntb<mode>2, popcntd<mode>2, parity<mode>2, parity<mode>2_cmpb): Tidy. From-SVN: r215435
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (strlensi): Don't use subsi3 with a constant, use addsi3 directly. (three anonymous define_insn, two define_split): Delete. (sub<mode>3): Move. Do not allow constant second operand. Generate different insn for constant first operand. (*subf<mode>3, *subf<mode>3_dot, *subf<mode>3_dot2): New. (subf<mode>3_imm): New. (ctz<mode>2, ffs<mode>2): Clobber CA_REGNO where required. (*plus_ltu<mode>): Only handle registers. (*plus_ltu<mode>_1): New. Handle integer third operand. (*plus_gtu<mode>): Only handle registers. (*plus_gtu<mode>_1): New. Handle integer third operand. From-SVN: r215434
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (iorxor): New code_iterator. (iorxor): New code_attr. (IORXOR): New code_attr. (*and<mode>3, *and<mode>3_dot, *and<mode>3_dot2): Delete. (ior<mode>3, xor<mode>3): Delete. (<iorxor><mode>3): New. (splitter for "big" integer ior, xor): New. (*bool<mode>3): Move. Also handle AND. (*bool<mode>3_dot, *bool<mode>3_dot2): Also handle AND. (splitter for "big" integer ior, xor): Delete. From-SVN: r215433
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (*neg<mode>2_internal): Delete. (two anonymous define_insn and two define_split): Delete. (*neg<mode>2, *neg<mode>2_dot, *neg<mode>2_dot2): New. From-SVN: r215432
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.md (*one_cmpl<mode>2): Generate "not" insn. (two anonymous define_insn and two define_split): Delete. (*one_cmpl<mode>2_dot, *one_cmpl<mode>2_dot2): New. From-SVN: r215431
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/rs6000.c (rs6000_rtx_costs) <NE>: New. From-SVN: r215430
Segher Boessenkool committed -
2014-09-21 Segher Boessenkool <segher@kernel.crashing.org> * config/rs6000/predicates.md (ca_operand): Allow subregs. (input_operand): Do not allow ca_operand. * config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): For the carry bit, allow SImode and Pmode. (rs6000_init_hard_regno_mode_ok): Make the carry bit class NO_REGS. From-SVN: r215429
Segher Boessenkool committed -
* config/i386/i386.c (ix86_expand_call): Generate MS->SYSV extra clobbered registers using clobber_reg. Remove UNSPEC decoration. * config/i386/i386.md (unspec) <UNSPEC_MS_TO_SYSV_CALL>: Remove. (*call_rex64_ms_sysv): Remove. (*call_value_rex64_ms_sysv): Ditto. * config/i386/predicates.md (call_rex64_ms_sysv_operation): Remove. testsuite/ChangeLog: * gcc.target/i386/avx-vzeroupper-16.c (dg-final): Remove check for call_value_rex64_ms_sysv. * gcc.target/i386/avx-vzeroupper-17.c (dg-final): Ditto. * gcc.target/i386/avx-vzeroupper-18.c (dg-final): Remove check for call_rex64_ms_sysv. From-SVN: r215428
Uros Bizjak committed -
re PR c++/62017 (AddressSanitizer reports *-buffer-overflow in destructor when multiple virtual inheritance is used) PR c++/62017 * decl.c (begin_destructor_body): Only clobber the as-base part of *this. From-SVN: r215427
Jason Merrill committed -
From-SVN: r215426
GCC Administrator committed
-
- 20 Sep, 2014 7 commits
-
-
From-SVN: r215423
Ian Lance Taylor committed -
* config/epiphany/epiphany.md (sub_f_add_imm): Change constraint of operand 3 to "CnL". From-SVN: r215422
Joern Rennecke committed -
trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with generating temporary for value argument. 2014-09-20 Alessandro Fanfarillo <fanfarillo.gcc@gmail.com> Tobias Burnus <burnus@net-b.de> gcc/fortran * trans-intrinsic.c (conv_intrinsic_atomic_op): Fix issue with generating temporary for value argument. gcc/testsuite/ * gfortran.dg/coarray_atomic_5.f90: New Co-Authored-By: Tobias Burnus <burnus@net-b.de> From-SVN: r215421
Alessandro Fanfarillo committed -
2014-09-20 Joost VandeVondele <vondele@gcc.gnu.org> * trans-expr.c (gfc_reset_vptr): Fix comment whitespace. (gfc_conv_class_to_class): Likewise. (gfc_conv_procedure_call): Likewise. (arrayfunc_assign_needs_temporary): Likewise. (realloc_lhs_loop_for_fcn_call): Likewise. (gfc_trans_assignment_1): Likewise. * trans-array.c (gfc_conv_array_ref): Likewise. (gfc_array_allocate): Likewise. (gfc_alloc_allocatable_for_assignment): Likewise. * symbol.c (generate_isocbinding_symbol): Likewise. * class.c (finalization_scalarizer): Likewise. (finalizer_insert_packed_call): Likewise. (generate_finalization_wrapper): Likewise. (find_intrinsic_vtab): Likewise. * decl.c (gfc_match_import): Likewise. (match_procedure_decl): Likewise. (gfc_match_subroutine): Likewise. (gfc_match_bind_c): Likewise. (gfc_match_volatile): Likewise. * trans-common.c (create_common): Likewise. * error.c (gfc_diagnostic_starter): Likewise. * trans-stmt.c (gfc_trans_sync): Likewise. (gfc_trans_critical): Likewise. (gfc_trans_simple_do): Likewise. (gfc_trans_do): Likewise. (gfc_trans_where_assign): Likewise. * expr.c (gfc_is_simply_contiguous): Likewise. * module.c (unquote_string): Likewise. * trans.c (gfc_add_finalizer_call): Likewise. * trans-types.c (gfc_init_kinds): Likewise. * scanner.c (preprocessor_line): Likewise. * gfortranspec.c (lang_specific_driver): Likewise. * frontend-passes.c (create_var): Likewise. (cfe_expr_0): Likewise. * resolve.c (check_host_association): Likewise. (gfc_resolve_code): Likewise. (resolve_fl_derived0): Likewise. (resolve_symbol): Likewise. * f95-lang.c (poplevel): Likewise. * trans-decl.c (create_main_function): Likewise. * trans-io.c (transfer_expr): Likewise. * arith.c (gfc_arith_divide): Likewise. * parse.c (resolve_all_program_units): Likewise. * check.c (gfc_check_rank): Likewise. (gfc_check_sizeof): Likewise. (is_c_interoperable): Likewise. * dependency.c (gfc_dep_difference): Likewise. * primary.c (gfc_match_rvalue): Likewise. * trans-intrinsic.c (conv_intrinsic_system_clock): Likewise. (conv_isocbinding_subroutine): Likewise. * options.c (gfc_post_options): Likewise. (gfc_handle_fpe_option): Likewise. (gfc_get_option_string): Likewise. * simplify.c (simplify_transformation_to_scalar): Likewise. (gfc_simplify_spread): Likewise. From-SVN: r215420
Joost VandeVondele committed -
* config/ia64/ia64.md: Remove constraints from define_split patterns. From-SVN: r215419
Andreas Schwab committed -
* ipa-utils.h (ipa_polymorphic_call_context): Turn into class; add ctors. (possible_polymorphic_call_targets, dump_possible_polymorphic_call_targets, possible_polymorphic_call_target_p, possible_polymorphic_call_target_p): Simplify. (get_dynamic_type): Remove. * ipa-devirt.c (ipa_dummy_polymorphic_call_context): Remove. (clear_speculation): Bring to ipa-deivrt.h (get_class_context): Rename to ... (ipa_polymorphic_call_context::restrict_to_inner_class): ... this one. (contains_type_p): Update. (get_dynamic_type): Rename to ... ipa_polymorphic_call_context::get_dynamic_type(): ... this one. (possible_polymorphic_call_targets): UPdate. * tree-ssa-pre.c (eliminate_dom_walker::before_dom_children): Update. * ipa-prop.c (ipa_analyze_call_uses): Update. From-SVN: r215418
Jan Hubicka committed -
* ipa-visibility.c (varpool_node::externally_visible_p): Do not privatize dynamic TLS variables. From-SVN: r215417
Jan Hubicka committed
-