Commit Graph

112470 Commits

Author SHA1 Message Date
Michael Meissner 04fe093aea Fix typo in my last change
From-SVN: r179998
2011-10-14 17:36:05 +00:00
Jakub Jelinek 2e2accf8ae sse.md (vec_interleave_high<mode>, [...]): Add AVX2 expanders for VI_256 modes.
* config/i386/sse.md (vec_interleave_high<mode>,
	vec_interleave_low<mode>): Add AVX2 expanders for VI_256
	modes.
	* config/i386/i386.c (expand_vec_perm_interleave3): New function.
	(ix86_expand_vec_perm_builtin_1): Call it.

From-SVN: r179995
2011-10-14 18:55:25 +02:00
Georg-Johann Lay a08147527b Fix thinko from r179765
Fix thinko from r179765
	* config/avr/avr.c (avr_option_override): Don't override
	flag_omit_frame_pointer if not actually needed.

From-SVN: r179994
2011-10-14 16:42:24 +00:00
Georg-Johann Lay e8ac5ac96a re PR target/46278 (avr-gcc 4.5.1 doing suboptimal reloads using X)
PR target/46278
	* doc/invoke.texi (AVR Options): Document -mstrict-X.
	* config/avr/avr.opt (-mstrict-X): New option.
	(avr_strict_X): New variable reflecting -mstrict-X.
	* config/avr/avr.c (avr_reg_ok_for_addr_p): Add parameter
	outer_code and pass it down to avr_regno_mode_code_ok_for_base_p.
	(avr_legitimate_address_p): Pass outer_code to
	avr_reg_ok_for_addr_p and use that function in case PLUS.
	(avr_mode_code_base_reg_class): Depend on avr_strict_X.
	(avr_regno_mode_code_ok_for_base_p): Ditto, and depend on outer_code.
	(avr_option_override): Disable -fcaller-saves if -mstrict-X is on.

From-SVN: r179993
2011-10-14 15:42:33 +00:00
Artjoms Sinkarovs 7d7a021160 Exclude 32-bit archs from warn-vect-op* tests.
From-SVN: r179991
2011-10-14 15:37:07 +00:00
Jakub Jelinek 267ff156d0 sse.md (neg<mode>2): Use VI_AVX2 iterator instead of VI_128.
* config/i386/sse.md (neg<mode>2): Use VI_AVX2 iterator instead
	of VI_128.

From-SVN: r179990
2011-10-14 17:28:39 +02:00
Arnaud Charlet b7539c3b93 [multiple changes]
2011-10-14  Ed Schonberg  <schonberg@adacore.com>

	* exp_disp.adb (Check_Premature_Freezing): If an untagged type
	is a generic actual, it is a subtype of a type that was frozen
	by the instantiation, and even if not marked frozen it does not
	affect the construction of the dispatch table.

2011-10-14  Robert Dewar  <dewar@adacore.com>

	* make.adb, mlib-utl.adb, sem_util.adb, sem_ch4.adb: Minor code
	reformatting.
	* s-rident.ads: Add missing Compiler_Unit pragma.

From-SVN: r179989
2011-10-14 17:12:32 +02:00
Tobias Burnus 85ff29389d re PR fortran/50718 (ICE (fold_convert) with -fcheck=pointer)
2011-10-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50718
        * trans-expr.c (gfc_conv_procedure_call): Fix -fcheck=pointer
        for dummy arguments with VALUE attribute.

2011-10-14  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50718
        * gfortran.dg/pointer_check_11.f90: New.
        * gfortran.dg/pointer_check_12.f90: New.

From-SVN: r179988
2011-10-14 17:09:21 +02:00
Jakub Jelinek 8c3532055a sse.md (mulv2di3): Macroize using VI8_AVX2 iterator.
* config/i386/sse.md (mulv2di3): Macroize using VI8_AVX2
	iterator.
	(ashl<mode>3): Use VI248_AVX2 iterator instead of VI248_128.
	Use <sseinsnmode> instead of TI in mode attr.

From-SVN: r179987
2011-10-14 17:05:55 +02:00
Arnaud Charlet af89615fea [multiple changes]
2011-10-14  Gary Dismukes  <dismukes@adacore.com>

	* sem_res.adb: Minor reformatting.

2011-10-14  Hristian Kirtchev  <kirtchev@adacore.com>

	* exp_ch6.adb (Add_Task_Actuals_To_Build_In_Place_Call):
	Code and comment reformatting. Use BIP_Task_Master
	when creating a _master.
	(BIP_Formal_Suffix): Code reformatting. Correct the case for
	BIP_Task_Master.
	(Make_Build_In_Place_Call_In_Object_Declaration): Use
	BIP_Task_Master when creating a reference to the enclosing
	function's _master formal.
	(Move_Activation_Chain): Use BIP_Task_Master when creating a reference
	to the _master.
	* exp_ch6.ads: Change BIP_Master to BIP_Task_Master.
	(Needs_BIP_Finalization_Master): Alphabetized.
	* sem_ch6.adb (Create_Extra_Formals): Update the usage of
	BIP_Task_Master.

2011-10-14  Ed Schonberg  <schonberg@adacore.com>

	* par-ch6.adb (P_Return_Object_Declaration): In Ada 2012 mode,
	reject an aliased keyword on the object declaration of an extended
	return statement. In older versions of the language indicate
	that this is illegal in the standard.

2011-10-14  Pascal Obry  <obry@adacore.com>

	* sem_util.adb, sem_ch4.adb: Minor reformatting.

2011-10-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_ch13.adb: Recognize properly procedure calls that are
	transformed into code statements.

2011-10-14  Vincent Celier  <celier@adacore.com>

	* projects.texi: Minor fix in project example.

From-SVN: r179986
2011-10-14 17:03:39 +02:00
Arnaud Charlet f2d10a021b [multiple changes]
2011-10-14  Ed Schonberg  <schonberg@adacore.com>

	* sem_util.adb: Return objects are aliased if their type is
	immutably limited as per AI05-0053.

2011-10-14  Gary Dismukes  <dismukes@adacore.com>

	* exp_ch4.adb (Expand_N_Op_And): Remove Short_Circuit_And_Or
	expansion code (moved to sem_res) (Expand_N_Op_Or): Remove
	Short_Circuit_And_Or expansion code (moved to sem_res).
	* sem_res.adb (Resolve_Logical_Op): Add code to rewrite Boolean
	"and" and "or" operators as short-circuit "and then" and "or
	else", when pragma Short_Circuit_And_Or is active.

From-SVN: r179985
2011-10-14 16:56:46 +02:00
Paolo Carlini 008d5fccd8 re PR c++/38174 (Missing some built-in candidates for operator overloading)
/cp
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/38174
	* call.c (add_builtin_candidate): If two pointers have a composite
	pointer type, generate a single candidate with that type.

/testsuite
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/38174
	* g++.dg/overload/operator4.C: New.

From-SVN: r179984
2011-10-14 14:43:03 +00:00
David Alan Gilbert e11a4c8086 di-longlong64-sync-1.c: New test.
gcc/testsuite/
2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>

	* gcc.dg/di-longlong64-sync-1.c: New test.
	* gcc.dg/di-sync-multithread.c: New test.
	* gcc.target/arm/di-longlong64-sync-withhelpers.c: New test.
	* gcc.target/arm/di-longlong64-sync-withldrexd.c: New test.
	* lib/target-supports.exp: (arm_arch_*_ok): Series of effective-target
	tests for v5, v6, v6k, and v7-a, and add-options helpers.
	(check_effective_target_arm_arm_ok): New helper.
	(check_effective_target_sync_longlong): New helper.

From-SVN: r179983
2011-10-14 14:39:32 +00:00
David Alan Gilbert 41aac0de5b linux-atomic-64bit.c: New (based on linux-atomic.c).
gcc/
2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>

	* config/arm/linux-atomic-64bit.c: New (based on linux-atomic.c).
	* config/arm/linux-atomic.c: Change comment to point to 64bit version.
	(SYNC_LOCK_RELEASE): Instantiate 64bit version.
	* config/arm/t-linux-eabi: Pull in linux-atomic-64bit.c.

From-SVN: r179982
2011-10-14 14:39:10 +00:00
David Alan Gilbert cfe527436c arm.c (arm_output_ldrex): Support ldrexd.
gcc/
2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>

	* config/arm/arm.c (arm_output_ldrex): Support ldrexd.
	(arm_output_strex): Support strexd.
	(arm_output_it): New helper to output it in Thumb2 mode only.
	(arm_output_sync_loop): Support DI mode.  Change comment to
	not support const_int.
	(arm_expand_sync): Support DI mode.
	* config/arm/arm.h (TARGET_HAVE_LDREXBHD): Split into LDREXBH
	and LDREXD.
	* config/arm/iterators.md (NARROW): move from sync.md.
	(QHSD): New iterator for all current ARM integer modes.
	(SIDI): New iterator for SI and DI modes only.
	* config/arm/sync.md (sync_predtab): New mode_attr.
	(sync_compare_and_swapsi): Fold into sync_compare_and_swap<mode>.
	(sync_lock_test_and_setsi): Fold into sync_lock_test_and_setsi<mode>.
	(sync_<sync_optab>si): Fold into sync_<sync_optab><mode>.
	(sync_nandsi): Fold into sync_nand<mode>.
	(sync_new_<sync_optab>si): Fold into sync_new_<sync_optab><mode>.
	(sync_new_nandsi): Fold into sync_new_nand<mode>.
	(sync_old_<sync_optab>si): Fold into sync_old_<sync_optab><mode>.
	(sync_old_nandsi): Fold into sync_old_nand<mode>.
	(sync_compare_and_swap<mode>): Support SI & DI.
	(sync_lock_test_and_set<mode>): Likewise.
	(sync_<sync_optab><mode>): Likewise.
	(sync_nand<mode>): Likewise.
	(sync_new_<sync_optab><mode>): Likewise.
	(sync_new_nand<mode>): Likewise.
	(sync_old_<sync_optab><mode>): Likewise.
	(sync_old_nand<mode>): Likewise.
	(arm_sync_compare_and_swapsi): Turn into iterator on SI & DI.
	(arm_sync_lock_test_and_setsi): Likewise.
	(arm_sync_new_<sync_optab>si): Likewise.
	(arm_sync_new_nandsi): Likewise.
	(arm_sync_old_<sync_optab>si): Likewise.
	(arm_sync_old_nandsi): Likewise.
	(arm_sync_compare_and_swap<mode> NARROW): use sync_predtab, fix indent.
	(arm_sync_lock_test_and_setsi<mode> NARROW): Likewise.
	(arm_sync_new_<sync_optab><mode> NARROW): Likewise.
	(arm_sync_new_nand<mode> NARROW): Likewise.
	(arm_sync_old_<sync_optab><mode> NARROW): Likewise.
	(arm_sync_old_nand<mode> NARROW): Likewise.

From-SVN: r179981
2011-10-14 14:38:58 +00:00
David Alan Gilbert 3e2a46fe39 re PR target/48126 (arm_output_sync_loop: misplaced memory barrier)
gcc/
2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>

	PR target/48126
	* config/arm/arm.c (arm_output_sync_loop): Move label before barrier.

From-SVN: r179980
2011-10-14 14:38:42 +00:00
David Alan Gilbert 80651d8e1c arm.h (TARGET_HAVE_DMB_MCR): MCR Not available in Thumb1.
gcc/
2011-10-14  David Alan Gilbert  <david.gilbert@linaro.org>

	* config/arm/arm.h (TARGET_HAVE_DMB_MCR): MCR Not available in Thumb1.

From-SVN: r179979
2011-10-14 14:38:30 +00:00
Paolo Carlini f5fb344bf9 invoke.texi ([Wformat-zero-length]): Tidy.
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	* doc/invoke.texi ([Wformat-zero-length]): Tidy.

From-SVN: r179978
2011-10-14 14:03:53 +00:00
Jakub Jelinek 9dd58aa41c gimple.c (walk_stmt_load_store_addr_ops): Call visit_addr also on COND_EXPR/VEC_COND_EXPR comparison operands if...
* gimple.c (walk_stmt_load_store_addr_ops): Call visit_addr
	also on COND_EXPR/VEC_COND_EXPR comparison operands if they are
	ADDR_EXPRs.

From-SVN: r179969
2011-10-14 14:05:43 +02:00
François Dumont 9918dc0f99 41975.cc: New.
2011-10-14  François Dumont  <francois.cppdevs@free.fr>

	* testsuite/performance/23_containers/insert_erase/41975.cc: New.

From-SVN: r179968
2011-10-14 11:25:27 +00:00
Richard Guenther f6e52e91bd re PR tree-optimization/50723 (internal compiler error: verify_ssa failed)
2011-10-14  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/50723
	* ipa-split.c (split_function): Use GSI_CONTINUE_LINKING.

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

From-SVN: r179967
2011-10-14 11:03:06 +00:00
Jonathan Wakely 5fabae4e53 50714.cc: Fix mychar.
2011-10-14  Jonathan Wakely  <jwakely.gcc@gmail.com>

	* testsuite/22_locale/codecvt_byname/50714.cc: Fix mychar.

From-SVN: r179966
2011-10-14 10:38:23 +00:00
Nicola Pero 3cc2dd4b7e In gcc/: 2011-10-14 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2011-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* gengtype.c (files_rules): Added rules for objc/objc-map.h and
	objc/objc-map.c.

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

	* objc-map.h: New file.
	* objc-map.c: New file.	
	* config-lang.in (gtfiles): Added objc-map.h.
	* Make-lang.in (OBJC_OBJS): Added objc-map.o.
	(objc/objc-map.o): New rule.
	(objc/objc-act.o): Depend on objc/objc-map.h.
	* objc-next-runtime-abi-02.c: Added a TODO comment.
	* objc-act.c: Include objc-map.h.
	(nst_method_hash_list, cls_method_hash_list): Removed.
	(instance_method_map, class_method_map): New.
	(cls_name_hash_list, als_name_hash_list): Removed.
	(class_name_map, alias_name_map): Removed.
	(ivar_offset_hash_list): Removed.
	(hash_class_name_enter, hash_class_name_lookup, hash_enter,
	hash_lookup, hash_add_attr, add_method_to_hash_list): Removed.
	(interface_hash_init): New.
	(objc_init): Call interface_hash_init.
	(objc_write_global_declarations): Iterate over class_method_map
	and instance_method_map instead of cls_method_hash_list and
	nst_method_hash_list.
	(objc_declare_alias): Use alias_name_map instead of
	cls_name_hash_list.
	(objc_is_class_name): Use class_name_map and alias_name_map
	instead of cls_name_hash_list and als_name_hash_list.
	(interface_tuple, interface_htab, hash_interface, eq_interface):
	Removed.
	(interface_map): New.
	(add_class): Renamed to add_interface.  Use interface_map instead
	of interface_htab.
	(lookup_interface): Use interface_map instead of interface_htab.
	(check_duplicates): Changed first argument to be a tree,
	potentially a TREE_VEC, instead of a hash.  Changed implementation
	to match.
	(lookup_method_in_hash_lists): Use class_method_map and
	instance_method_map instead of cls_method_hash_list and
	nst_method_hash_list.
	(objc_build_selector_expr): Likewise.
	(hash_func): Removed.
	(hash_init): Create instance_method_map, class_method_map,
	class_name_map, and alias_name_map.  Do not create
	nst_method_hash_list, cls_method_hash_list, cls_name_hash_list,
	als_name_hash_list, and ivar_offset_hash_list.
	(insert_method_into_method_map): New.
	(objc_add_method): Use insert_method_into_method_map instead of
	add_method_to_hash_list.
	(start_class): Call add_interface instead of add_class.
	* objc-act.h (cls_name_hash_list, als_name_hash_list,
	nst_method_hash_list, cls_method_hash_list): Removed.

In gcc/objcp/:
2011-10-14  Nicola Pero  <nicola.pero@meta-innovation.com>

	* Make-lang.in (OBJCXX_OBJS): Added objc-map.o.
	(objcp/objc-map.o): New rule.
	(objcp/objcp-act.o): Depend on objc/objc-map.h.
	* config-lang.in (gtfiles): Added objc-map.h.

From-SVN: r179965
2011-10-14 10:19:01 +00:00
Paolo Carlini 5e678de8ba re PR c++/17212 (-W(no)format-zero-length does not work with C++)
/gcc
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/17212
	* c-family/c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
	* doc/invoke.texi: Update.

/testsuite
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/17212
	* g++.dg/warn/format6.C: New.
	* obj-c++.dg/warn6.mm: Likewise.

From-SVN: r179964
2011-10-14 09:14:58 +00:00
Paolo Carlini 4fbbcd7fa9 re PR c++/17212 (-W(no)format-zero-length does not work with C++)
/gcc
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/17212
	* c-family/c.opt ([Wformat-zero-length]): Add C++ and Objective-C++.
	* doc/invoke.texi: Update.

/testsuite
2011-10-14  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/17212
	* g++.dg/warn/format6.C: New.
	* obj-c++.dg/warn6.mm: Likewise.

From-SVN: r179963
2011-10-14 09:14:26 +00:00
Iain Sandoe 80f8fdf10b re PR bootstrap/50699 (Bootstrap fails on *-apple-darwin* due to revision 179820)
gcc:

	PR bootstrap/50699
	* config/darwin.c (darwin_patch_builtin): Adjust argument type. Only
	build for powerpc targets.  (darwin_patch_builtins): Only build for 
	powerpc targets.

From-SVN: r179962
2011-10-14 08:13:04 +00:00
Jonathan Yong d7a3ef9794 configure.host: Use config/os/mingw32-w64 instead of config/os/mingw32 if vendor key is "w64".
2011-10-14  Jonathan Yong  <jon_y@users.sourceforge.net>

	* configure.host: Use config/os/mingw32-w64 instead of
	config/os/mingw32 if vendor key is "w64".
	* config/os/mingw32-w64: Duplicate from config/os/mingw32.
	* config/os/mingw32-w64/os_defines.h: Enable
	_GLIBCXX_FULLY_DYNAMIC_STRING if undefined.
	* acinclude.m4: Set fully-dynamic-string to 1 when enabled,
	0 when disabled or undefined if unset by user.
	* include/bits/basic_string.h: Check if
	_GLIBCXX_FULLY_DYNAMIC_STRING is set to 0 instead of undefined.
	include/bits/basic_string.tcc: Likewise.
	* configure: Regenerated.
	* config.h.in: Likewise.

From-SVN: r179961
2011-10-14 08:57:55 +02:00
Jakub Jelinek 4fbe3b8a2b sse.md (*avx_cvtdq2pd256_2): Rename to...
* config/i386/sse.md (*avx_cvtdq2pd256_2): Rename to...
	(avx_cvtdq2pd256_2): ... this.
	(sseunpackfltmode): New mode attr.
	(vec_unpacks_float_hi_v8hi, vec_unpacks_float_lo_v8hi,
	vec_unpacku_float_hi_v8hi, vec_unpacku_float_lo_v8hi): Macroize
	using VI2_AVX2 iterator.
	(vec_unpacku_float_hi_v8si, vec_unpacku_float_lo_v8si): New
	expanders.

From-SVN: r179960
2011-10-14 08:06:14 +02:00
David S. Miller 8e24e4091c Merge sparc plus/minus vector operations using a code iterator.
* config/sparc/sparc.md (plusminus): New code iterator.
	(plusminus_insn): New code attr.
	(addv2si3, subv2si3, addv4hi3, subv4hi3, addv2hi3, subv2hi3): Merge
	using plusminus and plusminus_insn.
	(fpadd64_vis, fpsub64_vis): Likewise.

From-SVN: r179959
2011-10-13 20:48:06 -07:00
Richard Henderson d7943c8b14 Expand vector permutation with vec_perm and vec_perm_const.
From-SVN: r179958
2011-10-13 20:31:23 -07:00
Richard Henderson 5066ab2ee8 rs6000: Fix typo in rs6000_expand_vector_init
Of course we don't support vectors of size <= 4.
We're supposed to be checking the vector element size.

From-SVN: r179957
2011-10-13 20:27:01 -07:00
Richard Henderson bdc3ee5d57 Move lowering of vector shifts from v/s to v/v from gimple to rtl.
This allows other rtl expanders to rely on shifts of vector by scalar.

From-SVN: r179956
2011-10-13 20:25:58 -07:00
Richard Henderson 0772d476ef i386: Implement vec_perm_const<mode>.
From-SVN: r179955
2011-10-13 20:20:37 -07:00
Richard Henderson f6293442ba spu: Implement vec_permv16qi.
From-SVN: r179954
2011-10-13 20:18:14 -07:00
Richard Henderson cba8644414 rs6000: Implement vec_permv16qi.
From-SVN: r179953
2011-10-13 20:17:16 -07:00
GCC Administrator 6fa642dfdd Daily bump.
From-SVN: r179952
2011-10-14 00:18:38 +00:00
Paolo Carlini b78eebe4f5 re PR libstdc++/50714 (codecvt_byname::codecvt::_M_c_locale_codecvt not initialized by destroyed)
2011-10-13  Paolo Carlini  <paolo.carlini@oracle.com>

	PR libstdc++/50714
	* include/bits/codecvt.h (codecvt<>::codecvt(size_t)): Initialize
	_M_c_locale_codecvt member.
	* testsuite/22_locale/codecvt_byname/50714.cc: New.

From-SVN: r179948
2011-10-14 00:12:40 +00:00
Jason Merrill 2598165f09 re PR c++/50614 ([C++0x] ICE: tree check: expected field_decl, have identifier_node in component_ref_field_offset, at expr.c:6697 with -fcompare-debug and a non-static initializer)
PR c++/50614
	* cp-tree.h (VAR_TEMPL_TYPE_FIELD_OR_FUNCTION_DECL_CHECK): New.
	(DECL_TEMPLATE_INFO): Use it.
	* pt.c (tsubst_decl) [FIELD_DECL]: Set DECL_TEMPLATE_INFO
	if the decl has an NSDMI.
	* init.c (perform_member_init): Use it.

From-SVN: r179945
2011-10-13 17:23:47 -04:00
Jason Merrill 0e81aa8529 re PR c++/50437 ([C++0x] [4.7 regression] ICE for trivial use of lambda in template function)
PR c++/50437
	* cp-tree.h (struct tree_lambda_expr): Add closure field.
	(LAMBDA_EXPR_CLOSURE): New.
	* pt.c (tsubst_copy_and_build) [LAMBDA_EXPR]: Likewise.
	* semantics.c (build_lambda_object): Use it instead of TREE_TYPE.
	(begin_lambda_type, lambda_function, add_capture): Likewise.
	(add_default_capture, lambda_expr_this_capture): Likewise.

From-SVN: r179944
2011-10-13 17:23:36 -04:00
David S. Miller f1c141a7da Fix the RTL of some sparc VIS patterns.
* config/sparc/sparc.md (UNSPEC_FPMERGE): Delete.
	(UNSPEC_MUL16AU, UNSPEC_MUL8, UNSPEC_MUL8SU, UNSPEC_MULDSU): New
	unspecs.
	(fpmerge_vis): Remove inaccurate comment, represent using vec_select
	of a vec_concat.
	(vec_interleave_lowv8qi, vec_interleave_highv8qi): New insns.
	(fmul8x16_vis, fmul8x16au_vis, fmul8sux16_vis, fmuld8sux16_vis):
	Reimplement as unspecs and remove inaccurate comments.
	(vis3_shift_patname): New code attr.
	(<vis3_shift_insn><vbits>_vis): Rename to "v<vis3_shift_patname><mode>3".
	(vis3_addsub_ss_patname): New code attr.
	(<vis3_addsub_ss_insn><vbits>_vis): Rename to
	"<vis3_addsub_ss_patname><mode>3".
	* config/sparc/sparc.c (sparc_vis_init_builtins): Update to
	accommodate pattern name changes.

From-SVN: r179943
2011-10-13 14:15:44 -07:00
Diego Novillo ce5046bd71 cp-tree.h (struct language_function): Rename in_function_try_handler to x_in_function_try_handler.
* cp-tree.h (struct language_function): Rename in_function_try_handler
	to x_in_function_try_handler.
	Rename in_base_initializer to x_in_base_initializer.
	Update all users.

From-SVN: r179940
2011-10-13 14:26:08 -04:00
Diego Novillo 385b73ab1d class.c (sorted_fields_type_new): Factor out of ...
* class.c (sorted_fields_type_new): Factor out of ...
	(finish_struct_1): ... here.

From-SVN: r179939
2011-10-13 14:25:10 -04:00
Jason Merrill 1fb0b80148 re PR c++/50618 (Virtual inheritance segfault)
PR c++/50618
	* init.c (expand_aggr_init_1): Don't zero-initialize virtual
	bases of a base subobject.

From-SVN: r179934
2011-10-13 14:01:51 -04:00
Jakub Jelinek 40746f4023 sse.md (vec_set<mode>): Change V_128 iterator mode to V.
* config/i386/sse.md (vec_set<mode>): Change V_128 iterator mode
	to V.

From-SVN: r179931
2011-10-13 18:26:48 +02:00
Jakub Jelinek 9a6b63c3d5 tree-ssa.c (maybe_optimize_var): Drop TREE_ADDRESSABLE from vector or complex vars even if...
* tree-ssa.c (maybe_optimize_var): Drop TREE_ADDRESSABLE
	from vector or complex vars even if their DECL_UID is in not_reg_needs
	bitmap.

Co-Authored-By: Richard Guenther <rguenther@suse.de>

From-SVN: r179930
2011-10-13 18:09:12 +02:00
Jakub Jelinek a520f3c39d sse.md (reduc_umin_v8hi): New pattern.
* config/i386/sse.md (reduc_umin_v8hi): New pattern.
	* config/i386/i386.c (ix86_build_const_vector): Handle
	also V32QI, V16QI, V16HI and V8HI modes.
	(emit_reduc_half): New function.
	(ix86_expand_reduc): Use phminposuw insn for V8HImode UMIN.
	Use emit_reduc_half helper function.

	* gcc.target/i386/sse4_1-phminposuw-2.c: New test.
	* gcc.target/i386/sse4_1-phminposuw-3.c: New test.
	* gcc.target/i386/avx-vphminposuw-2.c: New test.
	* gcc.target/i386/avx-vphminposuw-3.c: New test.

From-SVN: r179929
2011-10-13 18:08:04 +02:00
Lawrence Crowl 35f5b1c1b9 lto-streamer-in.c (input_struct_function_base): Factor out of ...
2011-10-12   Lawrence Crowl  <crowl@google.com>
	     Diego Novillo  <dnovillo@google.com>

	* lto-streamer-in.c (input_struct_function_base): Factor out of ...
	(input_function): ... here.
	* lto-streamer-out.c (output_struct_function_base): Factor out of ...
	(output_function): ... here.

Co-Authored-By: Diego Novillo <dnovillo@google.com>

From-SVN: r179928
2011-10-13 11:41:52 -04:00
Gabriel Charette a22286c349 streamer-hooks.h (struct streamer_hooks): Add hooks input_location and output_location.
2011-10-12  Gabriel Charette  <gchare@google.com>
	    Diego Novillo  <dnovillo@google.com>

	* streamer-hooks.h (struct streamer_hooks): Add hooks
	input_location and output_location.
	* lto-streamer-in.c (lto_input_location): Use
	streamer_hooks.input_location, if set.
	* lto-streamer-out.c (lto_output_location): Use
	streamer_hooks.output_location, if set.

Co-Authored-By: Diego Novillo <dnovillo@google.com>

From-SVN: r179927
2011-10-13 11:40:29 -04:00
H.J. Lu d8228b3034 Check ia32 instead of ilp32.
2011-10-13  H.J. Lu  <hongjiu.lu@intel.com>

	* gcc.target/i386/pr50712.c: Check ia32 instead of ilp32.

From-SVN: r179926
2011-10-13 08:39:27 -07:00
Eric Botcazou c49c4c850a invoke.texi (SPARC options): Document -mfix-at697f.
* doc/invoke.texi (SPARC options): Document -mfix-at697f.
	* config/sparc/sparc.opt (mfix-at697f): New option.
	* config/sparc/sparc.c (TARGET_MACHINE_DEPENDENT_REORG): Define.
	(sparc_reorg): New function.

From-SVN: r179921
2011-10-13 12:59:34 +00:00