Commit Graph

88251 Commits

Author SHA1 Message Date
Uros Bizjak
a055f99f15 i386.md (*jcc_fused_1): Handle all valid compare operators for "test" insn.
* config/i386/i386.md (*jcc_fused_1): Handle all valid compare
	operators for "test" insn.  Macroize insn using SWI mode macro.
	(*jcc_fused_2): Ditto.
	(*jcc_fused_3): Macroize insn using SWI mode macro.
	(*jcc_fused_4): Ditto.

From-SVN: r136988
2008-06-20 14:47:04 +02:00
Bernhard Fischer
a7849637b6 tree-ssa-pre.c: Fix typo in comment.
2008-06-20  Bernhard Fischer  <aldot@gcc.gnu.org>

        * tree-ssa-pre.c: Fix typo in comment.
        (init_antic, fini_antic): Add explicit funtions for
        initializing and deinitializing ANTIC and AVAIL sets.
        (create_expression_by_pieces): Fix typo in comment.
        Remove redundant set of new_stuff and use NULL_TREE instead of
        NULL.
        (execute_pre): Eventually dump details about ANTIC_IN.

From-SVN: r136984
2008-06-20 10:30:26 +02:00
Kaveh R. Ghazi
ece3f6639d arith.c (hollerith2representation): Fix for -Wc++-compat.
* arith.c (hollerith2representation): Fix for -Wc++-compat.
	* array.c (gfc_get_constructor): Likewise.
	* decl.c (gfc_get_data_variable, gfc_get_data_value, gfc_get_data,
	create_enum_history, gfc_match_final_decl): Likewise.
	* error.c (error_char): Likewise.
	* expr.c (gfc_get_expr, gfc_copy_expr): Likewise.
	* gfortran.h (gfc_get_charlen, gfc_get_array_spec,
	gfc_get_component, gfc_get_formal_arglist, gfc_get_actual_arglist,
	gfc_get_namelist, gfc_get_omp_clauses, gfc_get_interface,
	gfc_get_common_head, gfc_get_dt_list, gfc_get_array_ref,
	gfc_get_ref, gfc_get_equiv, gfc_get_case, gfc_get_iterator,
	gfc_get_alloc, gfc_get_wide_string): Likewise.
	* interface.c (count_types_test): Likewise.
	* intrinsic.c (add_char_conversions, gfc_intrinsic_init_1):
	Likewise.
	* io.c (gfc_match_open, gfc_match_close, match_filepos, match_io,
	gfc_match_inquire, gfc_match_wait): Likewise.
	* match.c (gfc_match, match_forall_iterator): Likewise.
	* module.c (gfc_get_pointer_info, gfc_get_use_rename, add_fixup,
	add_true_name, parse_string, write_atom, quote_string,
	mio_symtree_ref, mio_gmp_real, write_common_0): Likewise.
	* options.c (gfc_post_options): Likewise.
	* primary.c (match_integer_constant, match_hollerith_constant,
	match_boz_constant, match_real_constant,
	gfc_get_structure_ctor_component, gfc_match_structure_constructor): Likewise.
	* scanner.c (gfc_widechar_to_char, add_path_to_list,
	add_file_change, load_line, get_file, preprocessor_line,
	load_file, unescape_filename, gfc_read_orig_filename): Likewise.
	* simplify.c (gfc_simplify_ibits, gfc_simplify_ishft,
	gfc_simplify_ishftc): Likewise.
	* symbol.c (gfc_get_st_label, gfc_get_namespace, gfc_new_symtree,
	gfc_get_uop, gfc_new_symbol, save_symbol_data, gfc_get_gsymbol):
	Likewise.
	* target-memory.c (gfc_target_interpret_expr): Likewise.
	* trans-const.c (gfc_build_wide_string_const): Likewise.
	* trans-expr.c (gfc_add_interface_mapping): Likewise.
	* trans-intrinsic.c (gfc_conv_intrinsic_conversion,
	gfc_conv_intrinsic_int, gfc_conv_intrinsic_lib_function,
	gfc_conv_intrinsic_cmplx, gfc_conv_intrinsic_ctime,
	gfc_conv_intrinsic_fdate, gfc_conv_intrinsic_ttynam,
	gfc_conv_intrinsic_minmax, gfc_conv_intrinsic_minmax_char,
	gfc_conv_intrinsic_ishftc, gfc_conv_intrinsic_index_scan_verify,
	gfc_conv_intrinsic_merge, gfc_conv_intrinsic_trim): Likewise.
	* trans.c (gfc_get_backend_locus): Likewise.
	* trans.h (gfc_get_ss): Likewise.

From-SVN: r136982
2008-06-20 06:03:16 +00:00
John David Anglin
2d31e498bf re PR ada/36573 (s-intman.adb:232:50: "SA_ONSTACK" is undefined)
PR ada/36573
	* s-osinte-hpux-dce.ads (SA_ONSTACK): Define.

From-SVN: r136981
2008-06-20 05:06:24 +00:00
Kaveh R. Ghazi
e1e4cdc42c collect2.c (main, [...]): Fix for -Wc++-compat.
* collect2.c (main, add_to_list): Fix for -Wc++-compat.
	* gcc.c (translate_options, init_spec, store_arg, read_specs,
	add_to_obstack, file_at_path, find_a_file, execute,
	add_preprocessor_option, add_assembler_option, add_linker_option,
	process_command, insert_wrapper, do_option_spec, do_self_spec,
	spec_path, do_spec_1, is_directory, main, used_arg,
	getenv_spec_function): Likewise.
	* tlink.c (symbol_hash_lookup, file_hash_lookup,
	demangled_hash_lookup, symbol_push, file_push, frob_extension):
	Likewise.
	
java:
	* class.c (ident_subst, mangled_classname, unmangle_classname,
	gen_indirect_dispatch_tables, add_method_1,
	build_fieldref_cache_entry, make_local_function_alias,
	layout_class, java_treetreehash_find, java_treetreehash_new,
	split_qualified_name): Fix for -Wc++-compat.
	* constants.c (set_constant_entry, cpool_for_class): Likewise.
	* decl.c (make_binding_level, java_dup_lang_specific_decl,
	start_java_method): Likewise.
	* except.c (prepare_eh_table_type): Likewise.
	* expr.c (type_assertion_hash, note_instructions): Likewise.
	* java-tree.h (MAYBE_CREATE_VAR_LANG_DECL_SPECIFIC,
	MAYBE_CREATE_TYPE_TYPE_LANG_SPECIFIC): Likewise.
	* jcf-io.c (jcf_filbuf_from_stdio, opendir_in_zip, find_class):
	Likewise.
	* jcf-parse.c (reverse, java_read_sourcefilenames,
	annotation_grow, rewrite_reflection_indexes, java_parse_file,
	process_zip_dir): Likewise.
	* jcf-path.c (add_entry, add_path, jcf_path_init,
	jcf_path_extdirs_arg): Likewise.
	* jcf-reader.c (jcf_parse_constant_pool): Likewise.
	* jvgenmain.c (do_mangle_classname): Likewise.
	* lang.c (put_decl_string): Likewise.
	* verify-impl.c (make_state_copy, make_state, add_new_state):
	Likewise.

objc:
	* objc-act.c (setup_string_decl, objc_build_string_object,
	hash_interface, eq_interface, objc_begin_try_stmt,
	encode_method_prototype, build_ivar_list_initializer,
	objc_build_encode_expr): Fix for -Wc++-compat.

From-SVN: r136980
2008-06-20 03:46:09 +00:00
Jerry DeLisle
54e998b2f1 fmt_l.f90: Fix end of line test pattern.
2008-06-19  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

	* gfortran.dg/fmt_l.f90: Fix end of line test pattern.

From-SVN: r136979
2008-06-20 03:40:43 +00:00
Kenneth Zadeck
1ba4e523d1 rtl.texi: Updated subreg section.
2008-06-19  Kenneth Zadeck <zadeck@naturalbridge.com>

	* doc/rtl.texi: Updated subreg section.

From-SVN: r136978
2008-06-20 03:26:10 +00:00
Jakub Jelinek
2368a460c8 re PR c++/36523 (OpenMP task construct fails to instantiate copy constructor)
PR c++/36523
	* cgraphunit.c (cgraph_process_new_functions): Don't clear
	node->needed and node->reachable.
	* cgraphbuild.c (record_reference): Handle OMP_PARALLEL and OMP_TASK.
	* omp-low.c (delete_omp_context): Call finalize_task_copyfn.
	(expand_task_call): Don't call expand_task_copyfn.
	(expand_task_copyfn): Renamed to...
	(finalize_task_copyfn): ... this.

	* testsuite/libgomp.c++/task-7.C: New function.

From-SVN: r136977
2008-06-20 04:18:07 +02:00
GCC Administrator
c598874b4b Daily bump.
From-SVN: r136975
2008-06-20 00:17:08 +00:00
Andy Hutchinson
ad0dc07d8a target-supports.exp (check_effective_target_keeps_null_pointer_checks): New function.
* lib/target-supports.exp(check_effective_target_keeps_null_pointer_checks): New function.
* gcc.dg/tree-ssa/20030730-1.c: Use keeps_null_pointer_checks to determine correct test response.
* gcc.dg/tree-ssa/20030730-2.c: Ditto.
* gcc.dg/tree-ssa/pr20701.c: Ditto.
* gcc.dg/tree-ssa/pr20702.c: Ditto.
* gcc.dg/tree-ssa/pr21086.c: Ditto.
* gcc.dg/tree-ssa/vrp02.c:: Ditto.
* gcc.dg/tree-ssa/vrp07.c:: Ditto.
* gcc.dg/tree-ssa/vrp08.c:: Ditto.

From-SVN: r136970
2008-06-19 22:08:25 +00:00
Andy Hutchinson
15f0f116ce * gcc.dg/pragma-pack-4.c: Skip for AVR target.
From-SVN: r136969
2008-06-19 22:03:05 +00:00
Jan Hubicka
dea33aa707 builtins.c (expand_builtin_nonlocal_goto): Stabilize r_sp before clobbering framepointer.
* builtins.c (expand_builtin_nonlocal_goto): Stabilize r_sp before
	clobbering framepointer.

From-SVN: r136959
2008-06-19 18:00:12 +00:00
Jan Hubicka
bad5e2b575 tree-optimize.c (execute_early_local_optimizations): Set cgraph_state only at first invocation.
* tree-optimize.c (execute_early_local_optimizations): Set
	cgraph_state only at first invocation.

From-SVN: r136958
2008-06-19 17:48:14 +00:00
Uros Bizjak
f1469150c6 i386.md (*jcc_fused_1): Use ASM_COMMENT_START instead of "#" in insn asm template.
* config/i386/i386.md (*jcc_fused_1): Use ASM_COMMENT_START
	instead of "#" in insn asm template.
	(*jcc_fused_2): Ditto.

From-SVN: r136956
2008-06-19 19:28:42 +02:00
Kaveh R. Ghazi
00066bc059 system.h (-Wc++-compat): Activate as a warning, no an error.
* system.h (-Wc++-compat): Activate as a warning, no an error.

From-SVN: r136955
2008-06-19 17:03:46 +00:00
Uros Bizjak
354f84af67 i386.h (ix86_tune_indices): New.
* config/i386/i386.h (ix86_tune_indices)
	[X86_TUNE_FUSE_CMP_AND_BRANCH]: New.
	(TARGET_FUSE_CMP_AND_BRANCH): New define.
	* config/i386/i386.md (*jcc_fused_1): New insn pattern
	(*jcc_fused_2): Ditto.
	* config/i386/i386.c (ix86_tune_features): Add m_CORE2 to
	X86_TUNE_USE_VECTOR_COMPARES targets.
	(print operand): Handle 'E' and 'e' code.

From-SVN: r136954
2008-06-19 18:39:35 +02:00
Anatoly Sokolov
720705d233 avr.c (avr_mcu_t): Add attiny13a.
* config/avr/avr.c (avr_mcu_t): Add attiny13a.
	* config/avr/avr.h (LINK_SPEC, CRT_BINUTILS_SPECS): (Ditto.).
	* config/avr/t-avr (MULTILIB_MATCHES): (Ditto.).

From-SVN: r136953
2008-06-19 20:34:05 +04:00
Eric Blake
6819ba36b3 Adjust strsignal to POSIX 200x prototype.
2008-06-19  Eric Blake  <ebb9@byu.net>

	Adjust strsignal to POSIX 200x prototype.
	* strsignal.c (strsignal): Remove const.

From-SVN: r136949
2008-06-19 15:08:53 +00:00
Jakub Jelinek
09a46078e1 * testsuite/libgomp.c/nqueens-1.c: New test.
From-SVN: r136942
2008-06-19 12:51:30 +02:00
Bernhard Reutner-Fischer
f30cfcb12f cgraphunit.c (cgraph_finalize_function): Remove redundant setting of node->decl.
2008-06-19  Bernhard Fischer  <aldot@gcc.gnu.org>

	* cgraphunit.c (cgraph_finalize_function): Remove redundant setting of
	node->decl.
	(cgraph_expand_function): Use local copy of decl.
	(cgraph_expand_all_functions): Remove redundant initialization of 
	order_pos.
	(cgraph_optimize): Reword internal_error message.

From-SVN: r136941
2008-06-19 10:59:19 +02:00
Chung-Lin Tang
23668cf768 arm-protos.h (arm_return_in_memory): Remove public arm_return_in_memory() prototype.
* arm-protos.h (arm_return_in_memory): Remove public
	arm_return_in_memory() prototype.
	* arm.c (arm_return_in_memory): Add static prototype, add target
	hook macro, change definition and comments.
	* arm.h (TARGET_RETURN_IN_MEMORY): Remove.

From-SVN: r136934
2008-06-19 02:51:26 +00:00
Ben Elliston
7292b8e4ba dfp.h, [...]: Remove references to IEEE 754R.
* dfp.h, dfp.c, config/dfp-bit.h, config/dfp-bit.c, real.h,
	real.c: Remove references to IEEE 754R.
	* doc/install.texi (Configuration): IEEE 754R -> IEEE 754-2008.
	* doc/libgcc.texi (Decimal float library routines): Likewise.

From-SVN: r136933
2008-06-19 11:13:53 +10:00
GCC Administrator
31dd593cdd Daily bump.
From-SVN: r136931
2008-06-19 00:17:35 +00:00
Andy Hutchinson
c227723584 * gcc.dg/builtin-apply2.c: Mark skip for avr target.
From-SVN: r136927
2008-06-19 00:00:01 +00:00
Andy Hutchinson
60f4b2bfa5 re PR middle-end/36571 (Default untyped return for AVR is byte register.)
PR c/36571
* gcc.dg/builtin-return-1.c: Mark as xfail on AVR.

From-SVN: r136926
2008-06-18 22:59:41 +00:00
Andy Hutchinson
9e0c1ff33b * gcc.dg/tree-ssa/loop-35.c: xfail avr target. Add new avr specific tests.
From-SVN: r136925
2008-06-18 22:41:32 +00:00
Andy Hutchinson
458426d934 forwprop-6.c: Use long or int to match size of float.
* gcc.dg/tree-ssa/forwprop-6.c: Use long or int to match size of float. Otherwise error.
* gcc.dg/tree-ssa/ssa-fre-7.c: Ditto.
* gcc.dg/tree-ssa/ssa-fre-8.c: Ditto.

From-SVN: r136923
2008-06-18 22:11:05 +00:00
Andy Hutchinson
5d597439cb * gcc.c-torture/execute/20020619-1.c: Correct for targets without 32 bit int.
From-SVN: r136922
2008-06-18 22:03:23 +00:00
Andy Hutchinson
8612ae05ea 20000320-1.x: Skip for AVR target.
* gcc.c-torture/execute/ieee/20000320-1.x: Skip for AVR target.
* gcc.c-torture/execute/ieee/rbug.x: Ditto.
* gcc.c-torture/execute/ieee/pr30704.x: Add new file. Skip for AVR target.
* gcc.c-torture/execute/ieee/unsafe-fp-assoc-1.x: Ditto.

From-SVN: r136921
2008-06-18 21:58:56 +00:00
Andy Hutchinson
f4f656c65e re PR testsuite/36284 (gcc.dg-struct-layout fails AVR target - multiple reasons)
PR testsuite/36284
* gcc.dg/compat/struct-layout-1_generate.c (switchfiles): Require int32plus for generated main files.

From-SVN: r136920
2008-06-18 21:53:20 +00:00
Andy Hutchinson
93aa3ec6df re PR c/36470 (sizeof UTF-32 is 2 on AVR)
PR c/36460
* gcc.dg/utf32-1.c: Mark xfail for AVR target.
* gcc.dg/utf32-2.c: Ditto.
* gcc.dg/utf32-3.c: Ditto.

From-SVN: r136919
2008-06-18 21:48:50 +00:00
Andy Hutchinson
77cacee417 limits-fndefn.c: Skip for AVR.
* gcc.c-torture/compile/limits-fndefn.c: Skip for AVR.
* gcc.dg/builtins-config.h: Use standard independent __AVR__ symbol.
* gcc.dg/cdce1.c: Skip for AVR.
* gcc.dg/cdce2.c: Ditto.
* gcc.dg/fold-bitand-1.c: Ignore warnings such as alignment.
* gcc.dg/fold-eqandshift-3.c: Use long on AVR.
* gcc.dg/fold-overflow-1.c: Skip for AVR.
* gcc.dg/multiple-overflow-warn-3.c: Use target independent macro for ms bit position.
* gcc.dg/pch/struct-1.c: Allow for target without 32 bit int.
* gcc.dg/tree-ssa/pr33920.c: Add warning check for AVR.
* gcc.dg/ucnid-5.c: Skip for AVR.
* gcc.dg/Wconversion-5.c: Mark warning xfail for AVR target.
* gcc.dg/Wconversion-real-integer.c: Skip for AVR.
* gcc.dg/Wconversion-real.c: Ditto.
* gcc.dg/wtr-conversion-1.c: Add warning test for AVR.
* gcc.dg/utf-cvt.c: Skip tests and mark excess xfail for AVR.
* gcc.dg/Wtype-limits-Wextra.c: Ditto.
* gcc.dg/Wtype-limits.c: Ditto.

From-SVN: r136918
2008-06-18 21:41:13 +00:00
Joseph Myers
0cf7fb1fd8 convert-bfp-6.c, [...]: XFAIL for lax_strtofp.
* gcc.dg/dfp/convert-bfp-6.c, gcc.dg/dfp/convert-bfp-9.c: XFAIL
	for lax_strtofp.

From-SVN: r136916
2008-06-18 22:17:01 +01:00
Joseph Myers
1b811175ce * lib/target-supports.exp
(check_effective_target_powerpc_hard_double): New.
	* gcc.dg/tree-ssa/loop-19.c: Use powerpc_hard_double instead of
	powerpc*-*-*.

From-SVN: r136914
2008-06-18 22:14:28 +01:00
Ulrich Weigand
7b0518e33c targhooks.h (struct gcc_target): New member unwind_word_mode.
* targhooks.h (struct gcc_target): New member unwind_word_mode.
	(default_unwind_word_mode): Add prototype.
	* targhooks.c (default_unwind_word_mode): New function.
	(default_eh_return_filter_mode): Return targetm.unwind_word_mode ()
	instead of word_mode.
	* target-def.h (TARGET_UNWIND_WORD_MODE): New macro.
	(TARGET_INITIALIZER): Use it.

	* c-common.c (handle_mode_attribute): Support "unwind_word"
	mode attribute.
	* unwind-generic.h (_Unwind_Word, _Unwind_Sword): Use it.

	* except.c (init_eh): Use targetm.unwind_word_mode () instead of
	word_mode to access SjLj_Function_Context member "data".
	(sjlj_emit_dispatch_table): Likewise.  Also, perform type
	conversion from targetm.eh_return_filter_mode () to
	targetm.unwind_word_mode () if they differ.

	* builtin-types.def (BT_UNWINDWORD): New primitive type.
	(BT_FN_UNWINDWORD_PTR): New function type.
	(BT_FN_WORD_PTR): Remove.
	* builtins.def (BUILT_IN_EXTEND_POINTER): Use BT_FN_UNWINDWORD_PTR.
	* except.c (expand_builtin_extend_pointer): Convert pointer to
	targetm.unwind_word_mode () instead of word_mode.

	* config/spu/spu-protos.h (spu_eh_return_filter_mode): Remove.
	* config/spu/spu.c (spu_eh_return_filter_mode): Remove.
	(spu_unwind_word_mode): New function.
	(TARGET_EH_RETURN_FILTER_MODE): Do not define.
	(TARGET_UNWIND_WORD_MODE): Define.
	* config/spu/t-spu-elf (TARGET_LIBGCC2_CFLAGS): Remove -D__word__=SI.

From-SVN: r136912
2008-06-18 20:49:12 +00:00
Ulrich Weigand
aa5d993918 spu.c (reg_align): Remove.
* config/spu/spu.c (reg_align): Remove.
	(regno_aligned_for_load): Also accept ARG_POINTER_REGNUM.
	(spu_split_load): Use regno_aligned_for_load instead of reg_align.
	(spu_split_store): Likewise.

From-SVN: r136910
2008-06-18 20:32:04 +00:00
Ralf Wildenhues
3d97d3ec1c dtoa.c: include stdlib.h, for 'free'.
libjava/classpath/

	* native/fdlibm/dtoa.c: include stdlib.h, for 'free'.

From-SVN: r136908
2008-06-18 19:52:21 +00:00
Bernhard Fischer
a7816b82f0 tree-vn.c: Fix typo in comment.
2006-06-18  Bernhard Fischer  <aldot@gcc.gnu.org>

	* gcc/tree-vn.c: Fix typo in comment.

From-SVN: r136906
2008-06-18 21:35:15 +02:00
Jan Hubicka
45f09afb96 cgraphunit.c (cgraph_optimize): Output debug info when doing toplevel reorder too.
* cgraphunit.c (cgraph_optimize): Output debug info when doing
	toplevel reorder too.

From-SVN: r136905
2008-06-18 19:09:08 +00:00
Jan Hubicka
a7bf199e10 c-opts.c (c_common_post_options): PCH is not compatible with no-unit-at-a-time.
* c-opts.c (c_common_post_options): PCH is not compatible with
	no-unit-at-a-time.
	* opts.c (handle_options): Enable unit-at-a-time at O0 along with
	-fno-toplevel-reorder by default now.
	* gcc.dg/weak/weak-2.c: We no longer complain about incompatibilty.
	* gcc.dg/weak/weak-3.c: We no longer complain about incompatibilty.
	* gcc.dg/weak/weak-4.c: We no longer complain about incompatibilty.
	* gcc.dg/weak/weak-5.c: We no longer complain about incompatibilty.
	* gcc.dg/weak/weak-6.c: Fix thinko in previous change.
	* gcc.dg/weak/weak-7.c: Likewise.

From-SVN: r136903
2008-06-18 19:07:51 +00:00
Ralf Wildenhues
3f737aa914 re PR bootstrap/30739 (awk Prerequisite is not documented)
gcc/
	PR documentation/30739
	* doc/install.texi (Prerequisites): Document dependency on awk.

From-SVN: r136902
2008-06-18 18:46:35 +00:00
Uros Bizjak
ba03a3508b re PR rtl-optimization/35604 (Label references are not updated after edge insertion)
PR rtl-optimization/35604
	* jump.c (redirect_exp_1): Skip the condition of an IF_THEN_ELSE. We
	only want to change jump destinations, not eventual label comparisons.

From-SVN: r136899
2008-06-18 19:16:05 +02:00
Jan Hubicka
fdd7f24186 cgraphunit.c (cgraph_expand_pending_functions): Give up at syntax errors.
* cgraphunit.c (cgraph_expand_pending_functions): Give up at
	syntax errors.
	(cgraph_analyze_function): Likewise.
	* gcc.dg/asm-wide-1.c: Do not require extra errors we output
	confused by earlier errors.
	* gcc.target/i386/sseregparm-2.c: Remove markers for errors not
	output at parsing time.
	* gcc.target/i386/sseregparm-8.c: Move here compile time errors
	from gcc.target/i386/sseregparm-2.c.
	* gcc.dg/weak/weak-6.c: Do not require extra errors we output
	confused by earlier errors.
	* gcc.dg/weak/weak-7.c: Likewise.

From-SVN: r136895
2008-06-18 14:07:00 +00:00
Daniel Kraft
d28480827e PR fortran/36517, fortran/36492
2008-06-18  Daniel Kraft  <d@domob.eu>

	PR fortran/36517, fortran/36492
	* gfortran.dg/array_constructor_25.f03:  New test.
	* gfortran.dg/array_constructor_26.f03:  New test.
	* gfortran.dg/array_constructor_27.f03:  New test.
	* gfortran.dg/array_constructor_28.f03:  New test.
	* gfortran.dg/array_constructor_29.f03:  New test.
	* gfortran.dg/array_constructor_30.f03:  New test.
	* gfortran.dg/array_constructor_type_19.f03:  New test.
	* gfortran.dg/array_constructor_type_20.f03:  New test.
	* gfortran.dg/array_constructor_type_21.f03:  New test.

2008-06-18  Daniel Kraft  <d@domob.eu>

	PR fortran/36517, fortran/36492
	* array.c (gfc_resolve_character_array_constructor):  Call
	gfc_set_constant_character_len with changed length-chec argument.
	* decl.c (gfc_set_constant_character_len):  Changed array argument to
	be a generic length-checking argument that can be used for correct
	checking with typespec and in special cases where the should-be length
	is different from the target length.
	(build_struct):  Call gfc_set_constant_character_len with changed length
	checking argument and introduced additional checks for exceptional
	conditions on invalid code.
	(add_init_expr_to_sym), (do_parm):  Call gfc_set_constant_character_len
	with changed argument.
	* match.h (gfc_set_constant_character_len):  Changed third argument to
	int for the should-be length rather than bool.

From-SVN: r136894
2008-06-18 15:53:32 +02:00
Jan Hubicka
f0c882ab6f cgraph.h (cgraph_mark_if_needed): New function.
* cgraph.h (cgraph_mark_if_needed): New function.
	* cgraphunit.c (cgraph_mark_if_needed): New function.
	* c-decl.c (duplicate_decl): Use it.

From-SVN: r136893
2008-06-18 13:42:36 +00:00
Jan Hubicka
ff2c88a561 cgraph.c (cgraph_add_new_function): When in expansion state, do lowering.
* cgraph.c (cgraph_add_new_function): When in expansion state, do lowering.

	* method.c: Include cgraph.h.
	(use_thunk): Use cgraph_add_new_function instead of calling backend directly.

From-SVN: r136892
2008-06-18 13:39:43 +00:00
Jan Hubicka
b7352f3f9a * tree-outof-ssa.c (pass_out_of_ssa): Do not depend on PROP_alias.
From-SVN: r136891
2008-06-18 13:37:45 +00:00
Daniel Jacobowitz
900e3ae581 config.gcc (mips64el-st-linux-gnu): Use mips/st.h and mips/t-st.
* config.gcc (mips64el-st-linux-gnu): Use mips/st.h and mips/t-st.
	* config.host: Use driver-native.o and mips/x-native for mips*-linux*.
	* config/mips/linux.h (host_detect_local_cpu): Declare, add to
	EXTRA_SPEC_FUNCTIONS.
	(MARCH_MTUNE_NATIVE_SPECS, BASE_DRIVER_SELF_SPECS): New macros.
	(DRIVER_SELF_SPECS): Adjust.
	* config/mips/linux64.h (DRIVER_SELF_SPECS): Update.
	* config/mips/st.h, config/mips/t-st: New.
	* config/mips/driver-native.c, config/mips/x-native: New.
	* doc/invoke.texi (MIPS): Document 'native' value for -march and
	-mtune options.

Co-Authored-By: Kazu Hirata <kazu@codesourcery.com>

From-SVN: r136888
2008-06-18 08:28:07 +00:00
Maxim Kuvyrkov
b51469a5d8 mips.h (ISA_HAS_CONDMOVE): Slice ISA_HAS_FP_CONDMOVE from it.
* config/mips/mips.h (ISA_HAS_CONDMOVE): Slice ISA_HAS_FP_CONDMOVE
	from it.
	(ISA_HAS_FP_CONDMOVE): New macro.
	(ISA_HAS_FP_MADD4_MSUB4, ISA_HAS_FP_MADD3_MSUB3): New macros.
	(ISA_HAS_NMADD_NMSUB): Rename to ISA_HAS_NMADD4_NMSUB4.
	(ISA_HAS_NMADD3_NMSUB3): New macro.
	* config/mips/mips.c (mips_rtx_costs): Update.
	* config/mips/mips.md (MOVECC): Don't use FP conditional moves when
	compiling for ST Loongson 2E/2F.
	(madd<mode>): Rename to madd4<mode>.  Update.
	(madd3<mode>): New pattern.
	(msub<mode>): Rename to msub4<mode>.  Update.
	(msub3<mode>): New pattern.
	(nmadd<mode>): Rename to nmadd4<mode>.  Update.
	(nmadd3<mode>): New pattern.
	(nmadd<mode>_fastmath): Rename to nmadd4<mode>_fastmath.  Update.
	(nmadd3<mode>_fastmath): New pattern.
	(nmsub<mode>): Rename to nmsub4<mode>.  Update.
	(nmsub3<mode>): New pattern.
	(nmsub<mode>_fastmath): Rename to nmsub4<mode>_fastmath.  Update.
	(nmsub3<mode>_fastmath): New pattern.
	(mov<SCALARF:mode>_on_<MOVECC:mode>, mov<mode>cc): Update.

From-SVN: r136887
2008-06-18 07:39:45 +00:00
Steven Bosscher
50e94c7e58 df.h (struct df_ref): Replace 'insn' field with 'insn_info' field.
* df.h (struct df_ref): Replace 'insn' field with 'insn_info' field.
	(DF_REF_INSN_INFO): New.
	(DF_REF_INSN, DF_REF_INSN_UID): Rewrite macros using DF_REF_INSN_INFO.
	(DF_REF_IS_ARTIFICIAL): Artificial refs are now identified as refs
	with a NULL DF_REF_INSN_INFO.
	(DF_INSN_INFO_GET, DF_INSN_INFO_SET): Renamed from DF_INSN_GET and
	DF_INSN_SET.
	(DF_INSN_INFO_LUID, DF_INSN_INFO_DEFS, DF_INSN_INFO_USES,
	DF_INSN_INFO_EQ_USES): New.
	(DF_INSN_LUID, DF_INSN_DEFS, DF_INSN_USES, DF_INSN_EQ_USES,
	DF_INSN_UID_LUID, DF_INSN_UID_DEFS, DF_INSN_UID_USES,
	DF_INSN_UID_EQ_USES): Rewrite using DF_INSN_INFO_* macros.
	* df-core.c: Update comment for above changes.
	(df_insn_debug_regno): Use DF_INSN_INFO_GET instead of INSN_UID and
	DF_INSN_UID_* macros.
	(df_ref_debug): Check for NULL DF_REF_INSN_INFO.
	* df-scan.c (df_ref_record): Take a df_insn_info instead of an
	insn rtx.  Update all callers.
	(df_def_record_1, df_defs_record, df_uses_record, df_get_call_refs,
	df_ref_create_structure, df_insn_refs_collect): Likewise.
	(df_ref_equal_p): Compare DF_REF_INSN_INFO pointers for the refs.
	* df-problems.c (df_chain_dump): Test for non-NULL DF_REF_INSN_INFO.
	(df_live_bb_local_compute): Retrieve DF_INSN_INFO, use DF_INSN_INFO_*
	macros to access the insn refs.
	(df_chain_top_dump, df_chain_bottom_dump, df_byte_lr_alloc): Likewise.
	* fwprop.c (use_killed_between): Use DF_REF_INSN accessor macro.
	(all_uses_available): Retrieve DF_INSN_INFO for def_insn, and use it
	for accessing the refs.
	(try_fwprop_subst): Likewise.
	* ddg.c (add_cross_iteration_register_deps): Use DF_REF_INSN macro.
	* web.c (union_defs): Retrieve DF_INSN_INFO for def_insn, and use it
	for accessing the refs.
	* loop-invariant.c (invariant_for_use): Use DF_REF_BB macro.
	(check_dependencies): Use DF_INSN_INFO_GET, use DF_INSN_INFO_* macros
	to look at the insn refs.
	(record_uses): Likewise.
	* dce.c (deletable_insn_p): Don't tolerate artificial DEFs in this
	function anymore.
	(mark_artificial_uses): Don't mark_insn for artificial refs.
	(mark_reg_rependencies): Likewise.

	* doc/rtl.texi: Remove documentation of ADDRESSOF.

From-SVN: r136885
2008-06-18 05:42:23 +00:00