Commit Graph

73452 Commits

Author SHA1 Message Date
Thomas Koenig
eaa90d25da re PR fortran/23815 (Add -byteswapio flag)
2005-02-06  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	* gfortran.texi: Document the GFORTRAN_CONVERT_UNIT environment
	variable.
	* invoke.texi:  Mention the "Runtime" chapter.
	Document the -fconvert= option.
	* gfortran.h:  Add options_convert.
	* lang.opt:  Add fconvert=little-endian, fconvert=big-endian,
	fconvert=native and fconvert=swap.
	* trans-decl.c (top level):  Add gfor_fndecl_set_convert.
	(gfc_build_builtin_function_decls):  Set gfor_fndecl_set_convert.
	(gfc_generate_function_code):  If -fconvert was specified,
	and this is the main program, add a call to set_convert().
	* options.c:  Handle the -fconvert options.

2005-02-06  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	* runtime/environ.c (init_unformatted):  Add GFORTRAN_CONVERT_UNIT
	environment variable.
	(top level):  Add defines, type and static variables for
	GFORTRAN_CONVERT_UNIT handling.
	(search_unit):  New function.
	(match_word): New function.
	(match_integer): New function.
	(next_token): New function.
	(push_token): New function.
	(mark_single): New function.
	(mark_range): New funciton.
	(do_parse): New function.
	(init_unformatted): New function.
	(get_unformatted_convert): New function.
	* runtime/compile_options.c:  Add set_convert().
	* libgfortran.h:  Add convert to compile_options_t.
	* io/open.c (st_open): Call get_unformatted_convert to get
	unit default; if CONVERT_NONE is returned, check for
	the presence of a CONVERT specifier and use it.
	As default, use compile_options.convert.
	* io/io.h (top level): Add CONVERT_NONE to unit_convert, to signal
	"nothing has been set".
	(top level): Add prototype for get_unformatted_convert.

2005-02-06  Thomas Koenig  <Thomas.Koenig@online.de>

	PR libfortran/23815
	* unf_io_convert_4.f90:  New test.

From-SVN: r110664
2006-02-06 20:12:44 +00:00
Roger Sayle
431ef78e8e ChangeLog: Use the final approved ChangeLog entry text for the previous commit.
* ChangeLog: Use the final approved ChangeLog entry text for
	the previous commit.

From-SVN: r110661
2006-02-06 18:50:44 +00:00
Roger Sayle
42e73749c7 trans-stmt.c (gfc_evaluate_where_mask): Allow the NMASK argument to be NULL to indicate that the not mask isn't required.
* trans-stmt.c (gfc_evaluate_where_mask): Allow the NMASK argument
	to be NULL to indicate that the not mask isn't required.
	(gfc_trans_where_2): Remove PMASK argument.  Avoid calculating the
	pending mask for the last clause of a WHERE chain.  Update recursive
	call.
	(gfc_trans_forall_1): Update call to gfc_trans_where_2.
	(gfc_trans_where): Likewise.

From-SVN: r110659
2006-02-06 18:48:38 +00:00
Andrew Pinski
4505055765 re PR target/23359 (Many Solaris 10/x86 testsuite failures with native as: use of .word)
2006-02-06  Andrew Pinski  <pinskia@physics.uc.edu>

        PR target/23359
        * config/i386/i386.md (trap): Use ASM_SHORT instead of .word.

From-SVN: r110657
2006-02-06 10:39:30 -08:00
Zdenek Dvorak
10d2256750 tree-vrp.c (execute_vrp): Do not pass dump argument to.
* tree-vrp.c (execute_vrp): Do not pass dump argument to.
	loop_optimizer_init and loop_optimizer_finalize
	* tree-ssa-sink.c (execute_sink_code): Ditto.
	* tree-ssa-loop-ch.c (copy_loop_headers): Ditto.
	* tree-ssa-loop.c (tree_loop_optimizer_init, tree_ssa_loop_init,
	tree_ssa_loop_done): Ditto.
	* tree-ssa-pre.c (init_pre, fini_pre): Ditto.
	* sched-ebb.c: Include output.h.
	(schedule_ebbs): Do not use dump argument.
	* value-prof.h (struct profile_hooks): Remove profile_dump_file.
	* loop.c (loop_dump_stream): Removed.
	(loop_optimize, rest_of_handle_loop_optimize): Do not use dump
	argument.
	(scan_loop, move_movables, find_and_verify_loops, mark_loop_jump,
	emit_prefetch_instructions, loop_bivs_find, loop_bivs_check,
	final_biv_value, loop_biv_eliminable_p, loop_givs_rescan,
	loop_iterations, strength_reduce, record_biv, record_giv,
	final_giv_value, check_final_value, check_ext_dependent_givs,
	combine_givs, check_dbra_loop, maybe_eliminate_biv, load_mems,
	try_copy_prop, loop_delete_insns, try_swap_copy_prop): Use
	dump_file instead of loop_dump_stream.
	* ddg.c (print_ddg_edge, print_ddg, vcg_print_ddg): Do not call
	argument dump_file.
	* reorg.c (dbr_schedule, rest_of_handle_delay_slots): Do not use
	dump argument.
	* flow.c (life_analysis, rest_of_handle_life): Ditto.
	* haifa-sched.c: Include output.h
	(schedule_insns, sched_init): Do not use dump argument.
	* mode-switching.c (optimize_mode_switching): Ditto.
	* modulo-sched.c (stats_file): Removed.
	(print_node_sched_params): Do not call argument dump_file.
	(sms_schedule_by_order, loop_canon_p, sms_schedule,
	rest_of_handle_sms): Do not use dump argument.  Use dump_file instead
	of stats_file.
	* cse.c (cse_main, rest_of_handle_cse, rest_of_handle_cse2): Do not
	use dump argument.
	* loop-init.c (loop_optimizer_init, loop_optimizer_finalize,
	rtl_loop_init, rtl_loop_done): Ditto.
	* global.c (global_alloc, rest_of_handle_global_alloc): Ditto.
	* predict.c (combine_predictions_for_bb, tree_estimate_probability):
	Ditto.
	* recog.c (peephole2_optimize, rest_of_handle_peephole2): Ditto.
	* lcm.c (pre_edge_lcm, pre_edge_rev_lcm): Ditto.
	* regmove.c (fixup_match_1, fixup_match_2, regmove_optimize,
	rest_of_handle_regmove, rest_of_handle_stack_adjustments): Ditto.
	* emit-rtl.c (renumber_insns): Ditto.
	* cfgexpand.c (add_reg_br_prob_note, expand_gimple_cond_expr,
	expand_gimple_basic_block, tree_expand_cfg): Ditto.
	* regclass.c (regclass): Ditto.
	* tree-outof-ssa.c (analyze_edges_for_bb, perform_edge_inserts,
	remove_ssa_form, rewrite_out_of_ssa): Ditto.
	* reg-stack.c (compensate_edge, compensate_edges, convert_regs_1,
	convert_regs_2, convert_regs, reg_to_stack, rest_of_handle_stack_regs):
	Ditto.
	* sched-rgn.c (schedule_insns, rest_of_handle_sched): Ditto.
	* local-alloc.c (rest_of_handle_local_alloc): Do not pass dump_file
	to regclass.
	* gcse.c (gcse_file, debug_stderr): Removed.
	(gcse_main, bypass_jumps, rest_of_handle_jump_bypass,
	rest_of_handle_gcse): Do not use dump argument.
	(cprop_jump, cprop_insn, do_local_cprop, cprop, find_implicit_sets,
	one_cprop_pass, bypass_block, compute_pre_data, insert_insn_end_bb,
	pre_edge_insert, pre_insert_copy_insn, pre_delete, one_pre_gcse_pass,
	compute_code_hoist_vbeinout, compute_code_hoist_data,
	one_code_hoisting_pass, trim_ld_motion_mems, update_ld_motion_stores,
	compute_store_table, build_store_vectors, insert_insn_start_bb,
	insert_store, remove_reachable_equiv_notes, replace_store_insn,
	store_motion): Use dump_file instead of gcse_file.
	* ipa-type-escape.c (type_escape_execute): Remove debugging comments.
	* profile.c (profile_dump_file): Removed.
	(branch_prob): Use dump_file instead of profile_dump_file.
	* ipa.c (cgraph_remove_unreachable_nodes): Do not call argument
	dump_file.
	* tree-ssa-copy.c (dump_copy_of): Ditto.
	* rtl-factoring.c (rtl_seqabstr, rest_of_rtl_seqabstr): Do not pass
	dump file to life_analysis.
	* bt-load.c (branch_target_load_optimize): Ditto.
	* cfgcleanup.c (rest_of_handle_jump2): Do not pass dump_file to
	renumber_insns.
	* rtl.h (cse_main, renumber_insns, schedule_insns, schedule_ebbs,
	regclass, dbr_schedule): Declaration changed.
	* sched-int.h (sched_init): Declaration changed.
	* tree-profile.c (tree_profile_dump_file): Removed.
	(tree_profile_hooks): Removed profile_dump_file hook.
	* rtl-profile (rtl_profile_dump_file): Removed.
	(rtl_profile_hooks): emoved profile_dump_file hook.
	* cfgloop.h (loop_optimizer_init, loop_optimizer_finalize): Declaration
	changed.
	* c-gimplify.c (c_genericize): Do not call local variable dump_file.
	* tree-cfg.c (build_tree_cfg): Ditto.
	* Makefile.in (haifa-sched.o, sched-ebb.o): Add output.h dependency.
	* basic-block.h (life_analysis, pre_edge_lcm, pre_edge_rev_lcm):
	Declaration changed.
	* config/sh/sh.c (sh_output_mi_thunk): Do not pass dump_file to
	life_analysis and schedule_insns.
	* config/m68hc11/m68hc11.c (m68hc11_reorg): Do not pass dump_file to
	life_analysis.
	* config/mt/mt.c (mt_machine_reorg): Do not pass dump_file to
	dbr_schedule.
	* config/mips/mips.c (mips_reorg): Ditto.
	* config/ia64/ia64.c (ia64_reorg): Do not pass dump_file to
	schedule_ebbs.

From-SVN: r110656
2006-02-06 18:20:47 +00:00
Aldy Hernandez
7269aee7d5 s390.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
2006-02-06  Aldy Hernandez  <aldyh@redhat.com>

	* config/s390/s390.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
	(s390_mangle_fundamental_type): New.
	* config/s390/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
	Define.

	* config/alpha/alpha.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
	(alpha_mangle_fundamental_type): New.
	* config/alpha/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
	Define.

	* config/sparc/linux.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
	Define.
	* config/sparc/linux64.h (TARGET_ALTERNATE_LONG_DOUBLE_MANGLING):
	Define.
	* config/sparc/sparc.c (TARGET_MANGLE_FUNDAMENTAL_TYPE): Define.
	(sparc_mangle_fundamental_type): New.

From-SVN: r110655
2006-02-06 18:45:00 +01:00
Jakub Jelinek
da8c4a55ee config.gcc (s390-*-linux*): Add s390/t-linux to tmake_file.
* config.gcc (s390-*-linux*): Add s390/t-linux to tmake_file.
	(s390x-*-linux*): Likewise.
	* config/s390/t-linux64 (SHLIB_MAPFILES): Removed.
	* config/s390/t-linux: New file.

From-SVN: r110654
2006-02-06 18:41:54 +01:00
Jakub Jelinek
417ab240ee backport: trans-decl.c (create_function_arglist): Handle dummy functions.
Backport from gomp-20050608-branch
	* trans-decl.c (create_function_arglist): Handle dummy functions.

	* trans-decl.c (gfc_get_symbol_decl): Revert explicit setting of
	TYPE_SIZE_UNIT.
	(gfc_trans_vla_type_sizes): Also "gimplify"
	GFC_TYPE_ARRAY_DATAPTR_TYPE for GFC_DESCRIPTOR_TYPE_P types.
	* trans-array.c (gfc_trans_deferred_array): Call
	gfc_trans_vla_type_sizes.

	* trans-decl.c (saved_function_decls, saved_parent_function_decls):
	Remove unnecessary initialization.
	(create_function_arglist): Make sure __result has complete type.
	(gfc_get_fake_result_decl): Change current_fake_result_decl into
	a tree chain.  For entry master, create a separate variable
	for each result name.  For BT_CHARACTER results, call
	gfc_finish_var_decl on length even if it has been already created,
	but not pushdecl'ed.
	(gfc_trans_vla_type_sizes): For function/entry result, adjust
	result value type, not the FUNCTION_TYPE.
	(gfc_generate_function_code): Adjust for current_fake_result_decl
	changes.
	(gfc_trans_deferred_vars): Likewise.  Call gfc_trans_vla_type_sizes
	even on result if it is assumed-length character.

	* trans-decl.c (gfc_trans_dummy_character): Add SYM argument.
	Call gfc_trans_vla_type_sizes.
	(gfc_trans_auto_character_variable): Call gfc_trans_vla_type_sizes.
	(gfc_trans_vla_one_sizepos, gfc_trans_vla_type_sizes_1,
	gfc_trans_vla_type_sizes): New functions.
	(gfc_trans_deferred_vars): Adjust gfc_trans_dummy_character
	callers.  Call gfc_trans_vla_type_sizes on assumed-length
	character parameters.
	* trans-array.c (gfc_trans_array_bounds,
	gfc_trans_auto_array_allocation, gfc_trans_dummy_array_bias): Call
	gfc_trans_vla_type_sizes.
	* trans.h (gfc_trans_vla_type_sizes): New prototype.

	* trans-decl.c (gfc_build_qualified_array): For non-assumed-size
	arrays without constant size, create also an index var for
	GFC_TYPE_ARRAY_SIZE (type).  If the type is incomplete, complete
	it as 0..size-1.
	(gfc_create_string_length): Don't call gfc_defer_symbol_init
	if just creating DECL_ARGUMENTS.
	(gfc_get_symbol_decl): Call gfc_finish_var_decl and
	gfc_defer_symbol_init even if ts.cl->backend_decl is already
	set to a VAR_DECL that doesn't have DECL_CONTEXT yet.
	(create_function_arglist): Rework, so that hidden length
	arguments for CHARACTER parameters are created together with
	the parameters.  Resolve ts.cl->backend_decl for CHARACTER
	parameters.  If the argument is a non-constant length array
	or CHARACTER, ensure PARM_DECL has different type than
	its DECL_ARG_TYPE.
	(generate_local_decl): Call gfc_get_symbol_decl even
	for non-referenced non-constant length CHARACTER parameters
	after optionally issuing warnings.
	* trans-array.c (gfc_trans_array_bounds): Set last stride
	to GFC_TYPE_ARRAY_SIZE (type) to initialize it as well.
	(gfc_trans_dummy_array_bias): Initialize GFC_TYPE_ARRAY_SIZE (type)
	variable as well.

	* trans-expr.c (gfc_conv_expr_val): Fix comment typo.

	* trans-stmt.c (gfc_trans_simple_do): Fix comment.

From-SVN: r110653
2006-02-06 18:15:51 +01:00
Roger Sayle
f44013ae3f decl.c (gnat_substitute_in_type): Don't handle CHAR_TYPE.
* decl.c (gnat_substitute_in_type): Don't handle CHAR_TYPE.

From-SVN: r110647
2006-02-06 14:53:21 +00:00
Bernd Schmidt
2cea5e8c50 sync.md (sync_add<mode>, [...]): Operand 0 is in-out.
* config/i386/sync.md (sync_add<mode>, sync_sub<mode>, sync_ior<mode>,
	sync_and<mode>, sync_xor<mode>): Operand 0 is in-out.

From-SVN: r110645
2006-02-06 14:27:21 +00:00
Daniel Berlin
85300b4692 tree-ssa-pre.c (bb_value_sets_t): Add antic_safe_loads.
2006-02-06  Daniel Berlin  <dberlin@dberlin.org>

	* tree-ssa-pre.c (bb_value_sets_t): Add antic_safe_loads.
	(ANTIC_SAFE_LOADS): New macro.
	(find_or_generate_expression): Add prototype.
	(set_contains_value): Allow null set for sake of not always having
	to allocate ANTIC_SAFE_LOADS.
	(phi_translate): Move placement of AGGREGATE_TYPE_P check.
	Allow COMPONENT_REF too.
	(valid_in_set): Allow COMPONENT_REF.
	Check ANTIC_SAFE_LOADS too.
	(compute_antic_aux): Print out ANTIC_SAFE_LOADS.
	(compute_rvuse_and_antic_safe): Add ANTIC_SAFE computation, and
	rename.
	(can_PRE_operation): Add COMPONENT_REF.
	(create_component_ref_by_pieces): New function.
	(create_expression_by_pieces): Use create_component_ref_by_pieces.
	(insert_aux): Move AGGREGATE_TYPE_P check here.
	(compute_avail): Set bb local stmt uids.
	(pass_pre): Use TODO_update_ssa_only_virtuals.

2006-02-06  Daniel Berlin  <dberlin@dberlin.org>

	* gcc.dg/tree-ssa/loadpre10.c: New test.
	* gcc.dg/tree-ssa/loadpre11.c: Ditto.
	* gcc.dg/tree-ssa/loadpre6.c: Expect one more elimination.
	* gcc.dg/tree-ssa/loadpre4.c: This should pass now.

From-SVN: r110644
2006-02-06 14:22:00 +00:00
Ben Elliston
8a46b94f6c decLibrary.c (__dec_byte_swap): Use uint32_t for argument and return types.
* decLibrary.c (__dec_byte_swap): Use uint32_t for argument and
	return types.

From-SVN: r110638
2006-02-06 15:27:16 +11:00
Ben Elliston
a4a9df5fee configure.ac: Unconditionally disable decimal float by default.
* configure.ac: Unconditionally disable decimal float by default.
	* configure: Regenerate.

From-SVN: r110637
2006-02-06 15:23:54 +11:00
Ben Elliston
b84d6ae99d * read-rtl.c (read_name): Terminate reading on EOF.
From-SVN: r110636
2006-02-06 15:11:54 +11:00
GCC Administrator
ad81b4ea3c Daily bump.
From-SVN: r110633
2006-02-06 00:17:50 +00:00
Francois-Xavier Coudert
df6ea78456 re PR libfortran/24685 (real(16) formatted input is broken for huge values (gfortran.dg/default_format_2.f90))
PR libfortran/24685

	* io/write.c (write_real): Widen the default format for real(10)
	variables output.

	* gfortran.dg/large_real_kind_form_io_2.f90: New test.

From-SVN: r110627
2006-02-05 23:04:07 +00:00
Ben Elliston
0b59f49d59 dfp.c (decimal_real_arithmetic): Change second argument type from int to enum tree_code.
* dfp.c (decimal_real_arithmetic): Change second argument type
	from int to enum tree_code. Do not always return true, but now
	return result of any call to decimal_do helper functions.
	* dfp.h (decimal_real_arithmetic): Update prototype.

From-SVN: r110626
2006-02-06 09:59:35 +11:00
Roger Sayle
3ded621059 dependency.c (gfc_check_dependency): Remove unused vars and nvars arguments.
* dependency.c (gfc_check_dependency): Remove unused vars and nvars
	arguments.  Replace with an "identical" argument.  A full array
	reference to the same symbol is a dependency if identical is true.
	* dependency.h (gfc_check_dependency): Update prototype.
	* trans-array.h (gfc_check_dependency): Delete duplicate prototype.
	* trans-stmt.c: #include dependency.h for gfc_check_dependency.
	(gfc_trans_forall_1): Update calls to gfc_check_dependency.
	(gfc_trans_where_2): Likewise.  Remove unneeded variables.
	(gfc_trans_where_3): New function for simple non-dependent WHEREs.
	(gfc_trans_where): Call gfc_trans_where_3 to translate simple
	F90-style WHERE statements without internal dependencies.
	* Make-lang.in (trans-stmt.o): Depend upon dependency.h.

From-SVN: r110625
2006-02-05 22:12:20 +00:00
Eric Botcazou
71ab8de85a sol2-bi.h (SPARC_DEFAULT_CMODEL): Set to CM_MEDMID.
* config/sparc/sol2-bi.h (SPARC_DEFAULT_CMODEL): Set to CM_MEDMID.

From-SVN: r110623
2006-02-05 21:53:00 +00:00
Andrew Pinski
cea0f4f1bd re PR tree-optimization/25251 ([4.1 only] NIST Failure - FM013.f at -O2)
2006-02-05  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25251
        * tree-cfg.c (cleanup_dead_labels): Also don't remove
        forced labels.

2006-02-05  Andrew Pinski  <pinskia@physics.uc.edu>

        PR tree-opt/25251
        * gfortran.dg/assign_7.f: New test.

From-SVN: r110621
2006-02-05 12:29:10 -08:00
Zdenek Dvorak
d78f3f787f tree-vrp.c (cfg_loops): Removed.
* tree-vrp.c (cfg_loops): Removed.
	(adjust_range_with_scev, vrp_visit_assignment, execute_vrp):
	Use current_loops instead of cfg_loops.  Pass flags to
	loop_optimizer_init.
	* cfgloopmanip.c (fix_loop_structure): Update only available
	information.
	* tree-ssa-loop-ch.c (copy_loop_headers): Pass flags to
	loop_optimizer_init.
	* modulo-sched.c (build_loops_structure): Removed.
	(sms_schedule): Use loop_optimizer_init.
	* loop-init.c (loop_optimizer_init): Use flags to determine
	which properties of loops to prepare.
	(rtl_loop_init): Pass flags to loop_optimizer_init.
	* tree-ssa-sink.c (execute_sink_code): Ditto.
	* tree-ssa-loop.c (tree_loop_optimizer_init): Ditto.
	* tree-ssa-pre.c (init_pre): Ditto.
	* cfgloop.h (LOOPS_NORMAL): New.
	(loop_optimizer_init): Declaration changed.

From-SVN: r110620
2006-02-05 20:14:59 +00:00
H.J. Lu
efb0828de3 re PR fortran/26041 ([4.1]: FORTRAN compiler won't compile the valid code)
2006-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/26041
	PR fortran/26064
	* resolve.c (resolve_types): New function.
	(resolve_codes): Likewise.
	(gfc_resolve): Use them.

From-SVN: r110619
2006-02-05 11:53:00 -08:00
H.J. Lu
c235e3884f re PR fortran/26041 ([4.1]: FORTRAN compiler won't compile the valid code)
2006-02-05  H.J. Lu  <hongjiu.lu@intel.com>

	PR fortran/26041
	PR fortran/26064
	* gfortran.dg/sibling_dummy_procedure_1.f90: New file.
	* gfortran.dg/sibling_dummy_procedure_2.f90: Likewise.
	* gfortran.dg/sibling_dummy_procedure_3.f90: Likewise.

From-SVN: r110618
2006-02-05 11:52:35 -08:00
Roger Sayle
c2a11bfcc0 trans-stmt.c (gfc_evaluate_where_mask): Use LOGICAL*1 for WHERE masks instead of LOGICAL*4.
* trans-stmt.c (gfc_evaluate_where_mask): Use LOGICAL*1 for WHERE
	masks instead of LOGICAL*4.

From-SVN: r110617
2006-02-05 16:59:48 +00:00
John David Anglin
5a1a44503e x-ada-hpux10, [...]: New files.
* pa/x-ada-hpux10, pa/t-pa-hpux10, pa/t-pa-hpux11: New files.
	* config.gcc (hppa[12]*-*-hpux10*): Use pa/t-pa-hpux10 instead of
	pa/t-pa.
	* config.gcc (hppa[12]*-*-hpux11*): Use pa/t-pa-hpux11 instead of
	pa/t-pa.
	* config.host (hppa*-*-hpux10*): Use pa/x-ada-hpux10 instead of
	pa/x-ada.
	* pa/t-pa-hpux: Add lib2funcs.asm and quadlib.c rules.
	* pa/t-pa64: Delete quadlib.c rule.
	* pa/x-ada: Revert last change.
	* pa/t-pa: Revert last change.  Delete quadlib.c rule.

From-SVN: r110615
2006-02-05 15:54:49 +00:00
Zdenek Dvorak
569f8d982a re PR rtl-optimization/26087 (ICE in df_find_use)
PR rtl-optimization/26087
	* rtlanal.c (canonicalize_condition): Do not cross basic block
	boundaries.

From-SVN: r110614
2006-02-05 14:58:07 +00:00
Paolo Carlini
93638ec794 cstdio: New.
2006-02-05  Paolo Carlini  <pcarlini@suse.de>

	* include/tr1/cstdio: New.
	* include/tr1/stdio.h: Likewise.
	* include/Makefile.am: Add.
	* testsuite/tr1/8_c_compatibility/cstdio/functions.cc: New.
	* testsuite/tr1/headers.cc: Update.	
	* docs/html/ext/tr1.html: Update.

	* include/tr1/cwchar: Simplify, use _GLIBCXX_USE_C99, consistently
	with the facilities in std::.
	* include/tr1/cwctype: Likewise.
	* testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Tweak.
	* testsuite/tr1/8_c_compatibility/cwctype/functions.cc: Likewise.
	* acinclude.m4 ([GLIBCXX_CHECK_C99_TR1]): Remove <wchar.h> and
	<wctype.h> checks.

	* include/Makefile.in: Regenerate.
	* config.h.in: Likewise.
	* configure: Likewise.

From-SVN: r110613
2006-02-05 11:38:57 +00:00
Jakub Jelinek
dc2cd23211 * resolve.c (resolve_symbol): Initialize constructor_expr to NULL.
From-SVN: r110611
2006-02-05 12:25:05 +01:00
Jakub Jelinek
41441e2545 pr25990.c: Use __SIZE_TYPE__ instead of unsigned int in size_t typedef.
* gcc.dg/gomp/pr25990.c: Use __SIZE_TYPE__ instead of unsigned int
	in size_t typedef.

From-SVN: r110609
2006-02-05 11:02:55 +01:00
Gabriel Dos Reis
7235a4d415 extern2.cc (foo): Declare as of type cost char*.
* g++.dg/charset/extern2.cc (foo): Declare as of type cost char*.
	* g++.dg/charset/string.c (foo): Likewise.
	* g++.dg/ext/builtin1.C (printf): Change first parameter type to
	const char*
	* g++.dg/ext/builtin2.C (printf): Likewise.
	* g++.dg/init/new15.C (printf): Likewise.
	* g++.dg/opt/pr17697-1.C (foo): Likewise.
	* g++.dg/opt/pr17697-2.C (foo): Likewise.
	* g++.dg/opt/pr17697-3.C (foo): Likewise.
	* g++.dg/template/non-dependent4.C (temp): Likewise.
	* g++.dg/opt/strength-reduce.C (C::a): Change type to const char*.
	* g++.old-deja/g++.brendan/crash66.C (getopt): Change last
	parameter type to const char*.
	* g++.old-deja/g++.brendan/ptolemy1.C (InterpTableEntry::name):
	Change type to const char*.
	* g++.old-deja/g++.brendan/ptolemy2.C (InterpTableEntry::name):
	Likewise. 
	* g++.old-deja/g++.jason/default2.C (bar::memberfunction): Change
	second parameter type to const char*.
	* g++.old-deja/g++.jason/opeq.C (X::X): Likewise.
	(Y::Y): Change parameter type to const char*.
	* g++.old-deja/g++.jason/ref12.C (f): Likewise.
	* g++.old-deja/g++.jason/report.C: Apply const correctness.
	* g++.old-deja/g++.jason/rfg6.C (single, array): Likewise.
	* g++.old-deja/g++.jason/rvalue1.C (main): Cast string literal to
	(char*).
	* g++.old-deja/g++.jason/scoping4.C (A::Ptr): Make a typedef to
	const char*.
	* g++.old-deja/g++.law/ctors17.C (X::X): Change last parameter
	type to const char*.
	* g++.old-deja/g++.law/ctors7.C (base_t::name, d1_t, d2_t): Change
	return type to const char*.
	* g++.old-deja/g++.law/dtors2.C (bla::bla): Change parameter type
	to const char*.
	* g++.old-deja/g++.law/operators3.C: Adjust for const correctness.
	* g++.old-deja/g++.law/refs1.C: Likewise.
	* g++.old-deja/g++.law/visibility1.C: Likewise.
	* g++.old-deja/g++.law/visibility2.C: Likewise.
	* g++.old-deja/g++.law/union1.C (op_to_charp::s): Change type to
	const char*.
	* g++.old-deja/g++.mike/bool2.C: Adjust for const correctness..
	* g++.old-deja/g++.mike/net48.C: Likewise.
	* g++.old-deja/g++.mike/p646.C: Likewise.
	* g++.old-deja/g++.mike/p6746.C: Likewise.
	* g++.old-deja/g++.mike/p700.C (mystrcpy): Change last parameter
	type to const char*.
	* g++.old-deja/g++.mike/p811.C (X::stringify): Match for
	deprecated conversion warning.
	* g++.old-deja/g++.other/init15.C (A::name): Change type to const
	char*. 
	* g++.old-deja/g++.other/inline12.C: Adjust for const correctness.
	* g++.old-deja/g++.other/sibcall1.C (foo): Likewise.
	* g++.old-deja/g++.pt/explicit8.C: Likewise.
	* g++.old-deja/g++.pt/m6.C (xx): Likewise.
	* g++.old-deja/g++.pt/m7.C (xx): Likewise.
	* g++.old-deja/g++.pt/nontype3.C: Likewise.
	* g++.old-deja/g++.pt/t39.C: Likewise.
	* g++.old-deja/g++.robertl/eb106.C: Likewise.
	* g++.old-deja/g++.robertl/ice990323-2.C: Likewise.

From-SVN: r110608
2006-02-05 09:21:29 +00:00
GCC Administrator
9bf820df85 Daily bump.
From-SVN: r110606
2006-02-05 00:17:39 +00:00
Tom Tromey
05d8200d79 re PR java/25676 (Use of MIN_EXPR/MAX_EXPR is wrong for java)
gcc/java
	PR java/25676:
	* builtins.c (max_builtin): Skip floating point 'max'.
	(min_builtin): Skip floating point 'min'.
	(check_for_builtin): Never return NULL_TREE.
libjava
	PR java/25676:
	* testsuite/libjava.lang/pr25676.out: New file.
	* testsuite/libjava.lang/pr25676.java: New file.

From-SVN: r110599
2006-02-04 23:34:06 +00:00
Tom Tromey
fb579387f9 re PR java/26097 (Libjava failed to build)
PR java/26097:
	* expr.c (push_type): Avoid side effect in gcc_assert.

From-SVN: r110598
2006-02-04 23:30:01 +00:00
Thomas Koenig
a89992356b re PR fortran/25075 ([4.1 only] array size mismatch in DOT_PRODUCT)
2006-02-04  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/25075
	check.c (identical_dimen_shape):  New function.
	(check_dot_product):  Use identical_dimen_shape() to check sizes
	for dot_product.
	(gfc_check_matmul):  Likewise.
	(gfc_check_merge):  Check conformance between tsource and fsource
	and between tsource and mask.
	(gfc_check_pack):  Check conformance between array and mask.

2006-02-04  Thomas Koenig  <Thomas.Koenig@online.de>

	PR fortran/25075
	intrinsic_argument_conformance_1.f90:  New test.

From-SVN: r110596
2006-02-04 22:11:57 +00:00
Alexandre Oliva
3a3315f7cc Add 2006 to copyright line
From-SVN: r110595
2006-02-04 22:10:43 +00:00
Alexandre Oliva
658f32fda2 re PR debug/24444 (invalid register in debug info)
PR debug/24444
* config/ia64/ia64.c: Include debug.h.
(MAX_ARTIFICIAL_LABEL_BYTES): New.
(ia64_label_after_insn, ia64_dwarf2out_def_steady_cfa): New.
(IA64_CHANGE_CFA_IN_EPILOGUE): Define to 0.
(process_epilogue, process_set, process_for_unwind_directive):
Output unwind info only if requested.  Add CFA info if requested.
Add new arguments as needed.  Adjust callers.
* config/ia64/ia64.h (ARG_POINTER_CFA_OFFSET): Override
incorrect default.
(DWARF2_FRAME_INFO): Define to zero.
* config/ia64/unwind-ia64.c: Remove code that compensated for
the CFA offset error fixed above.
* config/ia64/t-ia64 (ia64.o): Depend on debug.h.
* dwarf2out.c (DWARF2_FRAME_INFO): Define default.
(dwarf2out_do_frame): Require nonzero DWARF2_UNWIND_INFO for
-funwind-tables and -fexceptions to enable frame info.
(dwarf2out_frame_init): Define initial CFA even if
DWARF2_UNWIND_INFO is disabled.  Call initial_return_save if
DWARF2_UNWIND_INFO is nonzero, not just defined.
(dwarf2out_frame_finish): Output non-EH call frame info only
if DWARF2_FRAME_INFO is nonzero.
(convert_cfa_to_loc_list,
compute_frame_pointer_to_cfa_displacement): Define even if
unwind info is not supported.
(gen_subprogram_die): Use the above unconditionally.  Remove
legacy alternate code.
* toplev.c (compile_file): Compile in call to
dwarf2out_frame_finish if DWARF2_DEBUGGING_INFO is defined.
(lang_dependent_init): Ditto for dwarf2out_frame_init.

From-SVN: r110594
2006-02-04 22:08:04 +00:00
Roger Sayle
5460aa9c92 decl.c (java_init_decl_processing): Create char_type_node as a regular INTEGER_TYPE node.
* decl.c (java_init_decl_processing): Create char_type_node as a
	regular INTEGER_TYPE node.
	(push_promoted_type): Preserve TYPE_STRING_FLAG on types.
	* typeck.c (convert): No longer check for CHAR_TYPEs but instead
	test for char_type_node and promoted_char_type_node as special
	instances of INTEGER_TYPE tree codes.
	(promote_type,build_java_signature): Likewise.
	* jcf-write.c (adjust_typed_op): Likewise.
	* mangle.c (mangle_type): Likewise.
	* parse.y (do_unary_numeric_promotion): No longer handle CHAR_TYPE.
	* parse.h (JINTEGRAL_TYPE_P): Likewise.

From-SVN: r110592
2006-02-04 18:57:53 +00:00
Mark Wielaard
dd4ebf6ae9 Resolve classpath ChangeLog merge conflict.
From-SVN: r110591
2006-02-04 17:33:46 +00:00
Gabriel Dos Reis
10f3742b11 cp-tree.h (tf_warn_or_error): New substituion flag.
* cp-tree.h (tf_warn_or_error): New substituion flag.
        (cp_build_qualified_type): Use it.
        * call.c (convert_like_real): Likewise.
        * cvt.c (cp_convert_to_pointer): Likewise.
        (convert_to_reference): Likewise.
        * decl.c (make_typename_type): Likewise.
        (grokdeclarator): Likewise.
        * pt.c (tsubst_friend_function): Likewise.
        (tsubst_friend_class): Likewise.
        (instantiate_class_template): Likewise.
        (tsubst_default_argument): Likewise.
        (instantiate_decl): Likewise.
        (tsubst_initializer_list): Likewise.
        (tsubst_enum): Likewise.
        * semantics.c (finish_template_type): Likewise.
        * typeck.c (build_ptrmemfunc): Likewise.
        (convert_for_assignment): Likewise.

From-SVN: r110590
2006-02-04 16:44:18 +00:00
David Edelsohn
337bde9139 rs6000.c (rs6000_mangle_fundamental_type): Mangle IBM extended float format long double as "g" on powerpc*-linux.
* config/rs6000/rs6000.c (rs6000_mangle_fundamental_type): Mangle
        IBM extended float format long double as "g" on powerpc*-linux.

Co-Authored-By: Jakub Jelinek <jakub@redhat.com>

From-SVN: r110589
2006-02-04 09:18:17 -05:00
Paolo Carlini
eef5c0ca8d functions.cc: Fix.
2006-02-04  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/tr1/8_c_compatibility/cwchar/functions.cc: Fix.

From-SVN: r110588
2006-02-04 10:56:02 +00:00
Paolo Carlini
5622277de1 21955.cc: Avoid warning on string constant.
2006-02-04  Paolo Carlini  <pcarlini@suse.de>

	* testsuite/27_io/basic_stringbuf/in_avail/char/21955.cc: Avoid
	warning on string constant.

From-SVN: r110587
2006-02-04 10:00:58 +00:00
John David Anglin
3df6582b47 re PR target/25926 (A87B59A SIGABRT)
PR target/25926
	* ada/initialize.c (__gnat_initialize): Provide HP-UX 10 host and target
	implementation that calls __main.
	* pa/x-ada (X_ADA_CFLAGS): Define _X_HPUX10 on HP-UX 10.
	* pa/t-pa (TARGET_LIBGCC2_CFLAGS): Define _T_HPUX10 on HP-UX 10.

From-SVN: r110580
2006-02-04 00:44:53 +00:00
Andreas Tobler
74a88f62d1 expr.c (java_stack_swap): Revert gcc_assert patch.
2006-02-04  Andreas Tobler  <a.tobler@schweiz.ch>

	* expr.c (java_stack_swap): Revert gcc_assert patch.

From-SVN: r110579
2006-02-04 01:21:55 +01:00
GCC Administrator
35c23d2e82 Daily bump.
From-SVN: r110577
2006-02-04 00:19:32 +00:00
Alan Modra
d67c1cb766 gc_locks.h (GC_test_and_set <POWERPC>): Don't use broken 64-bit version.
* include/private/gc_locks.h (GC_test_and_set <POWERPC>): Don't
	use broken 64-bit version.

From-SVN: r110571
2006-02-04 10:45:08 +10:30
Thomas Fitzsimmons
510a8dd51d Makefile.am (src.zip): Update src.zip file search to look in classpath directory.
2006-02-03  Thomas Fitzsimmons  <fitzsim@redhat.com>

	* Makefile.am (src.zip): Update src.zip file search to look in
	classpath directory.
	* Makefile.in: Regenerate.

From-SVN: r110570
2006-02-03 23:58:09 +00:00
Lee Millward
b323323f9b typeck.c (string_conv_p): Pass appropiate OPT_Wxxxx values when calling warning().
* typeck.c (string_conv_p): Pass appropiate
       OPT_Wxxxx values when calling warning().
       (build_array_ref, cxx_mark_addressable): Likewise.
       (check_return_expr): Likewise.

       * init.c (perform_member_init): Likewise.
       (sort_mem_initializers, emit_mem_initializers): Likewise.

       * class.c (check_field_decls): Likewise.
       (warn_about_ambiguous_bases): Likewise.

       * decl.c (pop_label, poplevel): Likewise.
       (duplicate_decls, grok_op_properties): Likewise.
       (start_preparsed_function, finish_function): Likewise.

       * name-lookup.c (pushdecl_maybe_friend): Likewise.
       (pushdecl_maybe_friend): Likewise.

       * parser.c (cp_parser_warn_min_max): Likewise.
       (cp_parser_cast_expression): Likewise.

       * method.c (lazily_declare_fn): Likewise.
       * cvt.c (convert_to_void): Likewise.
       * mangle.c (finish_mangling): Likewise.
       * cp-gimplify.c (gimplify_expr_stmt): Likewise
.

From-SVN: r110567
2006-02-03 23:11:09 +00:00
Jason Merrill
9b43c474f5 re PR c++/25979 (incorrect codegen for conditional [SVO issue])
PR c++/25979
        * gimplify.c (gimplify_modify_expr_rhs): Disable *& optimization for now.

        PR middle-end/25977
        * gimplify.c (gimplify_modify_expr_rhs): It's not always safe to do RVO
        on the return slot if it's an NRV.

From-SVN: r110565
2006-02-03 16:57:08 -05:00
Paolo Carlini
28e5f1f115 2006-02-03 Paolo Carlini <pcarlini@suse.de>
* Fix typo in last ChangeLog entry.

From-SVN: r110563
2006-02-03 21:45:04 +00:00