Commit Graph

104958 Commits

Author SHA1 Message Date
Nicola Pero
2dd24dbdfe In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-27  Nicola Pero  <nicola.pero@meta-innovation.com>

        Implemented optional properties.
        * objc-act.h (PROPERTY_OPTIONAL): New.
        * objc-act.c (objc_add_property_declaration): Set
        PROPERTY_OPTIONAL if appropriate.
        (finish_class): When generating definitions of setter and getter
        methods associated with a property for a protocol, mark them as
        optional if the property is optional.
        (maybe_make_artificial_property_decl): Added 'getter_name'
        argument.  Set PROPERTY_OPTIONAL.
        (objc_maybe_build_component_ref): Updated calls to
        maybe_make_artificial_property_decl.  Added code for optional,
        readonly properties.
        (objc_build_class_component_ref): Updated call to
        maybe_make_artificial_property_decl.

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

        * objc.dg/property/at-property-24.m: New.
        * objc.dg/property/at-property-25.m: New.
        * obj-c++.dg/property/at-property-24.mm: New.
        * obj-c++.dg/property/at-property-25.mm: New.

From-SVN: r167197
2010-11-27 10:06:59 +00:00
François Dumont
c5589aa7e1 bitset (bitset<>::reference): Clean code, use normal reference type in experimental mode.
2010-11-27  François Dumont  <francois.cppdevs@free.fr>

        * include/debug/bitset (bitset<>::reference): Clean code, use normal 
        reference type in experimental mode.
        * testsuite/23_containers/bitset/debug/invalid/1.cc: Fix for
        experimental mode.

From-SVN: r167196
2010-11-27 10:04:19 +00:00
Nicola Pero
a693d3a8f5 In gcc/objc/: 2010-11-27 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-27  Nicola Pero  <nicola.pero@meta-innovation.com>

        * objc-act.c (objc_build_struct): Fixed loops that save and
        restore TYPE_OBJC_INFO to iterate over all variants of the type; a
        special case for the current type is then no longer required.
        Duplicate TYPE_LANG_SPECIFIC for each type before restoring
        TYPE_OBJC_INFO.
        (objc_get_protocol_qualified_type): Updated comments.

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

        * objc.dg/protocol-qualifier-1.m: New.
        * objc.dg/protocol-qualifier-2.m: New.
        * obj-c++.dg/protocol-qualifier-1.mm: New.
        * obj-c++.dg/protocol-qualifier-2.mm: New.

From-SVN: r167195
2010-11-27 09:53:43 +00:00
GCC Administrator
a5c7ea1d62 Daily bump.
From-SVN: r167194
2010-11-27 00:19:51 +00:00
Joseph Myers
e6d4b9841c options.texi (Enum, EnumValue): Document new record types.
* doc/options.texi (Enum, EnumValue): Document new record types.
	(Enum): Document new option flag.
	* opt-functions.awk
	* optc-gen.awk: Handle enumerated option arguments.
	* opth-gen.awk: Handle enumerated option arguments.
	* opts-common.c (enum_arg_ok_for_language, enum_arg_to_value,
	enum_value_to_arg): New.
	(decode_cmdline_option): Handle enumerated arguments.
	(read_cmdline_option): Handle CL_ERR_ENUM_ARG.
	(set_option, option_enabled, get_option_state): Handle CLVC_ENUM.
	* opts.c (print_filtered_help, print_specific_help): Take
	lang_mask arguments.
	(print_filtered_help): Handle printing values of enumerated
	options.  Print possible arguments for enumerated options.
	(print_specific_help): Update call to print_filtered_help.
	(common_handle_option): Update calls to print_specific_help.  Use
	value rather than arg for OPT_fdiagnostics_show_location_.  Don't
	handle OPT_ffp_contract_, OPT_fexcess_precision_,
	OPT_fvisibility_, OPT_ftls_model_, OPT_fira_algorithm_ or
	OPT_fira_region_ here.
	* opts.h (enum cl_var_type): Add CLVC_ENUM.
	(struct cl_option): Add var_enum.
	(CL_ENUM_CANONICAL, CL_ENUM_DRIVER_ONLY, struct cl_enum_arg,
	struct cl_enum, cl_enums, cl_enums_count): New.
	(CL_ERR_ENUM_ARG): Define.
	(CL_ERR_NEGATIVE): Update value.
	(enum_value_to_arg): Declare.
	* common.opt (flag_ira_algorithm, flag_ira_region,
	flag_fp_contract_mode, flag_excess_precision_cmdline,
	default_visibility, flag_tls_default): Remove Variable entries.
	(help_enum_printed): New Variable.
	(fdiagnostics-show-location=): Use Enum.  Add associated
	SourceInclude, Enum and EnumValue entries.
	(fexcess-precision=, ffp-contract=, fira-algorithm=, fira-region=,
	ftls-model=, fvisibility=): Use Enum, Var and Init.  Add
	associated Enum and EnumValue entries.

po:
	* exgettext: Handle UnknownError.

From-SVN: r167190
2010-11-26 23:18:28 +00:00
Paolo Carlini
8a1ffe230e 2010-11-27 Paolo Carlini <paolo.carlini@oracle.com>
* Tweak last ChangeLog entry.

From-SVN: r167189
2010-11-26 23:03:36 +00:00
François Dumont
bcd93c00ab libstdc++.exp [...]: Use remote_file delete for generated exe.
2010-11-26  François Dumont  <francois.cppdevs@free.fr>

        * testsuite/lib/libstdc++.exp [check_v3_target_debug_mode]: Use
        remote_file delete for generated exe. [check_v3_target_profile_mode]
        Add.
        * testsuite/lib/dg-options.exp [dg-require-profile-mode]: Add
        * testsuite/ext/profile/mh.cc, profiler_algos.cc, all.cc: Use
        dg-require-profile-mode, remove explicit _GLIBCXX_PROFILE definition.

From-SVN: r167188
2010-11-26 20:29:01 +00:00
Joern Rennecke
556618c1b3 re PR target/46623 (microblaze --enable-werror-always build fails)
PR target/46623
	* config/microblaze/microblaze.c (microblaze_block_move_straight):
	Use XALLOCAVEC.
	(microblaze_option_override): Don't use C++ style comments.
	(save_restore_insns): Remove unused variable base_offset.
	(microblaze_expand_prologue): Remove unused variable insn.
	(microblaze_secondary_reload): Adjust type to match target.h .
	(microblaze_elf_in_small_data_p): Move declarations to start of block.
	(microblaze_expand_move): Likewise.
	* config/microblaze/microblaze.h (LARGE_INT):
	Avoid signed / unsigned comparisons.
	(ASM_OUTPUT_ALIGNED_COMMON, ASM_OUTPUT_ALIGNED_LOCAL): Likewise.
	(ASM_FORMAT_PRIVATE_NAME): Make format specifier match printed data.
	(ASM_FINISH_DECLARE_OBJECT): Likewise.  Constify name.

From-SVN: r167186
2010-11-26 17:38:20 +00:00
Rainer Orth
3ffcc54f1d gnat.exp: Load gcc.exp.
* lib/gnat.exp: Load gcc.exp.
	(gnat_target_compile): Use gcc_target_compile for *.c sources.
	* gnat.dg/sse_nolib.adb: Use dg-require-effective-target sse_runtime.

From-SVN: r167185
2010-11-26 17:36:42 +00:00
Michael Matz
f7882debb8 tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.
* tree-ssa-copy.c (fini_copy_prop): Don't DCE when we have loops.

	* passes.c (init_optimization_passes): Remove superfluous
	copy-prop pass.

From-SVN: r167184
2010-11-26 16:51:39 +00:00
Richard Guenther
67701d1ddc re PR lto/46648 (type mismatch in array reference; verify_stmts failed)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR lto/46648
	* gimple.c (gtc_visit): Do not return true for members of an
	SCC still being processed but the current lattice value of
	the member.  Treat SCC members comparison state as lattice,
	starting at equal, eventually dropping to unequal.
	(gimple_types_compatible_p_1): Likewise.

	* gcc.dg/lto/20101125-1_0.c: New testcase.
	* gcc.dg/lto/20101125-1_1.c: Likewise.

From-SVN: r167183
2010-11-26 16:12:49 +00:00
Bud Davis
a50c005fea arith_divide_no_check.f [...]: new tests.
2010-11-22   Bud Davis  <jmdavis@link.com>
	* arith_divide_no_check.f ,arith_divide.f,old_style_init.f90: new
	tests.

From-SVN: r167182
2010-11-26 16:11:14 +00:00
Richard Guenther
ec0810c181 re PR middle-end/46559 (libstdc++ link FAILs with -flto)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR middle-end/46559
	* dwarf2out.c (dwarf2out_finish): Use comp_unit_die as root
	for location list processing.

From-SVN: r167181
2010-11-26 16:01:26 +00:00
H.J. Lu
1e7965d89e Add a testcase for PR tree-optimization/46665.
2010-11-26  H.J. Lu  <hongjiu.lu@intel.com>

	PR tree-optimization/46665
	* gfortran.dg/pr46665.f90: New.

From-SVN: r167179
2010-11-26 07:14:20 -08:00
Richard Guenther
41c8e948dd re PR tree-optimization/46560 (libstdc++ execute FAILs with -flto)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR lto/46560
	* cgraph.c (cgraph_clone_edge): Clone call_stmt dependent
	flags manually.

From-SVN: r167178
2010-11-26 14:39:25 +00:00
Andreas Krebbel
8395b41e9e s390.c (print_operand_address): Replace assert with error message.
2010-11-26  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

	* config/s390/s390.c (print_operand_address): Replace assert with
	error message.
	(print_operand): Replace assertions, gcc_unreachable and
	fatal_insn with error messages.

From-SVN: r167177
2010-11-26 14:07:16 +00:00
Richard Guenther
1b2bb17149 re PR rtl-optimization/46665 (two gfortran tests fail with -O[2s] -fipa-pta -fno-tree-ccp -fno-tree-forwprop)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/46665
	* tree-ssa-structalias.c (pt_solution_set_var): Use DECL_PT_UID.

From-SVN: r167176
2010-11-26 14:04:50 +00:00
Ian Bolton
911de8a341 arm.c (arm_option_override): enable loop array prefetching at -O3 for suitable targets, and configure params.
2010-11-26  Ian Bolton  <ian.bolton@arm.com>

	* config/arm/arm.c (arm_option_override): enable loop array
	prefetching at -O3 for suitable targets, and configure params.
	* config/arm/arm-protos.h (struct tune_params): Add fields for
	configuring loop array prefetching.

From-SVN: r167175
2010-11-26 13:21:32 +00:00
Christian Borntraeger
4d00efb6f4 2817.md (z196_crack): Add z196_g3 as possible slot.
2010-11-26  Christian Borntraeger  <borntraeger@de.ibm.com>

	* config/s390/2817.md (z196_crack): Add z196_g3 as possible slot.

From-SVN: r167174
2010-11-26 13:16:28 +00:00
Richard Guenther
6df588cbd1 re PR lto/46664 (Failed to build 481.wrf in SPEC CPU 2006 with LTO)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/46664
	* tree-affine.c (aff_combination_to_tree): Add rest last.

From-SVN: r167173
2010-11-26 12:42:41 +00:00
Michael Haubenwallner
4a150fc83a re PR target/33637 ("checking for nm: test: too many arguments" causes "Undefined symbol: __gxx_personality_v0")
PR target/33637
	* configure.ac: Accept extra arguments for AS_FOR_TARGET,
	LD_FOR_TARGET, NM_FOR_TARGET, OBJDUMP_FOR_TARGET.
	* configure: Regenerated.
	* exec-tool.in: Not quoting command, may have extra arguments.

From-SVN: r167172
2010-11-26 10:53:24 +01:00
Richard Guenther
e99f078847 re PR bootstrap/46528 (profiledbootstrap failure)
2010-11-26  Richard Guenther  <rguenther@suse.de>

	PR tree-optimization/46528
	PR debug/46338
	* profile.c (branch_prob): Do not split blocks based on locations
	from debug statements.

From-SVN: r167171
2010-11-26 09:49:47 +00:00
Jakub Jelinek
f1b6918835 re PR middle-end/46647 (Can't inline memset with -1)
PR middle-end/46647
	* builtins.c (fold_builtin_memset): Check c is INTEGER_CST instead
	of host_integerp check.  Use TREE_INT_CST_LOW instead of tree_low_cst.

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

From-SVN: r167170
2010-11-26 10:38:54 +01:00
Jakub Jelinek
fabd13b4a9 re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)
PR bootstrap/45700
	* tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
	build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines.
	(build1_loc, build2_loc, build3_loc, build4_loc, build5_loc,
	build6_loc): Define.
	* fold-const.c (protected_set_expr_location_unshare): New inline.
	(fold_convert_loc, pedantic_non_lvalue_loc): Use it.
	(negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc,
	pedantic_omit_one_operand_loc, omit_two_operands_loc,
	fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref,
	optimize_bit_field_compare, make_range, fold_range_test, fold_truthop,
	build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc,
	fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc
	instead of buildN followed by SET_EXPR_LOCATION or
	protected_set_expr_location.
	(fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc):
	Use buildN_stat_loc instead of buildN_stat followed by
	SET_EXPR_LOCATION.

	* trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
	build4_stat_loc): Removed.
	(build1_loc, build2_loc, build3_loc, build4_loc): Removed.

From-SVN: r167169
2010-11-26 10:36:29 +01:00
Jakub Jelinek
c9019218a1 re PR bootstrap/45700 (--enable-checking=fold bootstrap failures)
PR bootstrap/45700
	* tree.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
	build4_stat_loc, build5_stat_loc, build6_stat_loc): New inlines.
	(build1_loc, build2_loc, build3_loc, build4_loc, build5_loc,
	build6_loc): Define.
	* fold-const.c (protected_set_expr_location_unshare): New inline.
	(fold_convert_loc, pedantic_non_lvalue_loc): Use it.
	(negate_expr, associate_trees, non_lvalue_loc, omit_one_operand_loc,
	pedantic_omit_one_operand_loc, omit_two_operands_loc,
	fold_truth_not_expr, invert_truthvalue_loc, make_bit_field_ref,
	optimize_bit_field_compare, make_range, fold_range_test, fold_truthop,
	build_fold_addr_expr_with_type_loc, fold_unary_loc, fold_binary_loc,
	fold_indirect_ref_1, build_fold_indirect_ref_loc): Use builN_loc
	instead of buildN followed by SET_EXPR_LOCATION or
	protected_set_expr_location.
	(fold_build1_stat_loc, fold_build2_stat_loc, fold_build3_stat_loc):
	Use buildN_stat_loc instead of buildN_stat followed by
	SET_EXPR_LOCATION.

	* trans.h (build1_stat_loc, build2_stat_loc, build3_stat_loc,
	build4_stat_loc): Removed.
	(build1_loc, build2_loc, build3_loc, build4_loc): Removed.

From-SVN: r167168
2010-11-26 10:35:35 +01:00
Basile Starynkevitch
93b39277c5 Makefile.in (s-tm-texi): Remove spurous tab.
2010-11-26  Basile Starynkevitch  <basile@starynkevitch.net>

	* Makefile.in (s-tm-texi): Remove spurous tab.

From-SVN: r167167
2010-11-26 07:14:15 +00:00
Alexandre Oliva
4314b5fcf8 re PR debug/46258 (gcc.dg/tree-ssa/pr23820.c: -fcompare-debug failure with -O3 -ffloat-store)
PR debug/46258
* tree-cfg.c (replace_uses_by): Don't mark BBs as altered on
debug stmts.

From-SVN: r167162
2010-11-26 04:27:24 +00:00
Alexandre Oliva
5715dafb8a toplev.c (finalize): Add no_backend parameter.
* toplev.c (finalize): Add no_backend parameter.  Don't finish
passes when preprocessing only.  Adjust...
(do_compile): ... caller.

From-SVN: r167161
2010-11-26 04:27:04 +00:00
Alexandre Oliva
9aff220f24 re PR fortran/46020 (Improve error string for BIND(C) diagnostic for len>1 character return type)
PR other/46020
* configure.ac (CXX_FOR_TARGET): Add -funconfigured-libstdc++-v3.
* Makefile.def (CXX_FOR_TARGET): Removed from flags_to_pass.
* Makefile.tpl (CXX_FOR_TARGET_FLAG_TO_PASS): New.
(BASE_FLAGS_TO_PASS): Use it.
* configure: Rebuilt.
* Makefile.in: Rebuilt.

From-SVN: r167160
2010-11-26 04:25:32 +00:00
John David Anglin
54e07cf808 pa.md (negdf2): Condition on !flag_signed_zeros instead of flag_unsafe_math_optimizations.
* config/pa/pa.md (negdf2): Condition on !flag_signed_zeros instead of
	flag_unsafe_math_optimizations.
	(negsf2): Likewise.
	Move fnegabs related patterns together.  Only use fmpynfadd instruction
	to negate a multiply if !flag_signed_zeros is true.

From-SVN: r167159
2010-11-26 04:09:25 +00:00
GCC Administrator
964db68a6f Daily bump.
From-SVN: r167158
2010-11-26 00:20:18 +00:00
Janus Weil
6312ef4519 re PR fortran/46581 ([OOP] segfault in SELECT TYPE with associate-name)
2010-11-25  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/46581
	* trans.h (gfc_process_block_locals): Removed second argument.
	* trans-decl.c (trans_associate_var): Moved to trans-stmt.c.
	(gfc_trans_deferred_vars): Skip ASSOCIATE variables.
	(gfc_process_block_locals): Don't mark associate names to be
	initialized.
	* trans-stmt.c (trans_associate_var): Moved here from trans-decl.c.
	(gfc_trans_block_construct): Call 'trans_associate_var' from here
	to make sure SELECT TYPE with associate-name is treated correctly.

2010-11-25  Janus Weil  <janus@gcc.gnu.org>

	PR fortran/46581
	* gfortran.dg/select_type_19.f03: New.

From-SVN: r167154
2010-11-25 23:04:59 +01:00
Uros Bizjak
be82759165 gengtype-state.c (read_state_structures): Initialize "previous".
* gengtype-state.c (read_state_structures): Initialize "previous".

From-SVN: r167153
2010-11-25 22:50:53 +01:00
François Dumont
afe96d415d debug.cc: Introduce a mutex pool in get_safe_base_mutex.
2010-11-25  François Dumont  <francois.cppdevs@free.fr>

	* src/debug.cc: Introduce a mutex pool in get_safe_base_mutex.
	Move code used to manipulate sequence safe iterators from safe
	iterator methods to safe sequence ones. Remove usage of safe iterator
	mutex, keep _Safe_iterator_base::_M_get_mutex for library backward
	binary compatibility.
	* src/Makefile.am: Build debug.cc in gnu++0x mode for _Hash_impl usage.
	* src/Makefile.in: Regenerate
	* include/debug/safe_base.h: Add _Safe_iterator_base _M_invalidate
	and _M_reset. Add _Safe_sequence_base _M_attach, _M_attach_single,
	_M_detach and _M_detach_single.
	* include/debug.safe_iterator.h, safe_iterator.tcc: Remove
	_Safe_iterator _M_invalidate and _M_invalidate_single. Implement all
	methods in terms of normal iterators rather than safe ones.
	* include/debug/safe_sequence.h: Replace _Safe_sequence
	_M_transfe_iter with _M_transfer_from_if taking the source sequence
	and a predicate signaling when a safe iterator shall be transfered.
	Add _Equal_to predicate.
	* include/debug/safe_sequence.tcc: New.
	* include/Makefile.am: Adjust.
	* include/Makefile.in: Regenerate.
	* include/debug/forward_list: Swap safe iterators in move constructor.
	Do not invalidate before begin in _M_invalidate_all method.
	Reimplement safe methods using normal iterators rather than safe ones.
	* include/debug/set.h, unordered_map, multiset.h, vector,
	unordered_set, deque, map.h, list, multimap.h: Reimplement safe method
	using normal iterators rather than safe ones.
	* testsuite/23_containers/forward_list/debug/clear.cc, swap.cc,
	move_constructor.cc, splice_after.cc, splice_after1.cc,
	splice_after2.cc, splice_after3.cc, splice_after4.cc: New.
	* testsuite/23_containers/vector/debug/multithreaded_swap.cc: New.

From-SVN: r167152
2010-11-25 20:53:39 +00:00
Nicola Pero
24e1ee3219 In gcc/objc/: 2010-11-25 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/objc/:
2010-11-25  Nicola Pero  <nicola.pero@meta-innovation.com>

	* objc-act.c (objc_build_struct): Install TYPE_OBJC_INTERFACE
	after finish_struct, not before, otherwise it may be wiped out by
	it.  This fixes spurious warnings when a class has more than 15
	instance variables.

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

	* objc.dg/ivar-problem-1.m: New.
	* obj-c++.dg/ivar-problem-1.mm: New.

From-SVN: r167151
2010-11-25 19:50:13 +00:00
Basile Starynkevitch
92724e1d70 gentype-state.c: Add new file.
2010-11-25  Basile Starynkevitch  <basile@starynkevitch.net>
	    Jeremie Salvucci  <jeremie.salvucci@free.fr>

	* gentype-state.c: Add new file.

	* gengtype.c (type count): New variable.
	(new_structure, find_param_structure, create_pointer)
	(create_array): Use it to set state_number in types.
	(dump_everything): Improve comment.
	(main): Call read_state and write_state. Print type_count.

	* gengtype.h (type_lineloc): New function.
	(read_state, write_state): New declarations.

	* Makefile.in (GENGTYPE_FLAGS): New variable.
	(s-gtype): Run gengtype twice and generate gtype.state.
	(build/gengtype-state.o): New rule.
	(build/gengtype$(build_exeext)): Link gengtype-state.o.
	(mostlyclean): Update comment.  Remove gtype.state.


Co-Authored-By: Jeremie Salvucci <jeremie.salvucci@free.fr>

From-SVN: r167150
2010-11-25 19:03:27 +00:00
Rainer Orth
f759884521 make_sunver.pl: Use elfdump -s to extract symbols if possible, readelf -s otherwise.
* make_sunver.pl: Use elfdump -s to extract symbols if possible,
	readelf -s otherwise.

From-SVN: r167149
2010-11-25 18:16:57 +00:00
Jakub Jelinek
01e512e27c re PR middle-end/46637 (SIGSEGV in if_then_else_cond - too deep recursion)
PR middle-end/46637
	* combine.c (try_combine): When substing i2dest for i2src, pass
	1 as last argument even if
	i0_feeds_i1_n && i1_feeds_i2_n && i0dest_in_i0src.

	* gcc.c-torture/compile/pr46637.c: New test.

From-SVN: r167148
2010-11-25 19:00:47 +01:00
H.J. Lu
27f2c348e9 Add -mtune=generic to gfortran.dg/pr46519-1.f.
2010-11-25  H.J. Lu  <hongjiu.lu@intel.com>

	* gfortran.dg/pr46519-1.f: Add -mtune=generic.

From-SVN: r167147
2010-11-25 05:57:51 -08:00
H.J. Lu
de77ab7591 Properly cast integer constant char.
gcc/

2010-11-25  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/46647
	* builtins.c (target_char_cast): Check INTEGER_CST instead of
	host_integerp.  Replace tree_low_cst with TREE_INT_CST_LOW.

gcc/testsuite/

2010-11-25  H.J. Lu  <hongjiu.lu@intel.com>

	PR middle-end/46647
	* gcc.target/i386/pr46647.c: New.

From-SVN: r167146
2010-11-25 05:47:42 -08:00
Joseph Myers
d5fabb5835 target.def (supports_split_stack, [...]): Take gcc_options parameters.
* target.def (supports_split_stack, except_unwind_info): Take
	gcc_options parameters.
	* targhooks.c (default_except_unwind_info,
	dwarf2_except_unwind_info, sjlj_except_unwind_info): Take
	gcc_options parameters.
	* targhooks.h (default_except_unwind_info,
	dwarf2_except_unwind_info, sjlj_except_unwind_info): Update
	prototypes.
	* doc/tm.texi.in (TARGET_IRA_COVER_CLASSES,
	TARGET_HAVE_NAMED_SECTIONS, TARGET_UNWIND_TABLES_DEFAULT):
	Document that hooks must not be modified.
	(TARGET_EXCEPT_UNWIND_INFO): Refer to opts argument.
	* doc/tm.texi: Regenerate.
	* defaults.h (STACK_OLD_CHECK_PROTECT, STACK_CHECK_PROTECT): Pass
	&global_options to targetm.except_unwind_info.
	* dwarf2out.c (dwarf2out_do_frame, dwarf2out_do_cfi_asm,
	dwarf2out_begin_prologue, dwarf2out_frame_init,
	dwarf2out_frame_finish, dwarf2out_assembly_start): Pass
	&global_options to targetm.except_unwind_info.
	* except.c (init_eh, finish_eh_generation,
	gate_convert_to_eh_region_ranges,
	output_one_function_exception_table): Pass &global_options to
	targetm.except_unwind_info.
	* expr.c (build_personality_function): Pass &global_options to
	targetm.except_unwind_info.
	* function.c (expand_function_end): Pass &global_options to
	targetm.except_unwind_info.
	* hooks.c (hook_bool_bool_gcc_optionsp_false): New.
	* hooks.h (hook_bool_bool_gcc_optionsp_false): Declare.
	* opts.c (finish_options): Pass opts to targetm.except_unwind_info
	and targetm.supports_split_stack.  Remove assertions about opts
	and opts_set.
	(common_handle_option): Remove assertions about opts, opts_set and
	dc.
	* tree-tailcall.c (suitable_for_tail_call_opt_p): Pass
	&global_options to targetm.except_unwind_info.
	* tree.c (build_common_builtin_nodes: Pass &global_options to
	targetm.except_unwind_info.
	* config/arm/arm.c (arm_except_unwind_info): Add gcc_options
	parameter.
	(arm_compute_func_type, arm_expand_prologue, thumb_pushpop,
	thumb1_expand_prologue, thumb1_output_function_prologue,
	arm_unwind_emit, arm_output_fn_unwind): Update calls to
	arm_except_unwind_info.
	* config/i386/i386.c (ix86_supports_split_stack): Add gcc_options
	parameter.
	* config/ia64/ia64.c (ia64_except_unwind_info): Add gcc_options
	parameter.
	(ia64_output_function_prologue, ia64_add_bundle_selector_before,
	ia64_reorg, ia64_asm_unwind_emit): Update calls to
	ia64_except_unwind_info.
	* config/pa/pa.c (pa_option_override): Pass &global_options to
	targetm.except_unwind_info.
	* config/picochip/picochip-protos.h (picochip_except_unwind_info):
	Remove prototype.

c-family:
	* c-cppbuiltin.c (c_cpp_builtins): Pass &global_options to
	targetm.except_unwind_info.

From-SVN: r167145
2010-11-25 13:16:03 +00:00
Kai Tietz
9d602c5900 cgraphunit.c (process_function_and_variable_attributes): Mark dllexport-ed function/variables as needed.
2010-11-25  Kai Tietz  <kai.tietz@onevision.com>

	* cgraphunit.c (process_function_and_variable_attributes):
	Mark dllexport-ed function/variables as needed.
	* ipa.c (cgraph_externally_visible_p): Make dllexport-ed
	as externally visible.

2010-11-25  Kai Tietz  <kai.tietz@onevision.com>

	* gcc.dg/dll-8.c: New.

From-SVN: r167144
2010-11-25 13:30:07 +01:00
Eric Botcazou
c8230704c4 loop_optimization7.adb: Remove dg-require-effective-target.
* gnat.dg/loop_optimization7.adb: Remove dg-require-effective-target.
	* gnat.dg/sse_nolib.adb: Likewise.

From-SVN: r167143
2010-11-25 11:53:04 +00:00
Alexander Monakov
9ef1bf719b re PR rtl-optimization/46585 (ICE: SIGSEGV in vinsn_create (sel-sched-ir.c:1189) with -fno-dce -fschedule-insns -fselective-scheduling)
PR rtl-optimization/46585
	* sel-sched-ir.c (return_regset_to_pool): Verify that RS is not NULL.
	(vinsn_init): Skip initialization of dependencies for local NOPs.
	(vinsn_delete): Don't try to free regsets for local NOPs.
        (setup_nop_and_exit_insns): Change definition of nop_pattern.

testsuite:
	* gcc.dg/pr46585.c: New.

From-SVN: r167141
2010-11-25 13:05:00 +03:00
Alexander Monakov
d787f788f8 re PR rtl-optimization/46602 (gcc.dg/pr42245-2.c ICE on ia64)
PR rtl-optimization/46602
	* sel-sched-ir.c (maybe_tidy_empty_bb): Move checking ...
	(tidy_control_flow): Here.

From-SVN: r167140
2010-11-25 12:59:03 +03:00
Joern Rennecke
459d4972e8 re PR bootstrap/45888 (tm.texi generation is not portable, rule is broken)
2010-11-25  Joern Rennecke  <amylaar@spamcop.net>
	    Ralf Wildenhues  <Ralf.Wildenhues@gmx.de>

	PR bootstrap/45888
	* Makefile.in (s-tm-texi): Remove \r occurences from tmp-tm.texi.
	Fix target.def pathname in timestamp comparison.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>

From-SVN: r167137
2010-11-25 08:02:13 +00:00
Richard Henderson
604e3ff316 predicates.md (pmpyshr_operand): New.
* config/ia64/predicates.md (pmpyshr_operand): New.
        * config/ia64/ia64.c (ia64_expand_unpack): New.
        (ia64_expand_widen_mul_v4hi): New.
        (ia64_expand_widen_sum): Update for pattern renames.
        (ia64_expand_dot_prod_v8qi): Likewise.
        * config/ia64/ia64-protos.h: Update.
        * config/ia64/vect.md (vecwider): New mode attribute.
        (vec_widen_umult_lo_v8qi, vec_widen_umult_hi_v8qi): New.
        (vec_widen_smult_lo_v8qi, vec_widen_smult_hi_v8qi): New.
        (pmpyshr2, pmpyshr2_u): New.
        (vec_widen_smult_lo_v4hi, vec_widen_smult_hi_v4hi): New.
        (vec_widen_umult_lo_v4hi, vec_widen_umult_hi_v4hi): New.
        (mulv2si3): New.
        (vec_pack_ssat_v4hi): Rename from pack2_sss.
        (vec_pack_usat_v4hi): Rename from *pack2_uss.
        (vec_pack_ssat_v2si): Rename from pack4_sss.
        (vec_interleave_lowv8qi): Rename from unpack1_l, use the correct
        vec_select operation.
        (vec_interleave_highv8qi): Similarly.
        (mux1_alt): Rename from *mux1_alt.
        (vec_extract_evenv8qi, vec_extract_oddv8qi): New.
        (vec_interleave_lowv4hi): Rename from unpack2_l.
        (vec_interleave_highv4hi): Rename from unpack2_h.
        (mix2_r): Rename from *mix2_r.
        (mix2_l): Similarly.
        (vec_extract_evenodd_helper): New.
        (vec_extract_evenv4hi, vec_extract_oddv4hi): New.
        (vec_interleave_lowv2si): Rename from *unpack4_l.
        (vec_interleave_highv2si): Rename from *unpack4_h.
        (vec_extract_evenv2si, vec_extract_oddv2si): New.
        (vec_interleave_lowv2sf): Rename from fmix_r.
        (vec_interleave_highv2sf): Rename from *fmix_l.
        (vec_extract_evenv2sf, vec_extract_oddv2sf): New.
        (vec_unpacku_lo_<VECINT12>, vec_unpacku_hi_<VECINT12>): New.
        (vec_unpacks_lo_<VECINT12>, vec_unpacks_hi_<VECINT12>): New.
        (vec_pack_trunc_v4hi, vec_pack_trunc_v2si): New.

testsuite:
        * lib/target-supports.exp (vect_widen_sum_hi_to_si_pattern,
        vect_widen_mult_hi_to_si, vect_sdot_qi, vect_udot_qi, vect_sdot_hi,
        vect_unpack, vect_int_mult, vect_extract_even_odd,
        vect_extract_even_odd_wide, vect_interleave): Enable for ia64.

From-SVN: r167136
2010-11-24 17:16:20 -08:00
GCC Administrator
5eee6908a1 Daily bump.
From-SVN: r167135
2010-11-25 00:18:39 +00:00
Nathan Froyd
19779181c6 targhooks.c (default_except_unwind_info): Remove MUST_USE_SJLJ_EXCEPTIONS case.
* targhooks.c (default_except_unwind_info): Remove
	MUST_USE_SJLJ_EXCEPTIONS case.
	* config/h8300/h8300.h (MUST_USE_SJLJ_EXCEPTIONS): Delete.
	* config/h8300/h8300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
	* doc/tm.texi.in (MUST_USE_SJLJ_EXCEPTIONS): Delete.
	* doc/tm.texi: Regenerate.
	* system.h (MUST_USE_SJLJ_EXCEPTIONS): Poison.

From-SVN: r167131
2010-11-24 23:37:33 +00:00
Nathan Froyd
a3c1f9efdb revert accidentally committed changes
From-SVN: r167130
2010-11-24 23:32:29 +00:00