Commit Graph

121363 Commits

Author SHA1 Message Date
Sriraman Tallam eb745e40fe Before this patch...
Before this patch, function multiversioning determines that two functions
are different by comparing the arch type and isa flags that are set
after the target string is processed. This leads to cases where  the
versions become identical when the command-line target options are
altered.

This patch modifies the function version determination to
just compare the target string.


2012-12-27  Sriraman Tallam  <tmsriram@google.com>

	* doc/tm.texi.in (TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS): Document
	new target hook.
	* doc/tm.texi: Regenerate.
	* c-family/c-common.c (handle_target_attribute): Retain target attribute
	for targets that support versioning.
	* target.def (supports_function_versions): New hook.
	* cp/class.c (add_method): Remove calls
	to DECL_FUNCTION_SPECIFIC_TARGET.
	* config/i386/i386.c (ix86_function_versions): Use target string
	to check for function versions instead of target flags.
	* (ix86_supports_function_versions): New function.
	* (is_function_default_version): Check target string.
	* TARGET_OPTION_SUPPORTS_FUNCTION_VERSIONS: New macro.

2012-12-27  Sriraman Tallam  <tmsriram@google.com>

	* testsuite/g++.dg/mv1.C: Remove target options.
	* testsuite/g++.dg/mv2.C: Ditto.
	* testsuite/g++.dg/mv3.C: Ditto.
	* testsuite/g++.dg/mv4.C: Ditto.
	* testsuite/g++.dg/mv5.C: Ditto.

From-SVN: r194730
2012-12-27 01:58:06 +00:00
GCC Administrator 1b9c5a882f Daily bump.
From-SVN: r194729
2012-12-27 00:18:22 +00:00
Steven Bosscher 8052ea7701 * cgraph.c (verify_cgraph_node): Don't allocate/free visited_nodes set.
From-SVN: r194726
2012-12-27 00:10:14 +00:00
Jerry DeLisle 4e766b5d40 re PR libfortran/48960 (OPEN statement modifies NEWUNIT variable on error)
2012-12-26  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/48960
	* io/open.c (st_parameter_open):  Assign newunit number to user
	variable only if the the associated open statement is successful.

From-SVN: r194724
2012-12-26 18:11:42 +00:00
Anthony Green b4b575ce78 libffi merge
From-SVN: r194722
2012-12-26 16:28:02 +00:00
GCC Administrator dc3a31d476 Daily bump.
From-SVN: r194721
2012-12-26 00:18:54 +00:00
Janne Blomqvist eb3119f90f PR fortran/55539 Fix regression in -fno-sign-zero.
libgfortran ChangeLog:

2012-12-26  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/55539
	* io/write_float.def (output_float): Take into account decimal dot.

testsuite ChangeLog:

2012-12-26  Janne Blomqvist  <jb@gcc.gnu.org>

	PR fortran/55539
	* gfortran.dg/nosigned_zero_3.f90: New testcase.

From-SVN: r194717
2012-12-26 00:11:16 +02:00
John David Anglin e255044e71 re PR target/53789 (ICE in gen_reg_rtx, at emit-rtl.c:864/865 when compiling GNU MPFR on parisc)
PR target/53789
	* config/pa/pa.md (movsi): Reject expansion of TLS symbol references
	after reload starts.

From-SVN: r194714
2012-12-25 17:57:35 +00:00
GCC Administrator 1eb4a0c953 Daily bump.
From-SVN: r194712
2012-12-25 00:18:43 +00:00
GCC Administrator a2d45b3c7e Daily bump.
From-SVN: r194709
2012-12-24 00:18:32 +00:00
Tobias Burnus 5cf8132adb re PR fortran/54884 (Externally used PRIVATE module procedure wrongly marked as TREE_PUBLIC()=0)
2012-12-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54884
        * module.c (write_symbol1_recursion): Set attr.public_use.
        * interface.c (check_sym_interfaces, check_uop_interfaces,
        gfc_check_interfaces): Remove attr.public_use code.
        * resolve.c (resolve_function, resolve_variable,
        resolve_typebound_procedure): Ditto.

2012-12-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/54884
        * gfortran.dg/public_private_module_8.f90: New.

From-SVN: r194706
2012-12-23 19:43:32 +01:00
Richard Sandiford 5f842aa5b6 r10k-cache-barrier-10.c: Make a branch-likely instruction more likely.
gcc/testsuite/
	* gcc.target/mips/r10k-cache-barrier-10.c: Make a branch-likely
	instruction more likely.

From-SVN: r194705
2012-12-23 10:01:40 +00:00
Richard Sandiford e018435a97 pr55315.c: Cast to long rather than int.
gcc/testsuite/
	* gcc.target/mips/pr55315.c: Cast to long rather than int.

From-SVN: r194704
2012-12-23 09:47:31 +00:00
GCC Administrator 648396d16f Daily bump.
From-SVN: r194703
2012-12-23 00:18:18 +00:00
Jan Hubicka 2c2c4b295b re PR lto/54728 (ICE in input_gimple_stmt, at gimple-streamer-in.c:254)
PR lto/54728
	* cgraph.h (symtab_real_symbol_p): Drop code looking for external functions.
	* lto-streamer-out.c (output_symbol_p): New function.
	(produce_symtab) Use it.

From-SVN: r194700
2012-12-22 23:27:49 +00:00
Tobias Burnus 4038d0fb1f re PR fortran/55763 (Issues with some simpler CLASS(*) programs)
2012-12-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * module.c (mio_component): Don't skip _hash's initializer.
        * resolve.c (resolve_select_type): Add an assert.
        * trans-expr.c (gfc_conv_procedure_call): Handle
        INTENT(OUT) for UNLIMIT_POLY.

2012-12-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/55763
        * gfortran.dg/unlimited_polymorphic_6.f90: New.

From-SVN: r194696
2012-12-22 18:27:03 +01:00
Ian Lance Taylor 409a5e7eb4 libgo: Update to revision 15193:6fdc1974457c of master library.
From-SVN: r194692
2012-12-22 01:15:33 +00:00
GCC Administrator 7e9268b4cf Daily bump.
From-SVN: r194691
2012-12-22 00:18:52 +00:00
Ed Schonberg a6b0643d99 re PR ada/53737 (Assert_Failure on a generic package with a package as parameter)
PR ada/53737
	* sem_ch12.adb (Analyze_Associations): Do not check the legality of
	actuals for RACW types if this is an internal instantiation for a formal
	package with defaulted parameters.

From-SVN: r194687
2012-12-21 22:31:42 +00:00
Ian Lance Taylor 5c167ca0a2 compiler: Error if name defined in both package and file blocks.
From-SVN: r194685
2012-12-21 22:23:23 +00:00
Eric Botcazou 9f9957da5e Fix copyright notices.
From-SVN: r194683
2012-12-21 22:13:34 +00:00
Martin Jambor 28afe3fc7b re PR tree-optimization/55355 (internal compiler error: in tree_low_cst, at tree.c:6415)
2012-12-21  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/55355
	* tree-sra.c (type_internals_preclude_sra_p): Also check that
	bit_position is small enough to fit a single HOST_WIDE_INT.

	* testsuite/g++.dg/torture/pr55355.C: New test.

From-SVN: r194682
2012-12-21 23:06:38 +01:00
Eric Botcazou c84a808e49 rtlanal.c (volatile_insn_p): Delete commented out code.
* rtlanal.c (volatile_insn_p): Delete commented out code.
	(side_effects_p): Likewise.
	(may_trap_p_1) <UNSPEC_VOLATILE>: Return 1 again.
	* target.def (unspec_may_trap_p): Adjust comment.
	* targhooks.c (default_unspec_may_trap_p): Don't handle UNSPEC_VOLATILE.
	* config/ia64/ia64.c (ia64_unspec_may_trap_p): Adjust to above change.

From-SVN: r194681
2012-12-21 21:38:11 +00:00
Vladimir Makarov 8e3a486902 re PR inline-asm/55775 (ICE when building pari)
2012-12-21  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/55775
	* lra-assigns.c (improve_inheritance): Do nothing after
	LRA_MAX_INHERITANCE_PASSES pass.
	* lra-constraints.c (MAX_CONSTRAINT_ITERATION_NUMBER): Rename to
	LRA_MAX_CONSTRAINT_ITERATION_NUMBER.  Move to lra-int.h.
	(MAX_INHERITANCE_PASSES): Rename to LRA_MAX_INHERITANCE_PASSES.
	Move to lra-int.h.
	* lra-int.h (LRA_MAX_CONSTRAINT_ITERATION_NUMBER): Move from
	lra-constraints.c.
	(LRA_MAX_INHERITANCE_PASSES): Ditto.

2012-12-21  Vladimir Makarov  <vmakarov@redhat.com>

	PR middle-end/55775
	* gcc.target/i386/pr55775.c: New test.

From-SVN: r194680
2012-12-21 21:20:48 +00:00
Thomas Koenig a0edd35cf6 re PR libfortran/30162 (Document when sequential I/O with named pipes works)
2012-12-21  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/30162
	* io/unix.c (raw_tell):  If the lseek is done on a
	non-seekable file, return 0.

From-SVN: r194679
2012-12-21 20:50:48 +00:00
Steve Ellcey 4b71920ab6 re PR bootstrap/54128 (GCC does not bootstrap on little endian mips due to mis-compare on tree-data-ref.c)
2012-12-21  Steve Ellcey  <sellcey@mips.com>

	PR bootstrap/54128
	* ira.c (build_insn_chain): Check only NONDEBUG instructions for
	register usage.

From-SVN: r194676
2012-12-21 18:54:00 +00:00
David Edelsohn 2d7b050001 varasm.c (bss_initializer_p): Remove static.
* varasm.c (bss_initializer_p): Remove static.
        * output.h (bss_initializer_p): Declare.
        * xcoffout.c (xcoff_tbss_section_name): Define.
        * xcoffout.h (xcoff_tbss_section_name): Declare.
        * config/rs6000/xcoff.h (TARGET_ENCODE_SECTION_INFO): Define.
        (ASM_OUTPUT_TLS_COMMON): Merge strings.
        * config/rs6000/rs6000.c (tls_private_data_section): New.
        (output_toc): Only output CSECT decoration for TLS.
        Output appropriate CSECT for data or bss.
        (rs6000_xcoff_asm_init_sections) Define tls_private_data_section.
        (rs6000_xcoff_select_section): Handle TLS bss and private data.
        (rs6000_xcoff_file_start): Generate xcoff_tbss_section_name.
        (rs6000_xcoff_encode_section_info): Strip SYMBOL_FLAG_HAS_BLOCK_INFO
        from native TLS symbols.

From-SVN: r194675
2012-12-21 12:25:57 -05:00
David Edelsohn 25743ba44e * c-c++-common/pr43942.c: Remove XFAIL for AIX.
From-SVN: r194672
2012-12-21 11:30:24 -05:00
David Edelsohn e6540d3e8e * gcc.c-torture/compile/pr44707.c: Do not try to assemble on AIX.
From-SVN: r194671
2012-12-21 11:25:55 -05:00
David Edelsohn 95b32587d0 target-supports.exp (add_options_for_tls): Add -pthread for AIX as well.
* lib/target-supports.exp (add_options_for_tls): Add -pthread for
        AIX as well.
        (check_effective_target_powerpc_vsx_ok): Only test VSX on AIX 7.1
        and above.

From-SVN: r194670
2012-12-21 11:21:53 -05:00
Ian Lance Taylor 3ff15c3be3 re PR bootstrap/54659 (Bootstrap with --disable-nls broken under Windows)
PR bootstrap/54659

compiler: Don't include <gmp.h>, now included by go-system.h.

	* go-system.h: Don't include <cstdio>.

From-SVN: r194669
2012-12-21 15:59:27 +00:00
David Edelsohn b1ad2a2add pthread-init-2.c (dg-options): Define _XOPEN_SOURCE=500 on AIX.
* gcc.dg/pthread-init-2.c (dg-options): Define _XOPEN_SOURCE=500
        on AIX.

From-SVN: r194668
2012-12-21 10:55:52 -05:00
Richard Biener 811ee85b30 re PR middle-end/52996 (ice in verify_loop_structure, at cfgloop.c:1567)
2012-12-21  Richard Biener  <rguenther@suse.de>

	PR rtl-optimization/52996
	* cprop.c (bypass_block): When loops are to be preserved
	do not bypass loop headers.  Revert earlier kludge to remove
	loops when doing that.

From-SVN: r194666
2012-12-21 14:33:59 +00:00
Richard Biener d106911b0d re PR bootstrap/54659 (Bootstrap with --disable-nls broken under Windows)
2012-12-21  Richard Biener  <rguenther@suse.de>

	PR bootstrap/54659
	* system.h: Include gmp.h.
	* tree-ssa-loop-niter.c: Do not include gmp.h here.
	* double-int.h: Likewise.
	* realmpfr.h: Likewise.

	fortran/
	* gfortran.h: Do not include gmp.h here.

From-SVN: r194665
2012-12-21 14:33:13 +00:00
Paul Thomas 4cc7046660 re PR fortran/55763 (Issues with some simpler CLASS(*) programs)
2012-12-21  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55763
	* match.c (select_type_set_tmp): Return is a derived type or
	class typespec has no derived type.
	* resolve.c (resolve_fl_var_and_proc): Exclude select type
	temporaries from 'pointer'.
	(resolve_symbol): Exclude select type temporaries from tests
	for assumed size and assumed rank.

2012-12-21  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55763
	* gfortran.dg/unlimited_polymorphic_4.f03: New test.

From-SVN: r194663
2012-12-21 14:29:34 +00:00
Eric Botcazou 8afd02aa6b adaint.c: Move directive around.
* adaint.c: Move directive around.
	* argv.c: Likewise.
	* cio.c: Likewise.
	* cstreams.c: Likewise.
	* env.c: Likewise.
	* exit.c: Likewise.
	* init.c: Likewise.
	* initialize.c: Likewise.
	* raise.c: Likewise.
	* seh_init.c: Likewise.
	* targext.c: Likewise.

From-SVN: r194660
2012-12-21 12:32:31 +00:00
Richard Biener d846aac9be re PR middle-end/52996 (ice in verify_loop_structure, at cfgloop.c:1567)
2012-12-21  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/52996
	* gcc.dg/torture/pr52996.c: New testcase.

From-SVN: r194659
2012-12-21 10:32:43 +00:00
Kai Tietz 3cc6dd4dce os_defines.h (_GLIBCXX_LLP64): Define if llp64 abi is used.
* config/os/mingw32/os_defines.h (_GLIBCXX_LLP64): Define if llp64
	abi is used.
	* config/os/mingw32-w64/os_defines.h: Likewise.
	* libsupc++/cxxabi.h (__base_class_type_info): Adjust
	type of __offset_flags for llp64.
	* libsupc++/eh_alloc.cc (EMERGENCY_OBJ_SIZE): Define proper
	for llp64 abi.
	(EMERGENCY_OBJ_COUNT): Likewise.
	(bitmask_type): Likewise.
	* libsupc++/hash_bytes.cc (_Hash_bytes): Handle llp64.

From-SVN: r194658
2012-12-21 11:12:48 +01:00
Greta Yorsh ffeffdcb91 cortex-a7.md: New file.
gcc/

2012-12-21  Greta Yorsh  <Greta.Yorsh@arm.com>

        * config/arm/cortex-a7.md: New file.
        * config/arm/t-arm (MD_INCLUDES): Add cortex-a7.md.
        * config/arm/arm.md: Include cortex-a7.md.
        (generic_sched): Don't use generic scheduler for Cortex-A7.
        (generic_vfp): Likewise.
        * config/arm/arm.c: (TARGET_SCHED_REORDER): Use arm_sched_reorder.
        (arm_sched_reorder,cortexa7_sched_reorder): New function.
        (cortexa7_older_only,cortexa7_younger): Likewise.
        (arm_issue_rate): Add Cortex-A7.

From-SVN: r194656
2012-12-21 09:49:58 +00:00
GCC Administrator 2e612eb2e2 Daily bump.
From-SVN: r194655
2012-12-21 00:18:30 +00:00
Jonathan Wakely 5aa12dbf6c gthr.h (__gthread_cond_timedwait_recursive): Do not require.
* gthr.h (__gthread_cond_timedwait_recursive): Do not require.
	* gthr-posix.h (__gthread_cond_timedwait_recursive): Remove.

From-SVN: r194652
2012-12-20 22:19:57 +00:00
Jonathan Wakely 23df853421 functional (_Require): Move to ...
* include/std/functional (_Require): Move to ...
	* include/std/type_traits (_Require): ... here.
	* include/bits/shared_ptr_base.h (__shared_count::_S_create_from_up):
	Handle unique_ptr for arrays or with custom pointer types.
	(__shared_ptr::__shared_ptr(unique_ptr<_Tp1, _Del>&&): Likewise.
	* include/bits/unique_ptr.h (unique_ptr<_Tp[], _Dp>): Use
	_Dp::pointer if defined. Implement proposed resolution of LWG 2118.
	* testsuite/20_util/shared_ptr/cons/unique_ptr_array.cc: New.
	* testsuite/20_util/unique_ptr/assign/cv_qual.cc: New.
	* testsuite/20_util/unique_ptr/cons/array_convertible_neg.cc: New.
	* testsuite/20_util/unique_ptr/cons/convertible_neg.cc: New.
	* testsuite/20_util/unique_ptr/cons/cv_qual.cc: New.
	* testsuite/20_util/unique_ptr/modifiers/cv_qual.cc: New.
	* testsuite/20_util/unique_ptr/requirements/pointer_type_array.cc: New.
	* testsuite/20_util/shared_ptr/cons/unique_ptr.cc: Adjust comments.
	* testsuite/20_util/unique_ptr/cons/pointer_array_convertible_neg.cc:
	Likewise.
	* testsuite/20_util/unique_ptr/requirements/pointer_type.cc: Likewise.
	* testsuite/20_util/bind/ref_neg.cc: Adjust dg-error line number.
	* testsuite/20_util/declval/requirements/1_neg.cc: Likewise.
	* testsuite/20_util/default_delete/48631_neg.cc: Likewise.
	* testsuite/20_util/shared_ptr/cons/43820_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/assign/48635_neg.cc: Likewise.
	* testsuite/20_util/unique_ptr/modifiers/reset_neg.cc: Adjust
	dg-error text.
	* testsuite/20_util/unique_ptr/cons/ptr_deleter_neg.cc: Use
	different instantiations so static_assert fails for each.

From-SVN: r194651
2012-12-20 21:02:33 +00:00
Matthias Klose d89da9dbda Makefile.def (install-target-libgfortran): Depend on install-target-libquadmath, install-target-libgcc.
2012-12-20  Matthias Klose  <doko@ubuntu.com>

        * Makefile.def (install-target-libgfortran): Depend on
        install-target-libquadmath, install-target-libgcc.
        (install-target-libsanitizer): Depend on install-target-libgcc.
        (install-target-libjava): Depend on install-target-libgcc.
        (install-target-libitm): Depend on install-target-libgcc.
        (install-target-libobjc): Depend on install-target-libgcc.
        (install-target-libstdc++-v3): Depend on install-target-libgcc.
        * Makefile.in: Regenerate.

From-SVN: r194650
2012-12-20 19:17:53 +00:00
Ian Bolton 3b585938f7 Make zero_extends explicit for common AArch64 SI mode patterns
From-SVN: r194649
2012-12-20 19:13:21 +00:00
Janus Weil f0f67c96c3 re PR libfortran/36044 (user-requested backtrace)
2012-12-20  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36044
	* gfortran.h (gfc_isym_id): Add GFC_ISYM_BACKTRACE.
	* intrinsic.c (add_subroutines): Add "backtrace".
	* intrinsic.texi (BACKTRACE): Document BACKTRACE intrinsic.


2012-12-20  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/36044
	* gfortran.map: Add _gfortran_backtrace.
	* libgfortran.h: Rename 'show_backtrace' and export.
	* runtime/backtrace.c (show_backtrace): Rename to 'backtrace'.
	Don't show message. Close file descriptor. Export.
	* runtime/compile_options.c (backtrace_handler): Renamed
	'show_backtrace'. Move message outside.
	* runtime/error.c (sys_abort): Ditto.

From-SVN: r194648
2012-12-20 19:15:13 +01:00
Jakub Jelinek d97c9b2248 re PR middle-end/55750 (-( in expand_expr_addr_expr_1, at expr.c:7646)
PR middle-end/55750
	* gimplify.c (gimplify_self_mod_expr): Don't force lvalue to
	pass is_gimple_min_lval.

	* gcc.c-torture/execute/pr55750.c: New test.

From-SVN: r194647
2012-12-20 19:13:56 +01:00
Richard Henderson 5bb339361a s390: Generate rnsbg
* config/s390/s390.md (*insv_rnsbg_noshift, *insv_rnsbg_srl): New.

Co-Authored-By: Andreas Krebbel <Andreas.Krebbel@de.ibm.com>

From-SVN: r194646
2012-12-20 10:05:26 -08:00
Richard Henderson 571e408a9f s390: Generate rxsbg, and shifted forms of rosbg
* config/s390/s390.md (IXOR): New code iterator.
        (*r<IXOR>sbg_<GPR>_noshift): Rename from *insv<GPR>_or_z10_noshift;
        macro-ize to handle XOR too.
        (*r<IXOR>sbg_di_rotl, *r<IXOR>sbg_<GPR>_srl, *r<IXOR>sbg_<GPR>_sll):
        New patterns.

Co-Authored-By: Andreas Krebbel <Andreas.Krebbel@de.ibm.com>

From-SVN: r194645
2012-12-20 10:05:19 -08:00
Richard Henderson 1a2e356efe s390: Implement extzv for z10
* config/s390/predicates.md (nonzero_shift_count_operand): New.
        * config/s390/s390-protos.h (s390_extzv_shift_ok): Declare.
        * config/s390/s390.c (s390_extzv_shift_ok): New function.
        * config/s390/s390.md (extzv): New expander.
        (*extzv<GPR>_zEC12, *extzv<GPR>_z10): New insns.
        (*pre_z10_extzv<GPR>): Rename from *extzv<GPR>; simplify with
        nonzero_shift_count_operand.
        (*extzv_<mode>_srl, *extzv_<mode>_sll): New insns.

Co-Authored-By: Andreas Krebbel <Andreas.Krebbel@de.ibm.com>

From-SVN: r194644
2012-12-20 10:05:11 -08:00
Richard Henderson 2542ef057b s390: Add mode attribute for mode bitsize
* config/s390/s390.md (bitsize): New mode attr.
        (*extzv<GPR>, *extzv<GPR>, *insv<GPR>_zEC12, *insv<GPR>_z10): Use it.
        (extend<HQI><DSI>2, zero_extend<HQI>si2): Likewise.
        (zero_extend<HQI>di2, fixuns_trunc<BFP><GPR>2): Likewise.

Co-Authored-By: Andreas Krebbel <Andreas.Krebbel@de.ibm.com>

From-SVN: r194643
2012-12-20 10:05:03 -08:00