Commit Graph

104035 Commits

Author SHA1 Message Date
Jie Zhang
89ff4f167f Fix a typo in my last ChangeLog entry.
From-SVN: r165916
2010-10-25 12:02:03 +00:00
Paolo Carlini
deaf7b86cd forward_list.h (_Fwd_list_node_base::swap): Remove.
2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/forward_list.h (_Fwd_list_node_base::swap): Remove.
	(_Fwd_list_base<>::_Fwd_list_base(_Fwd_list_base&&),
	_Fwd_list_base<>::_Fwd_list_base(_Fwd_list_base&&, const _Alloc&)):
	Don't use swap.
	(forward_list<>::swap): Just use std::swap.

	* include/bits/forward_list.h (_Fwd_list_base<>::_Fwd_list_base(),
	_Fwd_list_base(const _Alloc&)): Don't zero again _M_next.

	* testsuite/23_containers/forward_list/requirements/dr438/
	assign_neg.cc: Adjust dg-error line number.
	* testsuite/23_containers/forward_list/requirements/dr438/
	insert_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_1_neg.cc: Likewise.
	* testsuite/23_containers/forward_list/requirements/dr438/
	constructor_2_neg.cc: Likewise.

From-SVN: r165915
2010-10-25 10:47:19 +00:00
Eric Botcazou
35a382b82d decl.c (gnat_to_gnu_entity, [...]): Allow In Out/Out parameters for functions.
* gcc-interface/decl.c (gnat_to_gnu_entity, case E_Function): Allow
	In Out/Out parameters for functions.
	* gcc-interface/trans.c (gnu_return_var_stack): New variable.
	(create_init_temporary): New static function.
	(Subprogram_Body_to_gnu): Handle In Out/Out parameters for functions.
	(call_to_gnu): Likewise.  Use create_init_temporary in order to create
	temporaries for unaligned parameters and return value.  If there is an
	unaligned In Out or Out parameter passed by reference, push a binding
	level if not already done.  If a binding level has been pushed and the
	call is returning a value, create the call statement.
	(gnat_to_gnu) <N_Return_Statement>: Handle In Out/Out parameters for
	functions.

From-SVN: r165914
2010-10-25 10:35:07 +00:00
Eric Botcazou
7fa2619a2f configure.ac: Use $cpu_type instead of $target to define the nop.
* configure.ac: Use $cpu_type instead of $target to define the nop.
	* configure: Regenerate.

From-SVN: r165913
2010-10-25 10:08:01 +00:00
Paolo Carlini
7d9d5bb6c9 hashtable.h (_Hashtable<>:_M_get_Value_allocator): Remove, unused.
2010-10-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* include/bits/hashtable.h (_Hashtable<>:_M_get_Value_allocator):
	Remove, unused.

From-SVN: r165912
2010-10-25 09:42:08 +00:00
Jie Zhang
8150f05c20 combine.c (try_combine): If insns need to be kept around...
* combine.c (try_combine): If insns need to be kept around,
	check that they can be copied in the merged instruction.

	testsuite/
	g++.dg/opt/combine.c: New test.

From-SVN: r165911
2010-10-25 09:37:19 +00:00
GCC Administrator
0ebd05fea2 Daily bump.
From-SVN: r165910
2010-10-25 00:17:56 +00:00
Eric Botcazou
12929514e7 reg-stack.c (convert_regs_1): Return boolean value, true if the CFG has been modified.
* reg-stack.c (convert_regs_1): Return boolean value, true if the CFG
	has been modified.
	(convert_regs_2): Likewise.  Adjust calls to convert_regs_1.
	(convert_regs): Adjust calls to convert_regs_2.  Clean up the CFG if
	it has been modified.

From-SVN: r165905
2010-10-24 20:50:20 +00:00
Eric Botcazou
0e7e15278e * config/sparc/sparc.c (sparc_type_code) <NULLPTR_TYPE>: New case.
From-SVN: r165904
2010-10-24 19:25:11 +00:00
Nicola Pero
682e805aaf Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        * Makefile.in (OBJC_SOURCE_FILES): Added accessors.m.
        * accessors.m: New.
        * init.c: Include objc-private/accessors.h.
        (__objc_exec_class): Call __objc_accessors_init.
        * objc-private/accessors.h: New.

From-SVN: r165903
2010-10-24 17:23:19 +00:00
Paul Koning
0f237806af pdp11.md: Change length attribute to be in bytes.
* config/pdp11/pdp11.md: Change length attribute to be in bytes.
* config/pdp11/pdp11.c (output_jump): Ditto.

From-SVN: r165902
2010-10-24 13:04:17 -04:00
Nicola Pero
a5cd07463d re PR objc/45735 (ICE in objc_add_method, at objc/objc-act.c:6941)
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc/45735   
        * obj-c.dg/pr45735.mm: New.     
        * obj-c++.dg/pr45735.mm: New.

From-SVN: r165901
2010-10-24 16:48:57 +00:00
Ian Lance Taylor
40d398e057 i386.c (ix86_va_start): Remove extraneous blank line.
* config/i386/i386.c (ix86_va_start): Remove extraneous blank
	line.

From-SVN: r165900
2010-10-24 14:44:54 +00:00
François Dumont
68478bb473 debug.cc: Fix parameter indexes in __msg_valid_range2 message.
2010-10-24  François Dumont  <francois.cppdevs@free.fr>

	* src/debug.cc: Fix parameter indexes in __msg_valid_range2 message.
	Replace 'before begin' decription in 'before-begin' for consistency
	with 'paste-the-end'.

From-SVN: r165899
2010-10-24 10:39:11 +00:00
Nicola Pero
460f861d8d In gcc/testsuite/: 2010-10-24 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/testsuite/:
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc/24393
        * objc.dg/pr24393.m: New.
        * obj-c++.dg/pr24393.mm: New.

2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        PR objc/28049
        * objc.dg/pr28049.m: New.
        * obj-c++.dg/pr28049.mm: New.

From-SVN: r165898
2010-10-24 10:39:05 +00:00
Eric Botcazou
4cce988e5b cfglayout.c (fixup_reorder_chain): When ensuring that there is at least one insn with a locus corresponding to an...
* cfglayout.c (fixup_reorder_chain): When ensuring that there is at
	least one insn with a locus corresponding to an edge's goto_locus,
	disregard non-fallthru edges to the exit block and merge the blocks
	created for the same goto_locus.

From-SVN: r165897
2010-10-24 07:45:26 +00:00
Nicola Pero
be8cf3b55e In gcc/cp/: 2010-10-24 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/cp/:
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        Removed Objective-C++ specific replacement of cxx_printable_name.
        * cp-objcp-common.h: Added LANG_HOOKS_DECL_PRINTABLE_NAME, set
        to cxx_printable_name for both C++ and Objective-C++.
        * cp-lang.h: Removed LANG_HOOKS_DECL_PRINTABLE_NAME.

        * error.c (dump_decl): For Objective-C++, call
        objc_maybe_printable_name here ...
        * tree.c (cxx_printable_name_internal): ... instead of here.
        
In gcc/objcp/:
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objcp-lang.c (LANG_HOOKS_DECL_PRINTABLE_NAME): Do not define.

In gcc/objc/:
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-act.c (objc_build_keyword_decl): Updated comments.  Do not
        emit a warning that method parameter attributes are unimplemented.
        Instead, store them into DECL_ATTRIBUTES of the KEYWORD_DECL.
        (start_method_def): Copy attributes from each KEYWORD_DECL into
        the corresponding PARM_DECL.
        (objc_warn_deprecated_use): Removed.
        (build_objc_method_call): Call warn_deprecated_use, not
        objc_warn_deprecated_use.
        (objc_maybe_printable_name): Do not try to get the identifier name
        of DECLs that we don't recognize.  Immediately return NULL for them.
        (objc_printable_name): Removed C++-specific case, which is no
        longer used.  Updated comments.
        
In gcc/testsuite/:
2010-10-24  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/attributes/method-attribute-2.m: Updated test.  Method
        parameter attributes are now supported.
        * obj-c++.dg/attributes/method-attribute-2.m: Same change.
        * objc.dg/attributes/parameter-attribute-1.m: New test.
        * objc.dg/attributes/parameter-attribute-2.m: New test. 
        * obj-c++.dg/attributes/parameter-attribute-1.m: New test.
        * obj-c++.dg/attributes/parameter-attribute-2.m: New test.

From-SVN: r165896
2010-10-24 02:44:03 +00:00
GCC Administrator
b98058c521 Daily bump.
From-SVN: r165895
2010-10-24 00:17:15 +00:00
Joseph Myers
efe5e5a0d8 gcc.c (n_switches_alloc_debug_check): New.
* gcc.c (n_switches_alloc_debug_check): New.
	(set_option_handlers): New.
	(process_command): Use set_option_handlers.
	(do_self_spec): Pass spec-generated options through option
	handlers.
	(main): Also save and restore n_switches_alloc when swapping
	switch arrays.

From-SVN: r165891
2010-10-23 23:26:08 +01:00
James E. Wilson
fe12dfe194 * MAINTAINERS: Update my email address.
From-SVN: r165890
2010-10-23 13:27:20 -07:00
Iain Sandoe
505bff7a28 tests for Darwin CFStrings
gcc/testsuite:

	Based on the CFString implementation in FSF apple/trunk branch.

	* gcc.dg/darwin-cfstring-1.c: New.
	* gcc.dg/darwin-cfstring-2.c: New.
	* gcc.dg/torture/darwin-cfstring-3.c: New.
	* g++.dg/other/darwin-cfstring1.C: New.
	* g++.dg/torture/darwin-cfstring-3.C: New.

From-SVN: r165889
2010-10-23 19:40:26 +00:00
Nicola Pero
b8a1880581 In gcc/cp/: 2010-10-23 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/cp/:
2010-10-23  Nicola Pero  <nicola.pero@meta-innovation.com>

        * tree.c (cxx_printable_name_internal): In Objective-C++, call
        objc_maybe_printable_name.

In gcc/objc/:
2010-10-23  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-act.c (OBJC_GEN_METHOD_LABEL): Updated comments.
        (objc_demangle): Return NULL if demangling can not be done because
        the string to demangle is not an Objective-C mangled method name.
        Be smarter in demangling method names so that at least for methods
        with no arguments we are able to almost always demangle '_' correctly.
        Updated comments.
        (objc_maybe_printable_name): New.
        (objc_printable_name): Call objc_maybe_printable_name.  If it
        returns NULL, call cxx_printable_name in Objective-C++.

In gcc/testsuite/:
2010-10-23  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc.dg/demangle-1.m: New test.
        * obj-c++.dg/demangle-1.mm: New test.
        * obj-c++.dg/demangle-2.mm: New test.
        * obj-c++.dg/demangle-3.mm: New test.

In gcc/c-family/:
2010-10-23  Nicola Pero  <nicola.pero@meta-innovation.com>

        * c-common.h (objc_maybe_printable_name): New.
        * stub-objc.c (objc_maybe_printable_name): New.

From-SVN: r165887
2010-10-23 18:40:39 +00:00
Richard Henderson
487a9a3ef8 re PR target/46144 (gfortran.dg/vect/fast-math-vect-8.f90)
PR target/46144
* config/i386/sse.md (*avx_absneg<AVXMODEF2P>2): New.
(*sse_absneg<SSEMODEF2P>2): Rename from *absneg<VEC_FLOAT_MODE>2.
Honor matching operands when splitting to XOR.

From-SVN: r165885
2010-10-23 09:42:24 -07:00
Ian Lance Taylor
0e1b8b109f tree-vrp.c (extract_range_from_binary_expr): If flag_non_call_exceptions don't eliminate division by zero.
gcc/:
	* tree-vrp.c (extract_range_from_binary_expr): If
	flag_non_call_exceptions don't eliminate division by zero.
	* simplify-rtx.c (simplify_binary_operation_1): Likewise.
gcc/testsuite/:
	* gcc.c-torture/execute/20101011-1.c: New test.
	* gcc.c-torture/execute/20101011-1.x: New test driver.

From-SVN: r165884
2010-10-23 16:18:32 +00:00
Tobias Burnus
67f67405cb re PR fortran/46122 (PROTECTED check too strict)
2010-10-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/46122
        * expr.c (gfc_check_vardef_context): Fix PROTECTED check.

2010-10-23  Tobias Burnus  <burnus@net-b.de>

        PR fortran/46122
        * gfortran.dg/protected_8.f90: New.

From-SVN: r165883
2010-10-23 15:48:08 +02:00
Joseph Myers
15ac394242 march-generic.c: Skip for -march in multilib options.
* gcc.dg/march-generic.c: Skip for -march in multilib options.
	* gcc.target/i386/isa-9.c: Skip for -march other than
	-march=amdfam10 in multilib options.
	* gcc.target/i386/pr42589.c: Skip for -march other than
	-march=i486 in multilib options.
	* gcc.target/i386/sse-19.c: Add -march=x86-64 option and skip for
	other -march in multilib options.

From-SVN: r165882
2010-10-23 12:07:09 +01:00
Nathan Froyd
18ed6ee4bf cppbuiltin.c (define_builtin_macros_for_type_sizes): Define __BYTE_ORDER__...
gcc/
	* cppbuiltin.c (define_builtin_macros_for_type_sizes): Define
	__BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__, __ORDER_BIG_ENDIAN__, and
	__ORDER_PDP_ENDIAN__.
	* libgcc2.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	(struct DWstruct): Define based on __BYTE_ORDER__.
	* config/fixed-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	(struct INTstruct): Define based on __BYTE_ORDER__.
	* config/dfp-bit.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	(LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__.
	* system.h (LIBGCC2_WORDS_BIG_ENDIAN): Poison identifier.
	* config/arc/arc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/arm/arm.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/ia64/ia64.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/iq2000/iq2000.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/lm32/lm32.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/m32r/m32r.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/mcore/mcore.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/mep/mep.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/mips/mips.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/rs6000/sysv4.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/rx/rx.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/score/score.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/sh/sh.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/sparc/sparc.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* config/xtensa/xtensa.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* doc/tm.texi.in (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	* doc/tm.texi: Regenerate.
	* doc/cpp.texi (__BYTE_ORDER__, __ORDER_LITTLE_ENDIAN__): Document.
	(__ORDER_BIG_ENDIAN__, __ORDER_PDP_ENDIAN__): Likewise.

libdecnumber/
	* dconfig.h (LIBGCC2_WORDS_BIG_ENDIAN): Delete.
	(LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__.

libgcc/
	* config/libbid/bid_gcc_intrinsics.h (LIBGCC2_WORDS_BIG_ENDIAN):
	Delete.
	(LIBGCC2_FLOAT_WORDS_BIG_ENDIAN): Test __BYTE_ORDER__.

From-SVN: r165881
2010-10-23 03:05:47 +00:00
Jie Zhang
646e6f415c re PR rtl-optimization/37360 (ICE in haifa-sched.c when compiling __popcountsi2 from libgcc)
PR rtl-optimization/37360
	* config/mips/mips.c (cached_can_issue_more): New local variable.
	(mips_sched_reorder_1): New.
	(mips_sched_reorder): Use mips_sched_reorder_1.
	(mips_sched_reorder2): New.
	(mips_variable_issue): Set cached_can_issue_more.
	(TARGET_SCHED_REORDER2): Define to mips_sched_reorder2
	instead of mips_sched_reorder.

	Revert
	2008-09-09  Andrey Belevantsev  <abel@ispras.ru>
	PR rtl-optimization/37360
	* haifa-sched.c (max_issue): Do not assert that we never issue more
	insns than issue_rate.  Add comment.

	testsuite/
	PR rtl-optimization/37360
	* gcc.dg/pr37360.c: New test.

From-SVN: r165880
2010-10-23 00:38:13 +00:00
GCC Administrator
61a796b169 Daily bump.
From-SVN: r165879
2010-10-23 00:18:21 +00:00
Eric Botcazou
692ad9aab2 gimplify.c (gimplify_variable_sized_compare): Preserve the source location info of the expression.
* gimplify.c (gimplify_variable_sized_compare): Preserve the source
	location info of the expression.

From-SVN: r165875
2010-10-22 23:39:16 +00:00
DJ Delorie
b3f85ff2b7 extend.texi (Named Address Spaces): Document the M32C named address space.
* doc/extend.texi (Named Address Spaces): Document the M32C named
address space.

From-SVN: r165873
2010-10-22 18:26:59 -04:00
DJ Delorie
5fd5d7136e m32c-pragma.c (m32c_register_pragmas): Register the __far address space.
* config/m32c/m32c-pragma.c (m32c_register_pragmas): Register the
__far address space.
* config/m32c/m32c.h (ADDR_SPACE_FAR): New.  Add support for
"__far" address space for R8C and M16C processor variants.
* config/m32c/m32c.c (m32c_addr_space_legitimate_address_p): New.
(far_addr_space_p): New.
(encode_pattern_1): Add sign and zero extend support.
(m32c_hard_regno_nregs_1): Large pointers in A16 mode are SImode.
(m32c_extra_constraint_p2): Add SF constraint.
(m32c_legitimate_address_p): Support __far addresses.
(m32c_addr_space_pointer_mode): New.
(m32c_addr_space_address_mode): New.
(m32c_addr_space_legitimate_address_p): New.
(m32c_addr_space_legitimize_address): New.
(m32c_addr_space_subset_p): New.
(m32c_addr_space_convert): New.
(conversions): Add __far operand patterns.
(m32c_prepare_move): Force constants into registers for __far
moves.
(m32c_split_move): __far moves are always split.
* config/m32c/addsub.md (addsi3_1): Support SImode symbols.
* config/m32c/mov.md (mov<mode>_far_op1): New.
(mov<mode>_far_op2): New.
(movqi_op): Add __far (SF) support.
(movhi_op): Likewise.
(movsi_splittable): Split A1A0 also.

From-SVN: r165865
2010-10-22 17:41:42 -04:00
Michael Meissner
bf1a7f6635 Fix regexp in powerpc test
From-SVN: r165863
2010-10-22 21:23:00 +00:00
Michael Meissner
f6dce794b4 Fix regexp in powerpc test
From-SVN: r165862
2010-10-22 21:16:20 +00:00
Artjoms Sinkarovs
30cd1c5d04 c-typeck.c (build_array_ref): Handle subscripting of vectors.
2010-10-22  Artjoms Sinkarovs <artyom.shinakroff@gmail.com>
	Andrew Pinski <pinskia@gmail.com>

	* c-typeck.c (build_array_ref): Handle subscripting of vectors.
	* doc/extend.texi: New paragraph

	c-family/
	* c-common.h (c_common_mark_addressable_vec): Declare.
	* c-common.c (c_common_mark_addressable_vec): New function.

	testsuite/
	* gcc.c-torture/execute/vector-subscript-1.c: Likewise.
	* gcc.c-torture/execute/vector-subscript-2.c: Likewise.
	* gcc.c-torture/execute/vector-subscript-3.c: New testcase.
	* gcc.dg/vector-subscript-1.c: Likewise.
	* gcc.dg/vector-subscript-2.c: Likewise.
	* gcc.dg/vector-subscript-3.c: New testcase.
	* gcc.dg/array-8.c: Adjust.

Co-Authored-By: Andrew Pinski <pinskia@gmail.com>

From-SVN: r165861
2010-10-22 20:03:33 +00:00
Paul Koning
5c958bdaed * config.pdp11/pdp11.h (DBX_DEBUGGING_INFO): Define.
From-SVN: r165860
2010-10-22 16:02:00 -04:00
DJ Delorie
f6bac694c2 * config/m32c/m32c-lib1.S (m32c_jsri16): Make reentrant.
From-SVN: r165859
2010-10-22 15:56:51 -04:00
Paul Koning
4d1bc60a12 * config/pdp11/pdp11.h (IRA_COVER_CLASSES): Define.
From-SVN: r165858
2010-10-22 15:53:48 -04:00
Richard Henderson
834d5dce79 Add __builtin_fma vector transform for i386.
From-SVN: r165857
2010-10-22 12:43:21 -07:00
Richard Henderson
7a12785c5f Use ABS/NEG+USE for vector modes as well.
From-SVN: r165856
2010-10-22 12:43:01 -07:00
Joseph Myers
c3fb2eb4b6 gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION, [...]): Remove.
* gcc.c (DEFAULT_SWITCH_CURTAILS_COMPILATION,
	SWITCH_CURTAILS_COMPILATION): Remove.
	* doc/tm.texi.in (SWITCH_CURTAILS_COMPILATION): Remove
	documentation.
	* doc/tm.texi: Regenerate.
	* system.h (SWITCH_CURTAILS_COMPILATION): Poison.

From-SVN: r165855
2010-10-22 20:34:43 +01:00
Changpeng Fang
6a08ffca63 Implementation of the pipeline description for Bulldozer (bdver1)
* gcc/config/i386/bdver1.md: New file.
	* gcc/config/i386/i386.md (include "bdver1.md"): Invoke the
	pipeline description for bdver1.
	(x86_sahf_1): Add "bdver1_decode" attribute.
	(*cmpfp_i_mixed): Likewise.
	(*cmpfp_i_sse): Likewise.
	(*cmpfp_i_i387): Likewise.
	(*cmpfp_iu_mixed): Likewise.
	(*cmpfp_iu_sse): Likewise.
	(*cmpfp_iu_387): Likewise.
	(*swap<mode>,*swap<mode>_1): Likewise.
	(fixuns_trunc<mode>hi2): Likewise.
	(fix_trunc<mode>si_sse): Likewise.
	(x86_fnstcw_1): Likewise.
	(x86_fldcw_1): Likewise.
	(*floatsi<mode>2_vector_mixed_with_temp): Likewise.
	(*floatsi<mode>2_vector_mixed): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_with_temp): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_interunit): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_mixed_nointerunit): Likewise.
	(*floatsi<mode>2_vector_sse_with_temp): Likewise.
	(*floatsi<mode>2_vector_sse): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_sse_with_temp): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit): Likewise.
	(*float<SSEMODEI24:mode><MODEF:mode>2_sse_nointerunit): Likewise.
	(*mul<mode>3_1): Likewise.
	(*mulsi3_1_zext): Likewise.
	(*mulhi3_1): Likewise.
	(*mulqi3_1): Likewise.
	(*<u>mul<mode><dwi>3_1): Likewise.
	(*<u>mulqihi3_1): Likewise.
	(*<s>muldi3_highpart_1): Likewise.
	(*<s>mulsi3_highpart_1): Likewise.
	(*<s>mulsi3_highpart_zext): Likewise.
	(x86_64_shld): Likewise.
	(x86_shld): Likewise.
	(x86_64_shrd): Likewise.
	(x86_shrd): Likewise.
	(sqrtxf2): Likewise.
	(sqrt_extend<mode>xf2_i387): Likewise.
	(*sqrt<mode>2_sse): Likewise.
	* gcc/config/i386/sse.md (sse_cvtsi2ss): Add "bdver1_decode" attribute.
	(sse_cvtsi2ssq): Likewise.
	(sse_cvtss2si): Likewise.
	(sse_cvtss2si_2): Likewise.
	(sse_cvtss2siq): Likewise.
	(sse_cvtss2siq_2): Likewise.
	(sse_cvttss2si): Likewise.
	(sse_cvttss2siq): Likewise.
	(sse2_cvtpi2pd): Likewise.
	(sse2_cvttpd2pi): Likewise.
	(sse2_cvtsi2sd): Likewise.
	(sse2_cvtsi2sdq): Likewise.
	(sse2_cvtsd2si): Likewise.
	(sse2_cvtsd2si_2): Likewise.
	(sse2_cvtsd2siq): Likewise.
	(sse2_cvtsd2siq_2): Likewise.
	(sse2_cvttsd2si): Likewise.
	(sse2_cvttsd2siq): Likewise.
	(*sse2_cvtpd2dq): Likewise.
	(*sse2_cvttpd2dq): Likewise.
	(sse2_cvtsd2ss): Likewise.
	(sse2_cvtss2sd): Likewise.
	(*sse2_cvtpd2ps): Likewise.
	(sse2_cvtps2pd): Likewise.

From-SVN: r165853
2010-10-22 19:07:52 +00:00
Richard Guenther
07db7d35a9 re PR tree-optimization/46137 (g++.dg/torture/pr45877.C FAILs with -fno-tree-dce)
2010-10-22  Richard Guenther  <rguenther@suse.de>

	PR middle-end/46137
	* gimple-fold.c (gimplify_and_update_call_from_tree): Properly
	remove the virtual operands if they are not needed.

	* c-c++-common/torture/pr46137.c: New testcase.

From-SVN: r165852
2010-10-22 19:03:39 +00:00
Changpeng Fang
d8c801fdbe Update processsor_costs table for bdver1
* gcc/config/i386/i386.c (processor_costs bdver1_cost): Update
	insn costs and architectural parameters for bdver1.

From-SVN: r165851
2010-10-22 18:48:33 +00:00
Jason Merrill
59dd34c408 re PR c++/46129 (ICE: in tsubst_copy, at cp/pt.c:11375)
PR c++/46129
	* pt.c (instantiate_class_template): Don't instantiate default
	arguments.

From-SVN: r165850
2010-10-22 14:37:53 -04:00
Jason Merrill
f91352dcc3 re PR c++/46103 ([c++0x] moving from std::array copies the elements)
PR c++/46103
	* init.c (build_vec_init): Handle memberwise move.

From-SVN: r165849
2010-10-22 14:37:41 -04:00
Richard Guenther
4490cae6cb gimple.h (gimple_register_canonical_type): Declare.
2010-10-22  Richard Guenther  <rguenther@suse.de>

	* gimple.h (gimple_register_canonical_type): Declare.
	* gimple.c (gimple_canonical_types): New global hashtable.
	(struct gimple_type_leader_entry_s): New type.
	(gimple_type_leader): New global cache.
	(gimple_lookup_type_leader): New function.
	(gtc_visit): Query the proper cache.
	(gimple_types_compatible_p): Likewise.
	(gimple_register_type): Use the new cache instead of TYPE_CANONICAL.
	(gimple_canonical_type_eq): New function.
	(gimple_register_canonical_type): Likewise.
	(print_gimple_types_stats): Adjust for gimple_canonical_types.
	(free_gimple_type_tables): Likewise.  Free gimple_type_leader.
	* tree-ssa.c (useless_type_conversion_p): Do not dispatch to
	gimple_types_compatible_p for LTO.

	lto/
	* lto.c (lto_fixup_type): Fixup TYPE_CANONICAL again, via
	the new gimple_register_canonical_type.

From-SVN: r165848
2010-10-22 17:50:19 +00:00
Uros Bizjak
5ab2c5cb69 re PR target/46098 (ICE: in extract_insn, at recog.c:2100 with -msse3 -ffloat-store and __builtin_ia32_loadupd())
PR target/46098
	* config/i386/sse.md (*avx_movu<ssemodesuffix><avxmodesuffix>):
	Rename from avx_movu<ssemodesuffix><avxmodesuffix>.
	(avx_movu<ssemodesuffix><avxmodesuffix>): New expander.
	(*<sse>_movu<ssemodesuffix>): Rename from <sse>_movu<ssemodesuffix>.
	(<sse>_movu<ssemodesuffix>): New expander.
	(*avx_movdqu<avxmodesuffix>): Rename from avx_movdqu<avxmodesuffix>.
	(avx_movdqu<avxmodesuffix>): New expander.
	(*sse2_movdqu): Rename from sse2_movdqu.
	(sse2_movdqu): New expander.

testsuite/ChangeLog:

	PR target/46098
	* gcc.target/i386/pr46098.c: New test.

From-SVN: r165845
2010-10-22 18:12:57 +02:00
Joseph Myers
4e8859d2ad * gcc.pot: Regenerate.
From-SVN: r165838
2010-10-22 16:30:08 +01:00
Joseph Myers
bf02e3269b * EXCLUDES: Add read-md.c.
From-SVN: r165837
2010-10-22 16:24:31 +01:00