Commit Graph

121806 Commits

Author SHA1 Message Date
Jonathan Wakely 0addb273c5 re PR libstdc++/56112 (cannot create unordered_map from range of types convertible to value_type)
PR libstdc++/56112
	* include/bits/hashtable_policy.h (insert(_Pair&&)): Use _M_emplace
	to construct value_type explicitly before trying to extract the key.
	* testsuite/23_containers/unordered_map/cons/56112.cc: New.

From-SVN: r195520
2013-01-28 23:07:35 +00:00
François Dumont 5b3be7cf99 hashtable_policy.h (_Local_iterator_base): Use _Hashtable_ebo_helper to embed functors into the local_iterator when necessary.
2013-01-28  François Dumont  <fdumont@gcc.gnu.org>

	* include/bits/hashtable_policy.h (_Local_iterator_base): Use
	_Hashtable_ebo_helper to embed functors into the local_iterator
	when necessary. Pass information about functors involved in hash
	code by copy.
	* include/bits/hashtable.h (__cache_default): Do not cache for
	builtin integral types unless the hash functor is not noexcept
	qualified or is not default constructible. Adapt static assertions
	and local iterator instantiations.
	* include/debug/unordered_set
	(std::__debug::unordered_set<>::erase): Detect local iterators to
	invalidate using contained node rather than generating a dummy
	local_iterator instance.
	(std::__debug::unordered_multiset<>::erase): Likewise.
	* include/debug/unordered_map
	(std::__debug::unordered_map<>::erase): Likewise.
	(std::__debug::unordered_multimap<>::erase): Likewise.
	* testsuite/performance/23_containers/insert_erase/41975.cc: Test
	std::tr1 and std versions of unordered_set regardless of any
	macro. Add test on default cache behavior.
	* testsuite/performance/23_containers/insert/54075.cc: Likewise.
	* testsuite/23_containers/unordered_set/instantiation_neg.cc:
	Adapt line number.
	* testsuite/23_containers/unordered_set/
	not_default_constructible_hash_neg.cc: New.
	* testsuite/23_containers/unordered_set/buckets/swap.cc: New.

From-SVN: r195517
2013-01-28 20:52:13 +00:00
Leif Ekblad 5a579c3b65 config.gcc (i[34567]86-*-rdos*, [...]): New targets.
* config.gcc (i[34567]86-*-rdos*, x86_64-*-rdos*): New targets.
	* config/i386/i386.h (TARGET_RDOS): New macro.
	(DEFAULT_LARGE_SECTION_THRESHOLD): New macro.
	* config/i386/i386.c (ix86_option_override_internal): For 64bit
	TARGET_RDOS, set ix86_cmodel to CM_MEDIUM_PIC and flag_pic to 1.
	* config/i386/i386.opt (mlarge-data-threshold): Initialize to
	DEFAULT_LARGE_SECTION_THRESHOLD.
	* config/i386/i386.md (R14_REG, R15_REG): New constants.
	* config/i386/rdos.h: New file.
	* config/i386/rdos64.h: New file.

From-SVN: r195516
2013-01-28 21:42:55 +01:00
Bernd Schmidt 51e44392b3 re PR other/54814 (ICE: unable to find a register to spill in class 'R0_REG')
PR other/54814
	* reload.c (find_valid_class_1): Use in_hard_reg_set_p instead of
	TEST_HARD_REG_BIT.

From-SVN: r195515
2013-01-28 20:03:26 +00:00
Jakub Jelinek db1fb332e1 re PR rtl-optimization/56117 (ICE: in cselib_subst_to_values, at cselib.c:1853 with -O2 -fsched2-use-superblocks and __builtin_prefetch())
PR rtl-optimization/56117
	* sched-deps.c (sched_analyze_2) <case PREFETCH>: For use_cselib
	call cselib_lookup_from_insn on the MEM before calling
	add_insn_mem_dependence.

	* gcc.dg/pr56117.c: New test.

From-SVN: r195513
2013-01-28 17:50:22 +01:00
Richard Biener 1691776171 tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK to a stmt that didn't have one.
2013-01-28  Richard Biener  <rguenther@suse.de>

	* tree-inline.c (remap_gimple_stmt): Do not assing a BLOCK
	to a stmt that didn't have one.
	(copy_phis_for_bb): Likewise for PHI arguments.
	(copy_debug_stmt): Likewise for debug stmts.

From-SVN: r195509
2013-01-28 14:50:57 +00:00
Richard Biener b9fc049742 re PR tree-optimization/56034 (ICE: verify_gimple failed (invalid PHI argument) with -ftree-loop-distribution)
2013-01-28  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/56034
	* tree-loop-distribution.c (enum partition_kind): Add
	PKIND_REDUCTION.
	(partition_builtin_p): Adjust.
	(generate_code_for_partition): Handle PKIND_REDUCTION.  Assert
	it is the last partition.
	(rdg_flag_uses): Check SSA_NAME_IS_DEFAULT_DEF before looking
	up the vertex for the definition.
	(classify_partition): Classify whether a partition is a
	PKIND_REDUCTION, thus has uses outside of the loop.
	(ldist_gen): Inherit PKIND_REDUCTION when merging partitions.
	Merge all PKIND_REDUCTION partitions into the last partition.
	(tree_loop_distribution): Seed partitions from reductions as well.

	* gcc.dg/torture/pr56034.c: New testcase.

From-SVN: r195508
2013-01-28 14:45:46 +00:00
Jakub Jelinek 0bfbca5868 re PR tree-optimization/56125 (-O2 -ffast-math generates bad code when dividing a double by the square of another double.)
PR tree-optimization/56125
	* tree-ssa-math-opts.c (gimple_expand_builtin_pow): Don't optimize
	pow(x,c) into sqrt(x) * powi(x, n/2) or
	1.0 / (sqrt(x) * powi(x, abs(n/2))) if c is an integer or when
	optimizing for size.
	Don't optimize pow(x,c) into powi(x, n/3) * powi(cbrt(x), n%3) or
	1.0 / (powi(x, abs(n)/3) * powi(cbrt(x), abs(n)%3)) if 2c is an
	integer.

	* gcc.dg/pr56125.c: New test.

From-SVN: r195507
2013-01-28 15:43:03 +01:00
Tobias Burnus dd8b9ddea2 re PR fortran/53537 (Explicit IMPORT of renamed USE-associated symbol fails)
2013-01-28  Tobias Burnus  <burnus@net-b.de>
	    Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/53537
	* symbol.c (gfc_find_sym_tree): Don't look for the symbol outside an
	interface block.
	(gfc_get_ha_symtree): Let gfc_find_sym_tree lookup the parent namespace.
	* decl.c (gfc_match_data_decl): Ditto.
	(variable_decl): Remove undeclared type error.
	(gfc_match_import): Use renamed instead of original name.

2013-01-28  Tobias Burnus  <burnus@net-b.de>
	    Mikael Morin  <mikael@gcc.gnu.org>

	PR fortran/53537
	* gfortran.dg/import2.f90: Adjust undeclared type error messages.
	* gfortran.dg/import8.f90: Likewise.
	* gfortran.dg/interface_derived_type_1.f90: Likewise.
	* gfortran.dg/import10.f90: New test.
	* gfortran.dg/import11.f90: Likewise


Co-Authored-By: Mikael Morin <mikael@gcc.gnu.org>

From-SVN: r195506
2013-01-28 14:37:20 +00:00
Jakub Jelinek e63f158158 re PR testsuite/56053 (FAIL: c-c++-common/asan/(global|stack)-overflow-1.c)
PR testsuite/56053
	* c-c++-common/asan/heap-overflow-1.c: Don't include stdlib.h and
	string.h.  Provide memset, malloc and free prototypes, adjust line
	numbers in dg-output.
	* c-c++-common/asan/stack-overflow-1.c: Don't include string.h.
	Provide memset prototype and adjust line numbers in dg-output.
	* c-c++-common/asan/global-overflow-1.c: Likewise.

From-SVN: r195505
2013-01-28 15:28:16 +01:00
Jakub Jelinek aa710d2595 re PR tree-optimization/56094 (Invalid line number info generated with tree-level ivopts)
PR tree-optimization/56094
	* gimplify.c (force_gimple_operand_1): Temporarily set input_location
	to UNKNOWN_LOCATION while gimplifying expr.

	* gcc.dg/pr56094.c: New test.

From-SVN: r195504
2013-01-28 15:05:40 +01:00
Amol Pise 25350308a5 For Amol Pise.
2013-01-27  Amol Pise  <amolpise15@gmail.com>

	* gcc.target/arm/neon-vfnms-1.c: New test.
	* gcc.target/arm/neon-vfnma-1.c: New test.

From-SVN: r195503
2013-01-28 10:45:41 +00:00
Naveen H.S 706b2314dd aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS): Undef to avoid warning.
2013-01-25   Naveen H.S  <Naveen.Hurugalawadi@caviumnetworks.com>

	* config/aarch64/aarch64.c (TARGET_FIXED_CONDITION_CODE_REGS):
	Undef to avoid warning.

From-SVN: r195502
2013-01-28 05:15:52 +00:00
GCC Administrator 78a7cf51dd Daily bump.
From-SVN: r195500
2013-01-28 00:18:50 +00:00
Uros Bizjak 77dc529721 re PR target/56114 (x86_64-linux-gnu-gcc generate wrong asm instruction MOVABS for intel syntax)
PR target/56114
	* config/i386/i386.md (*movabs<mode>_1): Add square brackets around
	operand 0 in movabs insn template for -masm=intel asm alternative.
	(*movabs<mode>_2): Ditto for operand 1.

testsuite/ChangeLog:

	PR target/56114
	* gcc.target/i386/pr56114.c: New test.

From-SVN: r195494
2013-01-27 14:16:54 +01:00
Paul Thomas ca3227497d re PR fortran/55984 ([OOP] ICE: gfc_trans_code(): Bad statement code)
2013-01-27 Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55984
	* ChangeLog : Correct wrong PR number.

From-SVN: r195493
2013-01-27 07:18:22 +00:00
Paul Thomas aa27186087 [multiple changes]
2013-01-27 Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55789
	PR fortran/56047
	* gfortran.h : Add associate_var to symbol_attr.
	* resolve.c (resolve_assoc_var): Set associate_var attribute.
	If the target class_ok is set, set it for the associate
	variable.
	* check.c (allocatable_check): Associate variables should not
	have the allocatable attribute even if their symbols do.
	* class.c (gfc_build_class_symbol): Symbols with associate_var
	set will always have a good class container.

2013-01-27  Paul Thomas  <pault@gcc.gnu.org>

	PR fortran/55789
	* gfortran.dg/associate_14.f90: New test.

	PR fortran/56047
	* gfortran.dg/associate_13.f90: New test.

From-SVN: r195492
2013-01-27 07:09:06 +00:00
GCC Administrator 170c0f31d1 Daily bump.
From-SVN: r195491
2013-01-27 00:18:21 +00:00
David Holsgrove fbf0cf904e gcc: PR target/54663
gcc:  PR target/54663
	* config.gcc (microblaze*-linux*): Add tmake_file to allow building
	of microblaze-c.o.
libgcc:
	* config.host(microblaze*-linux*): tmake_file: Remove 
	t-slibgcc-nolc-override, add t-slibgcc-libgcc.
	* config/microblaze/t-microblaze: Set LIB2FUNCS_EXCLUDE
	to exclude functions from being built with libgcc.c and use
	the microblaze assembly.

From-SVN: r195488
2013-01-26 16:53:45 +00:00
Edgar E. Iglesias 6f14eef2c5 gcc/config.gcc (microblaze*-*-*): Rename microblaze*-*-elf, update tm_file.
libgcc/config.host (microblaze*-*-*): Rename microblaze*-*-elf, update extra_parts.

From-SVN: r195487
2013-01-26 16:39:10 +00:00
Michael Haubenwallner 478f60f94c configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
2013-01-25  Michael Haubenwallner  <michael.haubenwallner@salomon.at>

        * configure.ac (gcc_cv_ld_static_dynamic): Define for AIX native ld.
        * configure: Regenerate.

From-SVN: r195486
2013-01-25 23:07:08 -05:00
GCC Administrator d535053d38 Daily bump.
From-SVN: r195485
2013-01-26 00:18:48 +00:00
Ian Lance Taylor 0d4668c1d5 libgo: Add --enable-werror configure option.
From-SVN: r195482
2013-01-26 00:13:34 +00:00
Ian Lance Taylor acc6151f4a re PR other/56076 (Several 64-bit libgo tests FAIL in read_line_header)
PR other/56076
runtime: Support sparc64 in lfstack.

From-SVN: r195479
2013-01-25 23:43:23 +00:00
Jakub Jelinek 1e678aed6c re PR other/56076 (Several 64-bit libgo tests FAIL in read_line_header)
PR other/56076
	* dwarf.c (read_line_header): Don't crash if DW_AT_comp_dir
	attribute was not seen.

From-SVN: r195478
2013-01-25 22:36:11 +00:00
Jason Merrill 6da1b88f06 remove unnecessary bits from g++.dg/warn/pmf2.C
From-SVN: r195477
2013-01-25 15:27:54 -05:00
Jakub Jelinek d7fa6ee24e re PR middle-end/56098 (conditional write through volatile pointer produces unintended read)
PR tree-optimization/56098
	* tree-ssa-phiopt.c (nt_init_block): Don't call add_or_mark_expr
	for stmts with volatile ops.
	(cond_store_replacement): Don't optimize if assign has volatile ops.
	(cond_if_else_store_replacement_1): Don't optimize if either
	then_assign or else_assign have volatile ops.
	(hoist_adjacent_loads): Don't optimize if either def1 or def2 have
	volatile ops.

	* gcc.dg/pr56098-1.c: New test.
	* gcc.dg/pr56098-2.c: New test.

From-SVN: r195475
2013-01-25 21:03:54 +01:00
Jason Merrill d4a180188b re PR c++/56095 (Crash casting function pointer as non-type template argument)
PR c++/56095
	* pt.c (convert_nontype_argument_function): Handle invalid input.
	(convert_nontype_argument): Likewise.

From-SVN: r195474
2013-01-25 15:01:29 -05:00
Georg-Johann Lay f8fe87bd12 invoke.texi (AVR Built-in Macros): Document __XMEGA__.
* doc/invoke.texi (AVR Built-in Macros): Document __XMEGA__.

From-SVN: r195473
2013-01-25 18:57:49 +00:00
Georg-Johann Lay 28398d0d55 extend.texi (Example of asm with clobbered asm reg): Fix missing ':' in asm example.
* doc/extend.texi (Example of asm with clobbered asm reg): Fix
	missing ':' in asm example.

From-SVN: r195471
2013-01-25 18:11:53 +00:00
Jason Merrill e18724aa46 re PR c++/56104 (Wrong "dereferencing type-punned pointer" warning)
PR c++/56104
	* typeck.c (get_member_function_from_ptrfunc): Optimize if the
	dynamic type has no virtual functions.

From-SVN: r195470
2013-01-25 12:55:09 -05:00
Tejas Belagod b7d7d917bd aarch64-simd-builtins.def: Separate sq<r>dmulh_lane entries into lane and laneq entries.
2013-01-25  Tejas Belagod  <tejas.belagod@arm.com>

        * config/aarch64/aarch64-simd-builtins.def: Separate sq<r>dmulh_lane
        entries into lane and laneq entries.
        * config/aarch64/aarch64-simd.md (aarch64_sq<r>dmulh_lane<mode>): Remove
        AdvSIMD scalar modes.
        (aarch64_sq<r>dmulh_laneq<mode>): New. 
        (aarch64_sq<r>dmulh_lane<mode>): New RTL pattern for Scalar AdvSIMD
        modes.
        * config/aarch64/arm_neon.h: Fix all the vq<r>dmulh_lane* intrinsics'
        builtin implementations to relfect changes in RTL in aarch64-simd.md.
        * config/aarch64/iterators.md (VCOND): New. 
        (VCONQ): New.

From-SVN: r195467
2013-01-25 11:35:03 +00:00
Georg-Johann Lay 556f9906c5 re PR target/54222 ([avr] Implement fixed-point support)
gcc/
	PR target/54222
	* config/avr/builtins.def (DEF_BUILTIN): Add LIBNAME argument.
	Add NULL LIBNAME argument to existing definitions.
	(ABSHR, ABSR, ABSLR, ABSLLR, ABSHK, ABSK, ABSLK, ABSLLK): New.
	* config/avr/avr-c.c (DEF_BUILTIN): Add LIBNAME argument.
	* config/avr/avr.c (DEF_BUILTIN): Same.
	(avr_init_builtins): Pass down LIBNAME to add_builtin_function.
	(avr_expand_builtin): Expand to a vanilla call if a libgcc
	implementation is available (DECL_ASSEMBLER_NAME is set).
	(avr_fold_absfx): New static function.
	(avr_fold_builtin): Use it to handle: AVR_BUILTIN_ABSHR,
	AVR_BUILTIN_ABSR, AVR_BUILTIN_ABSLR, AVR_BUILTIN_ABSLLR,
	AVR_BUILTIN_ABSHK, AVR_BUILTIN_ABSK, AVR_BUILTIN_ABSLK,
	AVR_BUILTIN_ABSLLK.
	* config/avr/stdfix.h (abshr, absr, abslr, absllr)
	(abshk, absk, abslk, absllk): Provide as static inline functions.

gcc/testsuite/
	PR target/54222
	* gcc.target/avr/torture/builtins-3-absfx.c: New test.

From-SVN: r195464
2013-01-25 09:28:09 +00:00
Marek Polacek 1f546bbbc4 Fix PR56035.
From-SVN: r195462
2013-01-25 08:52:02 +00:00
Eric Botcazou aaf1e810c2 Remove conflict marker
From-SVN: r195461
2013-01-25 08:16:57 +00:00
Maxim Kuvyrkov 9058217d10 * MAINTAINERS: Update my email.
From-SVN: r195459
2013-01-25 04:00:31 +00:00
GCC Administrator 0d105c88b5 Daily bump.
From-SVN: r195451
2013-01-25 00:18:31 +00:00
Uros Bizjak 7e184bd74d i386.md (*movti_internal_rex64): Add (o,e) alternative.
* config/i386/i386.md (*movti_internal_rex64): Add (o,e) alternative.
	(*movtf_internal_rex64): Add (!o,C) alternative
	(*movxf_internal_rex64): Ditto.
	(*movdf_internal_rex64): Add (?r,C) and (?m,C) alternatives.

From-SVN: r195446
2013-01-24 23:50:43 +01:00
Richard Sandiford 8eb03ce8dc bind_c_array_params_2.f90: Require -mno-relax-pic-calls for MIPS.
gcc/testsuite/
	* gfortran.dg/bind_c_array_params_2.f90: Require -mno-relax-pic-calls
	for MIPS.

From-SVN: r195443
2013-01-24 21:45:55 +00:00
Richard Sandiford 94ba344642 octeon-pipe-1.c: Add -ffat-lto-objects
gcc/testsuite/
	* gcc.target/mips/octeon-pipe-1.c: Add -ffat-lto-objects

From-SVN: r195441
2013-01-24 21:40:54 +00:00
Ian Lance Taylor f6b1e65ec3 re PR go/46986 (Go is not supported on Darwin)
PR go/46986
all: prepend #__USER_LABEL_PREFIX__ to mangled Go symbols
For old-fashioned Darwin.

From-SVN: r195438
2013-01-24 19:44:23 +00:00
Shenghou Ma f5ba49ac2e invoke.texi: fix typo.
* doc/invoke.texi: fix typo.
	* doc/objc.texi: fix typo.

From-SVN: r195437
2013-01-24 18:51:49 +00:00
Ian Lance Taylor 72d1cef254 re PR go/46986 (Go is not supported on Darwin)
PR go/46986
libgo/Makefile, libgo/go/os/stat_atimespec.go: fix typos

From-SVN: r195436
2013-01-24 18:12:23 +00:00
Richard Sandiford a6343728a2 mips.md (*and<mode>3_mips16): Use the "W" constraint for the first two alternatives.
gcc/
	* config/mips/mips.md (*and<mode>3_mips16): Use the "W" constraint
	for the first two alternatives.

From-SVN: r195433
2013-01-24 17:46:41 +00:00
Jakub Jelinek 8824edffd6 re PR c/56078 (causes cc1 to crash)
PR c/56078
	* c-typeck.c (set_nonincremental_init_from_string): If
	constructor_max_index is NULL, treat it as if tree_int_cst_lt
	returned false.
	(process_init_element): Likewise.

	* gcc.dg/pr56078.c: New test.
	* gcc.c-torture/compile/20030305-1.c: Add dg-error lines.

From-SVN: r195432
2013-01-24 17:59:44 +01:00
Martin Jambor 1513a0d494 re PR tree-optimization/55927 (FAIL: g++.dg/ipa/devirt-10.C -std=gnu++11 scan-ipa-dump-times inline "Discovered a virtual call to a known target" 1)
2013-01-24  Martin Jambor  <mjambor@suse.cz>

	PR tree-optimization/55927
	* g++.dg/ipa/devirt-10.C: Disable early inlining.

From-SVN: r195430
2013-01-24 17:18:26 +01:00
Diego Novillo cd030c079e Remove zone allocator.
This patch removes the GC zone allocator.  It is not used and it
produces several regressions in the testsuite.  Furthermore, it
complicates things for the plan to implement manual GC markers
(http://gcc.gnu.org/wiki/cxx-conversion/gc-alternatives#Do_GC_marking_manually).

Tested on x86_64 with standard checking, --enable-checking=gc and
--enable-checking=release.

From-SVN: r195426
2013-01-24 10:13:46 -05:00
Georg-Johann Lay a861ffa4f3 avr.c (avr_out_fract): Make register numbers that might be outside of source operand signed.
* config/avr/avr.c (avr_out_fract): Make register numbers that
	might be outside of source operand signed.

From-SVN: r195424
2013-01-24 13:27:11 +00:00
Uros Bizjak 593c0dddb7 constraints.md (Yf): New constraint.
* config/i386/constraints.md (Yf): New constraint.
	* config/i386/i386.md (*movdf_internal_rex64): Use Yf*f instead
	of f constraint to conditionaly disable x87 register preferences.
	(*movdf_internal): Ditto.
	(*movsf_internal): Ditto.

testsuite/ChangeLog:

	* gcc.target/i386/movsd.c: New test.

From-SVN: r195423
2013-01-24 14:03:40 +01:00
Paolo Carlini 91f4a9e332 re PR libstdc++/56085 (Unsafe negation in C++03 pow(complex,int))
2013-01-24  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/56085
	* include/std/complex (pow(const complex<>&, int)): Avoid __n
	signed overflow.

From-SVN: r195421
2013-01-24 12:20:57 +00:00