Commit Graph

87209 Commits

Author SHA1 Message Date
H.J. Lu
4247363384 re PR testsuite/36155 (UTF tests doesn't work on Linux)
2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/36155
	* g++.dg/ext/utf32-4.C: Fix a typo.

From-SVN: r135008
2008-05-06 14:35:33 -07:00
Benjamin Kosnik
68a97d242c condition_variable: New.
2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

	* include/std/condition_variable: New.
	* include/std/mutex: New.
	* src/condition_variable.cc: New.
	* src/mutex.cc: New.
	* include/bits/functexcept.h: Add __throw_system_error varients.
	* src/functexcept.cc: Same.
	* config/abi/pre/gnu.ver: Add exports.

	* doc/xml/manual/using.xml: Add new includes.
	* doc/doxygen/user.cfg.in: Doxygen support.
	* doc/doxygen/doxygroups.cc: Same.

	* include/Makefile.am: Add mutex, condition_variable.
	* include/Makefile.in: Regenerated.
	* src/Makefile.am: Add mutex.cc, condition_variable.cc.
	* src/Makefile.in: Regenerated.

	* testsuite/30_threads: New.
	* testsuite/30_threads/lock_error: New.
	* testsuite/30_threads/mutex: New.
	* testsuite/30_threads/mutex/dest: New.
	* testsuite/30_threads/mutex/dest/destructor_locked.cc: New.
	* testsuite/30_threads/mutex/native_handle: New.
	* testsuite/30_threads/mutex/native_handle/1.cc: New.
	* testsuite/30_threads/mutex/cons: New.
	* testsuite/30_threads/mutex/cons/assign_neg.cc: New.
	* testsuite/30_threads/mutex/cons/1.cc: New.
	* testsuite/30_threads/mutex/cons/copy_neg.cc: New.
	* testsuite/30_threads/mutex/requirements: New.
	* testsuite/30_threads/mutex/requirements/typedefs.cc: New.
	* testsuite/30_threads/mutex/try_lock: New.
	* testsuite/30_threads/mutex/try_lock/1.cc: New.
	* testsuite/30_threads/mutex/try_lock/2.cc: New.
	* testsuite/30_threads/mutex/lock: New.
	* testsuite/30_threads/mutex/lock/1.cc: New.
	* testsuite/30_threads/mutex/unlock: New.
	* testsuite/30_threads/mutex/unlock/1.cc: New.
	* testsuite/30_threads/recursive_mutex: New.
	* testsuite/30_threads/recursive_mutex/dest: New.
	* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc: New.
	* testsuite/30_threads/recursive_mutex/native_handle: New.
	* testsuite/30_threads/recursive_mutex/native_handle/1.cc: New.
	* testsuite/30_threads/recursive_mutex/cons: New.
	* testsuite/30_threads/recursive_mutex/cons/assign_neg.cc: New.
	* testsuite/30_threads/recursive_mutex/cons/1.cc: New.
	* testsuite/30_threads/recursive_mutex/cons/copy_neg.cc: New.
	* testsuite/30_threads/recursive_mutex/requirements: New.
	* testsuite/30_threads/recursive_mutex/requirements/typedefs.cc: New.
	* testsuite/30_threads/lock_guard: New.
	* testsuite/30_threads/lock_guard/requirements: New.
	* testsuite/30_threads/lock_guard/requirements/typedefs.cc: New.
	* testsuite/30_threads/lock_guard/requirements/
	explicit_instantiation.cc: New.
	* testsuite/30_threads/headers: New.
	* testsuite/30_threads/headers/mutex: New.
	* testsuite/30_threads/headers/mutex/types_std_c++0x.cc: New.
	* testsuite/30_threads/headers/mutex/std_c++0x_neg.cc: New.
	* testsuite/30_threads/headers/condition_variable: New.
	* testsuite/30_threads/headers/condition_variable/
	types_std_c++0x.cc: New.
	* testsuite/30_threads/headers/condition_variable/std_c++0x_neg.cc: New.
	* testsuite/30_threads/once_flag: New.
	* testsuite/30_threads/unique_lock: New.
	* testsuite/30_threads/unique_lock/requirements: New.
	* testsuite/30_threads/unique_lock/requirements/typedefs.cc: New.
	* testsuite/30_threads/unique_lock/requirements/
	explicit_instantiation.cc: New.
	* testsuite/17_intro/headers/c++200x/all.cc: Add new includes.

From-SVN: r135007
2008-05-06 21:11:47 +00:00
Francois-Xavier Coudert
006601890b arith.c: (gfc_arith_concat...
* arith.c: (gfc_arith_concat, gfc_compare_string,
	gfc_compare_with_Cstring, hollerith2representation,
	gfc_hollerith2int, gfc_hollerith2real, gfc_hollerith2complex,
	gfc_hollerith2character, gfc_hollerith2logical): Use wide
	characters for character constants.
	* data.c (create_character_intializer): Likewise.
	* decl.c (gfc_set_constant_character_len): Likewise.
	* dump-parse-tree.c (show_char_const): Correctly dump wide
	character strings.
	error.c (print_wide_char): Rename into gfc_print_wide_char.
	(show_locus): Adapt to new prototype of gfc_print_wide_char.
	expr.c (free_expr0): Representation is now disjunct from
	character string value, so we always free it.
	(gfc_copy_expr, find_substring_ref, gfc_simplify_expr): Adapt
	to wide character strings.
	* gfortran.h (gfc_expr): Make value.character.string a wide string.
	(gfc_wide_toupper, gfc_wide_strncasecmp, gfc_wide_memset,
	gfc_widechar_to_char, gfc_char_to_widechar): New prototypes.
	(gfc_get_wide_string): New macro.
	(gfc_print_wide_char): New prototype.
	* io.c (format_string): Make a wide string.
	(next_char, gfc_match_format, compare_to_allowed_values, 
	gfc_match_open): Deal with wide strings.
	* module.c (mio_expr): Convert between wide strings and ASCII ones.
	* primary.c (match_hollerith_constant, match_charkind_name): 
	Handle wide strings.
	* resolve.c (build_default_init_expr): Likewise.
	* scanner.c (gfc_wide_toupper, gfc_wide_memset,
	gfc_char_to_widechar): New functions.
	(wide_strchr, gfc_widechar_to_char, gfc_wide_strncasecmp):
	Changes in prototypes.
	(gfc_define_undef_line, load_line, preprocessor_line,
	include_line, load_file, gfc_read_orig_filename): Handle wide
	strings.
	* simplify.c (gfc_simplify_achar, gfc_simplify_adjustl,
	gfc_simplify_adjustr, gfc_simplify_char, gfc_simplify_iachar,
	gfc_simplify_ichar, simplify_min_max, gfc_simplify_new_line,
	gfc_simplify_repeat): Handle wide strings.
	(wide_strspn, wide_strcspn): New helper functions.
	(gfc_simplify_scan, gfc_simplify_trim, gfc_simplify_verify):
	Handle wide strings.
	* symbol.c (generate_isocbinding_symbol): Likewise.
	* target-memory.c (size_character, gfc_target_expr_size,
	encode_character, gfc_target_encode_expr, gfc_interpret_character,
	gfc_target_interpret_expr): Handle wide strings.
	* trans-const.c (gfc_conv_string_init): Lower wide strings to
	narrow ones.
	(gfc_conv_constant_to_tree): Likewise.
	* trans-expr.c (gfc_conv_substring_expr): Handle wide strings.
	* trans-io.c (gfc_new_nml_name_expr): Likewise.
	* trans-stmt.c (gfc_trans_label_assign): Likewise.

From-SVN: r135006
2008-05-06 21:06:20 +00:00
Francois-Xavier Coudert
1b38192d61 simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1, [...]): Mark arguments with ATTRIBUTE_UNUSED.
* simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
	gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
	gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): Mark arguments
	with ATTRIBUTE_UNUSED.

From-SVN: r134998
2008-05-06 20:28:19 +00:00
Francois-Xavier Coudert
37a2dc4270 check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
* check.c (gfc_check_sizeof): Switch to ATTRIBUTE_UNUSED.
	* simplify.c (gfc_simplify_lgamma): Likewise.

From-SVN: r134997
2008-05-06 20:24:05 +00:00
Benjamin Kosnik
86ff5c5049 re PR libstdc++/36130 (Atomics regression test fail to compile when parallel mode is enabled)
2008-05-06  Benjamin Kosnik  <bkoz@redhat.com>

	PR libstdc++/36130
	* include/bits/c++config: Namespace macros and setup only in C++.
	* testsuite/29_atomics/headers/stdatomic.h/debug_mode.c: New.

From-SVN: r134995
2008-05-06 18:57:46 +00:00
H.J. Lu
a6ce277401 re PR testsuite/36155 (UTF tests doesn't work on Linux)
2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR testsuite/36155
	* gcc.dg/utf32-4.c: Fix a typo.

	* lib/target-supports.exp (check_effective_target_4byte_wchar_t):
	Use __WCHAR_TYPE__ instead of wchar_t.

From-SVN: r134994
2008-05-06 11:37:03 -07:00
Mark Shinwell
85b56a901c enum6.C, [...]: Broaden dg-options pattern.
* g++.old-deja/g++.jason/enum6.C, g++.old-deja/g++.law/enum9.C,
	g++.old-deja/g++.other/enum4.C, gfortran/enum_9.f90,
	gfortran.dg/enum_10.f90: Broaden dg-options pattern.

Co-Authored-By: Andrew Jenner <andrew@codesourcery.com>
Co-Authored-By: Daniel Jacobowitz <dan@codesourcery.com>

From-SVN: r134993
2008-05-06 18:34:53 +00:00
Francois-Xavier Coudert
8fc541d3a5 openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and gfc_peek_ascii_char.
* openmp.c (gfc_match_omp_eos): Use gfc_next_ascii_char and
	gfc_peek_ascii_char.
	* decl.c (gfc_match_kind_spec, gfc_match_type_spec,
	gfc_match_implicit_none, match_implicit_range, gfc_match_implicit,
	match_string_p, match_attr_spec, gfc_match_suffix,
	match_procedure_decl, gfc_match_entry, gfc_match_subroutine):
	Likewise.
	* gfortran.h (gfc_char_t): New type.
	(gfc_linebuf): Make line member a gfc_char_t.
	(locus): Make nextc member a gfc_char_t.
	(gfc_wide_is_printable, gfc_wide_is_digit, gfc_wide_fits_in_byte,
	gfc_wide_tolower, gfc_wide_strlen, gfc_next_ascii_char,
	gfc_peek_ascii_char, gfc_check_digit): New prototypes.
	* error.c (print_wide_char): New function.
	(show_locus): Use print_wide_char and gfc_wide_strlen.
	* io.c (next_char): Use gfc_char_t type.
	(match_io): Use gfc_peek_ascii_char and gfc_next_ascii_char.
	* match.c (gfc_match_parens, gfc_match_eos,
	gfc_match_small_literal_int, gfc_match_name, gfc_match_name_C,
	gfc_match_intrinsic_op, gfc_match_char,  gfc_match_return,
	gfc_match_common): Likewise.
	* match.h (gfc_match_special_char): Change prototype.
	* parse.c (decode_specification_statement, decode_statement,
	decode_omp_directive, next_free, next_fixed): Use
	gfc_peek_ascii_char and gfc_next_ascii_char.
	* primary.c (gfc_check_digit): Change name.
	(match_digits, match_hollerith_constant, match_boz_constant,
	match_real_constant, next_string_char, match_charkind_name,
	match_string_constant, match_logical_constant_string,
	match_complex_constant, match_actual_arg, match_varspec,
	gfc_match_rvalue, match_variable): Use gfc_peek_ascii_char and
	gfc_next_ascii_char.
	* scanner.c (gfc_wide_fits_in_byte, wide_is_ascii,
	gfc_wide_is_printable, gfc_wide_tolower, gfc_wide_is_digit,
	gfc_wide_is_digit, wide_atoi, gfc_wide_strlen, wide_strcpy,
	wide_strchr, widechar_to_char, wide_strncmp, wide_strncasecmp,
	gfc_next_ascii_char, gfc_peek_ascii_char):
	New functions.
	(next_char, gfc_define_undef_line, skip_free_comments,
	gfc_next_char_literal, gfc_next_char, gfc_peek_char,
	gfc_error_recovery, load_line, preprocessor_line, include_line,
	load_file, gfc_read_orig_filename): Use gfc_char_t for source
	characters and the {gfc_,}wide_* functions to manipulate wide
	strings.

From-SVN: r134992
2008-05-06 18:28:32 +00:00
Uros Bizjak
d0b48c6701 mmx.md: Rename "*..." insn patterns from my previous commit to "*mmx_...".
* config/i386/mmx.md: Rename "*..." insn patterns from my
	previous commit to "*mmx_...".

From-SVN: r134991
2008-05-06 19:41:46 +02:00
Tom Tromey
71c10038d1 PR preprocessor/35313, PR preprocessor/36088:
gcc/testsuite
	PR preprocessor/35313, PR preprocessor/36088:
	* gcc.dg/cpp/pr35313.c: New file.
	* gcc.dg/cpp/if-oppr.c: Remove test for ',' in a conditional
	expression.
	* gcc.dg/cpp/if-oppr2.c: New file.
libcpp
	PR preprocessor/35313, PR preprocessor/36088:
	* expr.c (optab) <QUERY, COMMA>: Set precedence to 4.
	(reduce) <case CPP_QUERY>: Special case CPP_COMMA and CPP_COLON.

From-SVN: r134989
2008-05-06 17:15:07 +00:00
Tobias Burnus
3c3f426502 re PR fortran/36117 (Use MPFR for bessel function (optimization, rejects valid F2008))
2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * intrinsic.c (add_functions): Call gfc_simplify_bessel_*.
        * intrinsic.h: Add prototypes for gfc_simplify_bessel_*.
        * simplify.c (gfc_simplify_bessel_j0,gfc_simplify_bessel_j1,
        gfc_simplify_bessel_jn,gfc_simplify_bessel_y0,
        gfc_simplify_bessel_y1,gfc_simplify_bessel_yn): New.

2008-05-06  Tobias Burnus  <burnus@net-b.de>

        PR fortran/36117
        * gfortran.dg/bessel_2.f90: New.

From-SVN: r134988
2008-05-06 19:06:54 +02:00
H.J. Lu
4317a2fa51 re PR target/35657 (Alignments of DFP types aren't consistent)
2008-05-06  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/35657
	* config/i386/i386.c (contains_128bit_aligned_vector_p): Renamed
	to ...
	(contains_aligned_value_p): This.  Handle _Decimal128.
	(ix86_function_arg_boundary): Only align _Decimal128 to its
	natural boundary and handle it properly.

From-SVN: r134987
2008-05-06 08:41:08 -07:00
H.J. Lu
2fc794f279 Fix another typo in ChangeLog.
From-SVN: r134986
2008-05-06 07:28:58 -07:00
H.J. Lu
d65defb275 Fix a typo in ChangeLog.
From-SVN: r134985
2008-05-06 07:26:01 -07:00
Martin Jambor
c43f07af14 ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
2008-05-06  Martin Jambor  <mjambor@suse.cz>

        * ipa-cp.c (ipcp_method_orig_node): Renamed to ipcp_get_orig_node.
        (ipcp_method_is_cloned): Renamed to ipcp_node_is_clone
        (ipcp_method_set_orig_node): Removed.
        (ipcp_cval_get_cvalue_type): Removed.
        (ipcp_method_get_scale): Renamed to ipcp_get_node_scale.
        (ipcp_method_set_scale): Renamed to ipcp_set_node_scale.
        (ipcp_cval_set_cvalue_type): Removed.
        (ipcp_cval_get_cvalue): Removed.
        (ipcp_cval_set_cvalue): Removed.
        (ipcp_type_is_const): Renamed to ipcp_lat_is_const.
        (ipcp_cval_equal_cvalues): Renamed to ipcp_lats_are_equal
        (ipcp_lats_are_equal): Changed parameters to two ipcp_lattice's
        (ipcp_cval_meet): Renamed to ipa_lattice_meet
        (ipcp_cval_changed): Changed to use ipcp_lat_is_const
        (ipcp_method_cval): Renamed to ipcp_get_ith_lattice
        (ipcp_get_ith_lattice): Changed parameters.
        (ipcp_cval_compute): Renamed to ipcp_lattice_from_jfunc
        (ipcp_lattice_from_jfunc): Changed parameters.
	(ipcp_redirect): Local lattice pointer instead of lattice type variable.
	(ipcp_method_cval_print): Added temporary variable info.
	(ipcp_redirect): Removed already unused local variable caller.
	(ipcp_redirect): New temporary variable orig_callee_info
	(ipcp_redirect): Removed newly unused local variable callee.
	(ipcp_redirect): Removed (a bit confusing) local variable type.
	(ipcp_insert_stage): Added local variable info.
	(ipcp_cval_changed): Renamed to ipcp_lattice_changed, parameters 
	renamed too
	(ipcp_formal_create): Removed.
	(ipcp_method_cval_set): Removed.
	(ipcp_propagate_stage): Renamed lattice variables.
	(ipcp_method_cval_set_cvalue_type): Removed.
	(ipcp_method_cval_print): Renamed to ipcp_print_all_lattices
	(ipcp_print_all_lattices): Changed printed strings to refer to 
	lattices rather than cvals.
	(ipcp_method_cval_init): Renamed to ipcp_initialize_node_lattices
	(ipcp_propagate_const): Changed formal parameters.
	(build_const_val): Changed formal parameters.
	(ipcp_insert_stage): Removed useless variable cvalue
	(build_const_val): Changed formal parameters.
	(ipcp_method_compute_scale): Renamed to ipcp_compute_node_scale
	(ipcp_after_propagate): Renamed to ipcp_change_tops_to_bottom
	(ipcp_callsite_param_print): Renamed to ipcp_print_all_jump_functions
	(ipcp_profile_mt_count_print): Renamed to ipcp_print_func_profile_counts
	(ipcp_print_func_profile_counts): Changed string from "method" to 
	"function"
	(ipcp_profile_cs_count_print): Renamed to ipcp_print_call_profile_counts
	(ipcp_profile_edge_print): Renamed to ipcp_print_edge_profiles
	(ipcp_profile_bb_print): Renamed to ipcp_print_bb_profiles
	(ipcp_structures_print): Renamed to ipcp_print_all_structures
	(ipcp_profile_print): Renamed to ipcp_print_profile_data
	(ipcp_lat_is_const): Changed parameters and made inline.
	(ipcp_replace_map_create): Renamed to ipcp_create_replace_map
	(ipcp_redirect): Renamed to ipcp_need_redirect_p
	(ipcp_need_redirect_p): Calls ipcp_lat_is_const instead of using 
	the predicate condition directly
	(ipcp_propagate_stage): Added local variable args. Removed local
	variable callee.  (Both are mere code simplifications.)
	(ipcp_method_dont_insert_const): Renamed to
	ipcp_node_not_modifiable_p.
	(ipcp_node_not_modifiable_p): Made inline.
	(ipcp_cloned_create): Renamed to ipcp_init_cloned_node
	(ipcp_propagate_const): Renamed to ipcp_propagate_one_const
	(ipcp_print_all_lattices): Removed variable cvalue
	(ipcp_method_scale_print): Renamed to ipcp_function_scale_print
	Updated comments.

From-SVN: r134984
2008-05-06 16:15:18 +02:00
Olivier Hainque
2b9d6cf30e tree-sra.c (try_instantiate_multiple_fields): Early return if field has POINTER_TYPE.
* tree-sra.c (try_instantiate_multiple_fields): Early return
        if field has POINTER_TYPE.
               
        testsuite/
        * gnat.dg/fatp_sra.adb: New test.

From-SVN: r134982
2008-05-06 12:13:07 +00:00
Kai Tietz
18efb17965 i386.c (output_set_got): Fix for x86_64 output_emit_asm by using 'q' specifier for instruction.
2008-05-06  Kai Tietz  <kai.tietz@onevision.com>

	* config/i386/i386.c (output_set_got): Fix for x86_64 output_emit_asm
	by using 'q' specifier for instruction.
	(ix86_file_end): Replaced case TARGET_64BIT_MS_ABI by TARGET_64BIT.

From-SVN: r134981
2008-05-06 12:07:13 +02:00
Anatoly Sokolov
38ce04d982 avr.md (*sbrx_branch, [...]): Change mode of zero_extract from QImode to HImode.
* config/avr/avr.md (*sbrx_branch, *sbix_branch, *sbix_branch_tmp):
	Change mode of zero_extract from QImode to HImode.
	(sign bit tests peepholes): (Ditto.).

From-SVN: r134979
2008-05-06 13:30:17 +04:00
Johannes Singler
3234d6b0b0 2008-05-06 Johannes Singler <singler@ira.uka.de>
* include/parallel/multiway_merge.h:
          (multiway_merge_*_unguarded):
          Pass sentinel directly, to allow correct determination.
          (multiway_merge_loser_tree_unguarded):
          Remove over-cautious assertion.
          (calls to multiway_merge_*_splitting):
          Parametrize with type that is correct in all cases.
        * include/parallel/losertree.h:
          (delete_min_insert (in many classes)):
          Correct and standardize assertions.

From-SVN: r134977
2008-05-06 08:55:57 +00:00
Uros Bizjak
333d8f61a2 mmx.md: Remove double backslashes from asm templates.
* config/i386/mmx.md: Remove double backslashes from asm templates.
	(*addv2sf3): Rename from mmx_addv2sf3 insn pattern.
	(mmx_addv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
	to handle nonimmediate operands.
	(*mulv2sf3): Rename from mmx_mulv2sf3 insn pattern.
	(mmx_mulv2sf3): New expander.  Use ix86_fixup_binary_operands_no_copy
	to handle nonimmediate operands.
	(*<code>v2sf3_finite): New insn pattern.
	(*<code>v2sf3): Rename from mmx_<code>v2sf3 insn pattern.
	(mmx_<code>v2sf3): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(mmx_<plusminus_insn><mode>3): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(*<plusminus_insn><mode>3): New insn pattern.
	(mmx_add<mode>3): Removed.
	(mmx_ssadd<mode>3): Ditto.
	(mmx_usadd<mode>3): Ditto.
	(mmx_sub<mode>3): Ditto.
	(mmx_sssub<mode>3): Ditto.
	(mmx_ussub<mode>3): Ditto.
	(*mulv4hi3): Rename from mmx_mulv4hi3 insn pattern.
	(mmx_mulv4hi3): New expander.  Use ix86_fixup_binary_operands_no_copy
	to handle nonimmediate operands.
	(*smulv4hi3_highpart): Rename from mmx_smulv4hi3_highpart
	insn pattern.
	(mmx_smulv4hi3_highpart): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(*umulv4hi3_highpart): Rename from mmx_umulv4hi3_highpart
	insn pattern.
	(mmx_umulv4hi3_highpart): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(*<code>v4hi3): Rename from mmx_<code>v4hi3 insn pattern.
	(mmx_<code>v4hi3): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(*<code>v8qi3): Rename from mmx_<code>v8qi3 insn pattern.
	(mmx_<code>v8qi3): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.
	(*<code><mode>3): Rename from mmx_<code><mode>3 insn pattern.
	(mmx_<code><mode>3): New expander.  Use
	ix86_fixup_binary_operands_no_copy to handle nonimmediate operands.

From-SVN: r134976
2008-05-06 10:39:51 +02:00
Jan Hubicka
3716f2332c re PR tree-optimization/36118 ([4.4 Regressions] inline-related regressions)
PR tree-optimization/36118
	* passes.c (pass_init_dump_file): Fix dump header.

From-SVN: r134975
2008-05-06 07:59:54 +00:00
Jerry DeLisle
d0d51277e2 re PR libfortran/36131 (wrong IO)
2008-05-05  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	PR libfortran/36131
	* io/transfer.c (formatted_transfer_scalar): Revert patch for PR34974.
	(next_record_w): Likewise.

From-SVN: r134973
2008-05-06 04:00:38 +00:00
Andrew Pinski
1aee3ab6f3 re PR middle-end/36141 (Gcc 4.4 failed to boostrap)
2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Don't create VCE
        for function decls.

2008-05-05  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        PR middle-end/36141
        * gcc.c-torture/pr36141.c: New testcase.

From-SVN: r134972
2008-05-05 20:47:29 -07:00
Danny Smith
ab1cde2399 target_supports.exp (check_effective_target_4byte_wchar_t): New proc.
* lib/target_supports.exp (check_effective_target_4byte_wchar_t):
	New proc.
	* gcc.dg/utf16-4.c: Use it.
	* gcc.dg/utf32-4.c: Use it.
	* g++.dg/ext/utf16-4.C: Use it.
	* gcc.dg/ext/utf32-4.C: Use it.

From-SVN: r134971
2008-05-06 02:59:12 +00:00
H.J. Lu
0d07fcad08 sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.
2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/sse.md (sse2_<plusminus_insn><mode>3): Fix a typo.

From-SVN: r134966
2008-05-05 17:17:57 -07:00
GCC Administrator
9ff9991f9a Daily bump.
From-SVN: r134965
2008-05-06 00:17:57 +00:00
H.J. Lu
d1c3b58718 i386.md (sat_plusminus): New.
2008-05-05  H.J. Lu  <hongjiu.lu@intel.com>

	* config/i386/i386.md (sat_plusminus): New.
	(plusminus_insn): Likewise.
	(plusminus_mnemonic): Likewise.
	(addsub): Removed.
	(comm): Add ss_plus, us_plus, ss_minus and us_minus.
	(*<addsub><mode>3_cc_overflow): Renamed to ...
	(*<plusminus_insn><mode>3_cc_overflow): This.
	(*<addsub>si3_zext_cc_overflow): Renamed to ...
	(*<plusminus_insn>si3_zext_cc_overflow): This.

	* gcc/config/i386/sse.md (<addsub><mode>3): Renamed to ...
	(<plusminus_insn><mode>3): This.
	(*<addsub><mode>3): Renamed to ...
	(*<plusminus_insn><mode>3): This.
	(<sse>_vm<addsub><mode>3): Renamed to ...
	(<sse>_vm<plusminus_insn><mode>3): This.
	(sse3_h<addsub>v4sf3): Renamed to ...
	(sse3_h<plusminus_insn>v4sf3): This.
	(sse3_h<addsub>v2df3): Renamed to ...
	(sse3_h<plusminus_insn>v2df3): This.
	(<plusminus_insn><mode>3): New.
	(*<plusminus_insn><mode>3): Likewise.
	(sse2_<plusminus_insn><mode>3): Likewise.
	(add<mode>): Removed.
	(*add<mode>3): Likewise.
	(sse2_ssadd<mode>3): Likewise.
	(sse2_usadd<mode>3): Likewise.
	(sub<mode>3): Likewise.
	(*sub<mode>3): Likewise.
	(sse2_sssub<mode>3): Likewise.
	(sse2_ussub<mode>3): Likewise.

From-SVN: r134957
2008-05-05 14:34:17 -07:00
Danny Smith
33437ca004 * gfortran.dg/dev_null.f90. Remove and replace with...
* gfortran.dg/dev_null.F90: Use preprocessor define to
	generalize the DEV_NULL name.

From-SVN: r134955
2008-05-05 21:15:51 +00:00
Eric Botcazou
bba74577c5 * decl.c (maybe_pad_type): Add ??? comment.
From-SVN: r134953
2008-05-05 19:44:55 +00:00
Benjamin Kosnik
2368848178 gthr-single.h: Add in required interface elements as per gthr.h.
2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

        * gthr-single.h: Add in required interface elements as per gthr.h.
        Add stub types for __gthread_key_t, __gthread_once_t. Add defines
        for __GTHREAD_ONCE_INIT, __GTHREAD_RECURSIVE_MUTEX_INIT.
        Generalize UNUSED macro. 
        (__gthread_once): Add.
        (__gthread_key_create): Add.
        (__gthread_key_delete): Add.    
        (__gthread_getspecific): Add.
        (__gthread_setspecific): Add.

From-SVN: r134951
2008-05-05 17:42:26 +00:00
Benjamin Kosnik
1d3d8fff36 testsuite_visualization.h: Move contents into...
2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

	* testsuite/util/testsuite_visualization.h: Move contents into...
	* testsuite/util/testsuite_performance.h: ...here.
	* testsuite/util/testsuite_common_types.h: Move
	performance-related test infrastructure into
	testsuite_performance.
	* testsuite/performance/25_algorithms/search_n.cc: Fix includes.
	* testsuite/performance/23_containers/find/map.cc: Same.
	* testsuite/performance/23_containers/create/map.cc: Same.
	* testsuite/performance/23_containers/insert_erase/associative.cc: Same.
	* testsuite/performance/23_containers/insert/sequence.cc: Same.
	* testsuite/performance/23_containers/insert/associative.cc: Same.
	* testsuite/performance/23_containers/create_from_sorted/set.cc: Same.
	* testsuite/performance/23_containers/index/map.cc: Same.
	* testsuite/performance/23_containers/insert_from_sorted/set.cc: Same.
	* testsuite/performance/23_containers/create_sort/list.cc: Same.
	* testsuite/performance/23_containers/sort_search/list.cc: Same.
	* testsuite/performance/23_containers/producer_consumer/sequence.cc:
	Same.
	* testsuite/performance/23_containers/producer_consumer/associative.cc:
	Same.

	* testsuite/29_atomics/atomic/cons/assign_neg.cc: Adjust line numbers.
	* testsuite/29_atomics/atomic/cons/copy_neg.cc: Same.

From-SVN: r134949
2008-05-05 17:22:02 +00:00
Benjamin Kosnik
ce72d1aa87 typedefs-1.cc: Correct requirements.
2008-05-05  Benjamin Kosnik  <bkoz@redhat.com>

	* 20_util/make_signed/requirements/typedefs-1.cc: Correct requirements.
	* 20_util/make_unsigned/requirements/typedefs-1.cc: Same.

From-SVN: r134948
2008-05-05 17:16:44 +00:00
Andrew Pinski
e06f0ff9f8 tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the same size types for...
2008-05-05  Andrew Pinski  <Andrew.Pinski@playstation.sony.com>

        * tree-ssa-forwprop.c (forward_propagate_addr_expr_1): If we have the
        same size types for the indirect reference on the rhs, then create a VCE.

2008-05-05  Andrew Pinski  <andrew.pinski@playstation.sony.com>

        * gcc.dg/tree-ssa/forwprop-5.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-6.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-7.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-8.c: New testcase.
        * gcc.dg/tree-ssa/forwprop-9.c: New testcase.

From-SVN: r134947
2008-05-05 09:10:43 -07:00
Uros Bizjak
8c32cbc921 * config/i386/i386.md
(*float<SSEMODEI24:mode><MODEF:mode>2_sse_interunit): Use only
	one insn template instead of template series.
	(*xordi_1_rex64): Ditto.
	(*xordi_2_rex64): Ditto.

From-SVN: r134946
2008-05-05 14:56:15 +02:00
Ira Rosen
06d10aafc7 re PR tree-optimization/36119 (internal compiler error: in vectorizable_assignment, at tree-vect-transform.c:3671)
PR tree-optimization/36119
	* tree-vect-transform.c (vectorizable_assignment): Set NCOPIES to 1
	in case of SLP.

From-SVN: r134944
2008-05-05 07:47:49 +00:00
Jan Hubicka
24c0514153 tree-pass.h (pass_O0_always_inline): Declare.
tree-optimization/36100
	* tree-pass.h (pass_O0_always_inline): Declare.
	* ipa-inline.c (inline_transform): Remove dead code.
	(cgraph_gate_O0_always_inline, cgraph_O0_always_inline,
	pass_O0_always_inline): New.
	* passes.c (init_optimization_passes): Add pass_O0_always_inline.

From-SVN: r134942
2008-05-05 05:31:34 +00:00
GCC Administrator
7ffc24cee0 Daily bump.
From-SVN: r134940
2008-05-05 00:17:39 +00:00
Thomas Koenig
5956508768 re PR fortran/32770 ([Meta-bug] -fdefault-integer-8 issues)
2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR fortran/32770
	* gfortran.dg/any_all_1.f90:  Adjust kinds to make test
	pass with -fdefault-integer-8.
	* gfortran.dg/maxloc_bounds_4.f90:  Likewise.
	* gfortran.dg/maxloc_bounds_5.f90:  Likewise.
	* gfortran.dg/maxloc_bounds_7.f90:  Likewise.

From-SVN: r134936
2008-05-04 20:56:30 +00:00
Kai Tietz
8fa8585de8 i386.c (x86_output_mi_thunk): Use movq alternative mnemonic in this_param move for TARGET_64BIT.
2008-05-04  Kai Tietz  <kai.tietz@onevision.com>

	* config/i386/i386.c (x86_output_mi_thunk): Use movq alternative
	mnemonic in this_param move for TARGET_64BIT.

From-SVN: r134935
2008-05-04 21:19:50 +02:00
Thomas Koenig
da96f5ab49 re PR fortran/35995 (ANY, ALL, and COUNT errors for zero sized sections)
2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/35995
	* m4/ifunction_logical.m4:  If the extent of "array"
	is less than zero, set it to zero.  Use an explicit
	flag for breaking out of the main loop to avoid, because
	the data pointer for "array" may be NULL for an empty
	array.
	* m4/ifunction.m4:  Likewise.
	* generated/all_l1.c: Regenerated.
	* generated/all_l16.c: Regenerated.
	* generated/all_l2.c: Regenerated.
	* generated/all_l4.c: Regenerated.
	* generated/all_l8.c: Regenerated.
	* generated/any_l1.c: Regenerated.
	* generated/any_l16.c: Regenerated.
	* generated/any_l2.c: Regenerated.
	* generated/any_l4.c: Regenerated.
	* generated/any_l8.c: Regenerated.
	* generated/count_16_l.c: Regenerated.
	* generated/count_1_l.c: Regenerated.
	* generated/count_2_l.c: Regenerated.
	* generated/count_4_l.c: Regenerated.
	* generated/count_8_l.c: Regenerated.
	* generated/maxloc1_16_i1.c: Regenerated.
	* generated/maxloc1_16_i16.c: Regenerated.
	* generated/maxloc1_16_i2.c: Regenerated.
	* generated/maxloc1_16_i4.c: Regenerated.
	* generated/maxloc1_16_i8.c: Regenerated.
	* generated/maxloc1_16_r10.c: Regenerated.
	* generated/maxloc1_16_r16.c: Regenerated.
	* generated/maxloc1_16_r4.c: Regenerated.
	* generated/maxloc1_16_r8.c: Regenerated.
	* generated/maxloc1_4_i1.c: Regenerated.
	* generated/maxloc1_4_i16.c: Regenerated.
	* generated/maxloc1_4_i2.c: Regenerated.
	* generated/maxloc1_4_i4.c: Regenerated.
	* generated/maxloc1_4_i8.c: Regenerated.
	* generated/maxloc1_4_r10.c: Regenerated.
	* generated/maxloc1_4_r16.c: Regenerated.
	* generated/maxloc1_4_r4.c: Regenerated.
	* generated/maxloc1_4_r8.c: Regenerated.
	* generated/maxloc1_8_i1.c: Regenerated.
	* generated/maxloc1_8_i16.c: Regenerated.
	* generated/maxloc1_8_i2.c: Regenerated.
	* generated/maxloc1_8_i4.c: Regenerated.
	* generated/maxloc1_8_i8.c: Regenerated.
	* generated/maxloc1_8_r10.c: Regenerated.
	* generated/maxloc1_8_r16.c: Regenerated.
	* generated/maxloc1_8_r4.c: Regenerated.
	* generated/maxloc1_8_r8.c: Regenerated.
	* generated/maxval_i1.c: Regenerated.
	* generated/maxval_i16.c: Regenerated.
	* generated/maxval_i2.c: Regenerated.
	* generated/maxval_i4.c: Regenerated.
	* generated/maxval_i8.c: Regenerated.
	* generated/maxval_r10.c: Regenerated.
	* generated/maxval_r16.c: Regenerated.
	* generated/maxval_r4.c: Regenerated.
	* generated/maxval_r8.c: Regenerated.
	* generated/minloc1_16_i1.c: Regenerated.
	* generated/minloc1_16_i16.c: Regenerated.
	* generated/minloc1_16_i2.c: Regenerated.
	* generated/minloc1_16_i4.c: Regenerated.
	* generated/minloc1_16_i8.c: Regenerated.
	* generated/minloc1_16_r10.c: Regenerated.
	* generated/minloc1_16_r16.c: Regenerated.
	* generated/minloc1_16_r4.c: Regenerated.
	* generated/minloc1_16_r8.c: Regenerated.
	* generated/minloc1_4_i1.c: Regenerated.
	* generated/minloc1_4_i16.c: Regenerated.
	* generated/minloc1_4_i2.c: Regenerated.
	* generated/minloc1_4_i4.c: Regenerated.
	* generated/minloc1_4_i8.c: Regenerated.
	* generated/minloc1_4_r10.c: Regenerated.
	* generated/minloc1_4_r16.c: Regenerated.
	* generated/minloc1_4_r4.c: Regenerated.
	* generated/minloc1_4_r8.c: Regenerated.
	* generated/minloc1_8_i1.c: Regenerated.
	* generated/minloc1_8_i16.c: Regenerated.
	* generated/minloc1_8_i2.c: Regenerated.
	* generated/minloc1_8_i4.c: Regenerated.
	* generated/minloc1_8_i8.c: Regenerated.
	* generated/minloc1_8_r10.c: Regenerated.
	* generated/minloc1_8_r16.c: Regenerated.
	* generated/minloc1_8_r4.c: Regenerated.
	* generated/minloc1_8_r8.c: Regenerated.
	* generated/minval_i1.c: Regenerated.
	* generated/minval_i16.c: Regenerated.
	* generated/minval_i2.c: Regenerated.
	* generated/minval_i4.c: Regenerated.
	* generated/minval_i8.c: Regenerated.
	* generated/minval_r10.c: Regenerated.
	* generated/minval_r16.c: Regenerated.
	* generated/minval_r4.c: Regenerated.
	* generated/minval_r8.c: Regenerated.
	* generated/product_c10.c: Regenerated.
	* generated/product_c16.c: Regenerated.
	* generated/product_c4.c: Regenerated.
	* generated/product_c8.c: Regenerated.
	* generated/product_i1.c: Regenerated.
	* generated/product_i16.c: Regenerated.
	* generated/product_i2.c: Regenerated.
	* generated/product_i4.c: Regenerated.
	* generated/product_i8.c: Regenerated.
	* generated/product_r10.c: Regenerated.
	* generated/product_r16.c: Regenerated.
	* generated/product_r4.c: Regenerated.
	* generated/product_r8.c: Regenerated.
	* generated/sum_c10.c: Regenerated.
	* generated/sum_c16.c: Regenerated.
	* generated/sum_c4.c: Regenerated.
	* generated/sum_c8.c: Regenerated.
	* generated/sum_i1.c: Regenerated.
	* generated/sum_i16.c: Regenerated.
	* generated/sum_i2.c: Regenerated.
	* generated/sum_i4.c: Regenerated.
	* generated/sum_i8.c: Regenerated.
	* generated/sum_r10.c: Regenerated.
	* generated/sum_r16.c: Regenerated.
	* generated/sum_r4.c: Regenerated.
	* generated/sum_r8.c: Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/35995
	* gfortran.dg/intrinsic_ifunction_1.f90:  New test case.

From-SVN: r134934
2008-05-04 19:07:28 +00:00
Uros Bizjak
62d2739afd i386.md (*strmovsi_1): Simplify asm alternatives.
* config/i386/i386.md (*strmovsi_1): Simplify asm alternatives.
        (*strmovsi_rex_1): Ditto.
        (*strsetsi_1): Ditto.
        (*strsetsi_rex_1): Ditto.

        (add<mode>cc): Macroize expander from addqicc, addhicc, addsicc and
        adddicc expanders using SWI mode iterator.

From-SVN: r134933
2008-05-04 20:40:15 +02:00
H.J. Lu
4d31c3e1cb re PR target/36121 (config/i386/i386.c: array index out of range)
2008-05-04  H.J. Lu  <hongjiu.lu@intel.com>

	PR target/36121
	* config/i386/i386.c (ix86_expand_special_args_builtin): Remove
	3 argument handling.

From-SVN: r134932
2008-05-04 08:22:05 -07:00
Andy Hutchinson
6121961cb8 nested-func-5.c: Skip for target without trampolines.
2008-05-04   Andy Hutchinson   <hutchinsonandy@aim.com>

	* gcc.dg/nested-func-5.c: Skip for target without trampolines.
	* gcc.dg/torture/nested-fn-1.c: Ditto.

From-SVN: r134931
2008-05-04 13:10:14 +00:00
David S. Miller
2bd0fe3d07 Sorry, forgot this in previous commit.
From-SVN: r134930
2008-05-04 04:25:30 -07:00
David S. Miller
5f7ca34bf5 config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
gcc/

	* config.gcc (sparc*-*-*): Always set need_64bit_hwint to yes.
	(sparc*-*-linux*): Use linux.h in tm_file.
	(sparc-*-linux*): If 'enabled_targets' is 'all', build a bi-arch
	compiler defaulting to 32-bit.
	(sparc*-*-*): Remove explicit target settings of need_64bit_hwint,
	no longer needed.
	* config/sparc/linux.h: Remove definitions now obtained
	properly from linux.h
	* config/sparc/linux64.h: Likewise.
	(ASM_CPU_DEFAULT_SPEC): Change this to ASM_CPU64_DEFAULT_SPEC, we
	don't want this setting for 32-bit builds in a biarch compiler.
	* doc/install.texi: Add sparc-linux to list of targets
	supporting --enable-targets=all.

libcpp/

	* configure.ac (sparc*-*-*): Always set need_64bit_hwint to yes.
	* configure: Regenerate.

From-SVN: r134929
2008-05-04 04:25:04 -07:00
Thomas Koenig
9e6dca7594 re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/35990
	* intrinsics/pack_generic.c:  Really commit.

From-SVN: r134928
2008-05-04 10:14:49 +00:00
Thomas Koenig
7ad99d60f4 re PR fortran/35990 (run-time abort for PACK of run-time zero sized array)
2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/35990
	* intrinsics/pack_generic.c:  If an extent of the source
	array is less then zero, set it to zero.  Set the source
	pointer to NULL if the source size is zero.  Set the total
	number of elements to zero if the vector has an extent
	less or equal to zero.
	* m4/pack.m4:  Set the source pointer to NULL if the
	source array is zero-sized.  Set the total number of
	elemements to zero if the vector has an extent less or
	equal to zero.
	* generated/pack_i1.c:  Regenerated.
	* generated/pack_i2.c:  Regenerated.
	* generated/pack_i4.c:  Regenerated.
	* generated/pack_i8.c:  Regenerated.
	* generated/pack_i16.c:  Regenerated.
	* generated/pack_r4.c:  Regenerated.
	* generated/pack_r8.c:  Regenerated.
	* generated/pack_r10.c:  Regenerated.
	* generated/pack_r16.c:  Regenerated.
	* generated/pack_c4.c:  Regenerated.
	* generated/pack_c8.c:  Regenerated.
	* generated/pack_c10.c:  Regenerated.
	* generated/pack_c16.c:  Regenerated.

2008-05-04  Thomas Koenig  <tkoenig@gcc.gnu.org>

	PR libfortran/35990
	* gfortran.dg/intrinsic_pack_4.f90:  New test case.

From-SVN: r134927
2008-05-04 08:06:02 +00:00
Kris Van Hees
3e438e2b76 Added myself with write-after-approval privs.
From-SVN: r134926
2008-05-04 00:54:32 +00:00
GCC Administrator
ceb86b9bd4 Daily bump.
From-SVN: r134924
2008-05-04 00:17:17 +00:00