Commit Graph

36575 Commits

Author SHA1 Message Date
Roman Zippel f18bff15c9 m68k.h (TARGET_SWITCHES/TARGET_OPTIONS): Add missing doc strings
* config/m68k/m68k.h (TARGET_SWITCHES/TARGET_OPTIONS):
        Add missing doc strings
        * config/m68k/linux-aout.h (SUBTARGET_SWITCHES): Likewise
        * config/m68k/linux.h (SUBTARGET_SWITCHES): Likewise

From-SVN: r44489
2001-07-30 14:30:40 -07:00
Jan Hubicka 0ecf09f9cc i386.c (ix86_output_main_function_alignment_hack): New function.
* i386.c (ix86_output_main_function_alignment_hack): New function.
	(TARGET_ASM_FUNCTION_PROLOGUE): Default to it.

	* flow.c (mark_dfs_back_edges): Move from loop_p ; mark back
	edges by EDGE_DFS_BACK flag.
	(dump_edge_info): Add dfs_back flag.
	* basic-block.h (EDGE_DFS_BACK): New constant.
	(mark_dfs_back_edges): Declare.
	* alias.c (loop_p): Remove.
	(mark_constant_function): Use mark_dfs_back_edges.

	* reg-stack.c (block_info_def): Add predecesors counter and stack_out.
	(reg_to_stack): Call mark_dfs_back_edges; count the predecesors.
	(compensate_edge): Break out from ...
	(convert_regs_1): ... here; do smart choosing of stack_out to copy.
	(convert_regs_2): Set block_done once block is really done;
	Do updating of the predecesors counts.

	* toplev.c (rest_of_compilation): Recompute block_for_insn
	before post-reload cfg_cleanup.
	* function.c (thread_prologue_epilogue_insns):
	Call set_block_for_new_insns when emitting prologue directly.

From-SVN: r44486
2001-07-30 20:30:23 +00:00
Andreas Jaeger 1490f39253 Add forgotten ChangeLog entry.
From-SVN: r44485
2001-07-30 22:24:59 +02:00
Tom Tromey 3d5aea8366 natIconv.cc (done): New methods.
2001-07-30  Tom Tromey  <tromey@redhat.com>
	    Corey Minyard  <minyard@acm.org>

	* gnu/gcj/convert/natIconv.cc (done): New methods.
	* gnu/gcj/convert/Output_iconv.java (done): New method.
	* gnu/gcj/convert/Input_iconv.java (done): New method.
	* gnu/gcj/convert/UnicodeToBytes.java (defaultEncodingClass):
	Removed.
	(getDefaultEncodingClass): Removed.
	(getDefaultEncoder): Use getEncoder.
	(done): New method.
	(defaultEncoding, CACHE_SIZE, encoderCache, currCachePos): New
	static fields.
	* gnu/gcj/convert/BytesToUnicode.java (defaultDecodingClass):
	Removed.
	(defaultEncoding, CACHE_SIZE, decoderCache, currCachePos): New
	static fields.
	(getDefaultDecodingClass): Removed.
	(getDefaultDecoder): Use getDecoder.
	(getDecoder): Look up decoder in cache.
	(done): New method.
	* java/lang/natString.cc (init): Call `done' on converter.
	(getBytes): Likewise.

Co-Authored-By: Corey Minyard <minyard@acm.org>

From-SVN: r44484
2001-07-30 20:24:18 +00:00
Jan Hubicka a08b260482 flow.c (mark_set_1): Use REG_FREQ_FROM_BB.
* flow.c (mark_set_1): Use REG_FREQ_FROM_BB.
	(attempt_auto_inc): LIkewise.
	(mark_used_reg): Likewise.
	(try_pre_increment_1): Likewise.
	* regclass.c (regclass): Likewise.
	* global.c (allocno_compare): Update comment; change scaling factor.
	* local-alloc.c (QTY_CMP_PRI): Likewise.
	* regs.h (REG_FREQ_FROM_BB): New.
	(REG_FREQ_MAX): Likewise.

From-SVN: r44483
2001-07-30 20:03:37 +00:00
Jan Hubicka e5b3941e7e * MAITAINERS (Various maitainers: predict.def): Added myself.
From-SVN: r44482
2001-07-30 19:30:26 +00:00
Andreas Jaeger b6a2f88470 * concat.c: Include "config.h".
From-SVN: r44481
2001-07-30 21:23:38 +02:00
H.J. Lu c2c0294ae5 linux.h (CPLUSPLUS_CPP_SPEC): Add -D_GNU_SOURCE.
2001-07-30  H.J. Lu <hjl@gnu.org>

	* config/mips/linux.h (CPLUSPLUS_CPP_SPEC): Add
	-D_GNU_SOURCE.

From-SVN: r44480
2001-07-30 12:01:19 -07:00
Andreas Jaeger 57cb6d521a jump.c: Add prototype for mark_modified_reg.
* jump.c: Add prototype for mark_modified_reg.

        * cse.c (set_live_p): Add unused attribute.

        * gcov.c (calculate_branch_probs): Use gcov_type to avoid
        overflow.
        (scan_for_source_files): Use long for count to avoid overflow.
        (output_data): Likewise.
        (output_data): Don't use string concatatenation to silence gcc
        -traditional.

        * predict.c: Fix typos and grammar.

        * gcse.c (insert_insn_end_bb): Remove unused variables.

For cp:
        * decl2.c: Remove unused var global_temp_name_counter.

From-SVN: r44479
2001-07-30 20:04:33 +02:00
Tom Tromey d76cbbc844 * java/lang/Integer.java: Merged with Classpath.
From-SVN: r44478
2001-07-30 17:58:32 +00:00
H.J. Lu 8597f3dd89 linux.h (ASM_DECLARE_FUNCTION_NAME): Defined.
2001-07-30  H.J. Lu  (hjl@gnu.org)

	* config/mips/linux.h (ASM_DECLARE_FUNCTION_NAME): Defined.
	(ASM_DECLARE_FUNCTION_SIZE): Likewise.
	(FUNCTION_NAME_ALREADY_DECLARED): Likewise.

From-SVN: r44476
2001-07-30 09:40:43 -07:00
Nick Clifton b3026a929a Skip -mthumb as well as -mthumb-interwork when -mcpu=arm7 is specified.
From-SVN: r44475
2001-07-30 16:27:39 +00:00
Eric Christopher 6387a56e38 MAINTAINERS (Various maintainers: mips port): Added myself.
2001-07-30  Eric Christopher  <echristo@redhat.com>

	* MAINTAINERS (Various maintainers: mips port): Added myself.

From-SVN: r44474
2001-07-30 16:00:14 +00:00
Jan Hubicka 8b7e92f9aa predict.def (noreturn, [...]): Mark as first match heuristics.
* predict.def (noreturn, loop branch, loop exit): Mark as first
	match heuristics.

From-SVN: r44473
2001-07-30 15:54:12 +00:00
Andrew Haley 53b475f053 configure.in (sh-*-linux*): New.
2001-07-25  Andrew Haley  <aph@cambridge.redhat.com>

        * configure.in (sh-*-linux*): New.

From-SVN: r44472
2001-07-30 15:48:29 +00:00
Andreas Jaeger c4b9cfe087 backport: regex.c: Declare wcs functions only if compiling with MBS_SUPPORT.
Merge from glibc:
        * regex.c: Declare wcs functions only if compiling with
        MBS_SUPPORT.
        Don't use #elif for traditional C.

        * regex.c: Revamp memory allocation for WCHAR functions to
        not use too much stack.

From-SVN: r44471
2001-07-30 13:54:36 +02:00
Jan Hubicka 592a6d1d96 * combine.c (try_combine): Avoid barrier after noop jumps
From-SVN: r44470
2001-07-30 10:54:10 +00:00
GCC Administrator 60e19e8b3f Daily bump.
From-SVN: r44468
2001-07-30 07:16:11 +00:00
Bryce McKinlay 6941ff9559 GregorianCalendar.java (GregorianCalendar): Call setTimeInMillis() to set the default/current time.
* java/util/GregorianCalendar.java (GregorianCalendar): Call
	setTimeInMillis() to set the default/current time.

From-SVN: r44467
2001-07-30 01:41:31 +01:00
Neil Booth 09b822537f cpphash.h (struct cpp_reader): Remove import_warning.
* cpphash.h (struct cpp_reader): Remove import_warning.
	* cpplib.c (skip_rest_of_line): Don't bother turning off
	macro expansion.
	(parse_include): Move include handling to...
	(do_include_common): ... here.  Move import warning from...
	(do_import): ... here.
	(do_pragma_poison): Don't do a callback for poison identifiers.
	* cpplib.h (struct cpp_callbacks): Don't do poison callbacks.
	* cppmain.c (setup_callbacks): Similarly.

From-SVN: r44466
2001-07-29 22:27:20 +00:00
Jan Hubicka 833366d6c9 rtlanal.c (parms_set, [...]): Break out from...; handle multiple sets.
* rtlanal.c (parms_set, find_first_parameter_load): Break out from...;
	handle multiple sets.
	* except.c (sjlj_mark_call_sites): .... here.
	* gcse.c (insert_insn_end_bb): Use find_first_parameter_load.

From-SVN: r44465
2001-07-29 21:28:42 +00:00
Jan Hubicka b5832b4372 Suggested by Richard Henderson and Richard Kenner:
* combine.c (recog_for_combine): Use the fake recog
	only if instruction does not match.
	* rtl.h (NOOP_MOVE_INSN_CODE): New.
	* rtlanal.c (noop_move_p): Always return 1 for NOOP_MOVE_INSN_CODE.

	* combine.c (try_combine): Discover noop jump as direct jump.

From-SVN: r44464
2001-07-29 19:44:42 +00:00
Daniel Berlin 12285d9df8 df.c (df_rd_global_compute): Add successors to worklist, not current item.
2001-07-29  Daniel Berlin  <dan@cgsoftware.com>

	* df.c (df_rd_global_compute): Add successors to worklist, not
	current item.
	(df_ru_global_compute): Ditto for preds.

From-SVN: r44461
2001-07-29 18:23:36 +00:00
Daniel Berlin b2d5779326 [multiple changes]
2001-07-27  Daniel Berlin  <dan@cgsoftware.com>

	* regclass.c (reg_scan_mark_refs): Increment REG_N_REFS when we
	increment REG_N_SETS.

2001-07-26  Daniel Berlin  <dan@cgsoftware.com>

	* sbitmap.h: New prototype for sbitmap_a_xor_b.

	* sbitmap.c (sbitmap_a_xor_b): New function.
	#ifdef the basic block stuff on the define IN_GCC.

From-SVN: r44460
2001-07-29 18:21:08 +00:00
Neil Booth 6d18adbc2c cppexp.c (parse_defined): Always record the macro name.
* cppexp.c (parse_defined): Always record the macro name.
	(lex): Don't worry about identifiers, or special-case
	CPP_NOT here.
	(_cpp_parse_expr): Figure out at the end of the routine
	whether we saw a valid !defined() expression.
	* cppfiles.c (stack_include_file): Update for mi_valid.
	(_cpp_pop_file_buffer): Similarly.
	* cpplex.c (_cpp_lex_token): Similarly.
	* cpphash.h (enum mi_state, enum mi_ind, mi_state,
	mi_if_not_defined, mi_lexed): Remove.
	(mi_valid): New.
	* cpplib.c (do_if): Simplify.
	(do_endif, push_conditional, _cpp_handle_directive): Update
	for renaming of mi_state to mi_valid.

	* cpp.texi: Add index entries for digraphs, and add comment
	that C++ refers to them as alternative tokens.

From-SVN: r44459
2001-07-29 17:27:57 +00:00
Jan Hubicka 0068fd9637 basic-block.h (CLEANUP_PRE_LOOP): New.
* basic-block.h (CLEANUP_PRE_LOOP): New.
	* except.c (finish_eh_generation): Update call of cleanup_cfg.
	* sibcall.c (optimize_sibling_calls): Likewise.
	* toplev.c (rest_of_compilation): Likewise.
	* flow.c (try_forward_edges): Take argument MODE;
	do not forward over loop pre-headers if CLEANUP_PRE_LOOP.
	(try_optimize_cfg): Update call of try_forward_edges.


	* (validate_replace_rtx_1): Fix simplification of MINUS.

From-SVN: r44458
2001-07-29 17:01:53 +00:00
Neil Booth df07e07d1a re PR preprocessor/3669 (-M -g3 outputs macros as well as dependency info)
PR preprocessor/3669
	* cppinit.c (init_dependency_output): Turn off dump requests
	if sending dependencies to stdout.

From-SVN: r44457
2001-07-29 14:40:45 +00:00
Mark Wielaard 7729617cf8 * HACKING: add description on updating namespace
From-SVN: r44454
2001-07-29 10:05:08 +00:00
GCC Administrator 1e785d81aa Daily bump.
From-SVN: r44452
2001-07-29 07:16:10 +00:00
Richard Henderson 587f922afb flow.c (life_analysis): Elide PROP_ALLOW_CFG_CHANGES if not optimizing.
* flow.c (life_analysis): Elide PROP_ALLOW_CFG_CHANGES if
        not optimizing.

From-SVN: r44451
2001-07-28 23:59:47 -07:00
Golubev I. N. 89f355bdb3 * config/i386/sco5.h (DWARF2_DEBUGGING_INFO): Define.
From-SVN: r44447
2001-07-28 23:33:34 -07:00
Kazu Hirata 391522e3a5 h8300.h (ENCODE_SECTION_INFO): Check to see if DECL is VAR_DECL first to prevent an ICE.
* config/h8300/h8300.h (ENCODE_SECTION_INFO): Check to see if DECL
	is VAR_DECL first to prevent an ICE.

From-SVN: r44446
2001-07-29 03:12:34 +00:00
Richard Henderson 6681bc1f10 varasm.c (immed_real_const_1): Don't elide special cases for nested functions.
* varasm.c (immed_real_const_1): Don't elide special cases for
        nested functions.
        (clear_const_double_mem): Clear const_tiny_rtx too.

From-SVN: r44445
2001-07-28 19:46:18 -07:00
Richard Henderson a20612aa8b dwarf2out.c (dw_val_class_offset): New.
* dwarf2out.c (dw_val_class_offset): New.
	(struct dw_ranges_struct, dw_ranges_ref): New.
	(ranges_table, ranges_table_allocated): New.
	(ranges_table_in_use, RANGES_TABLE_INCREMENT): New.
	(add_AT_offset, add_ranges, output_ranges): New.
	(print_die, output_die): Handle dw_val_class_offset.
	(attr_checksum, size_of_die, value_format): Likewise.
	(gen_lexical_block_die): Handle non-contiguous blocks.
	(gen_block_die): Likewise.
	(dwarf2out_finish): Add a DW_AT_entry_pc to the compilation unit
	if needed.  Dump the ranges table.
	* final.c (final_start_function): Remove unnecessary notes and
	rebuild the block tree before numbering the blocks.
	* function.c (reorder_blocks_0): Walk the existing block tree
	to unmark all blocks.
	(reorder_blocks_1): Create block fragments when duplicate block
	notes are seen.
	(reorder_fix_fragments): New.
	(reorder_blocks): Call it.
	* tree.h (BLOCK_FRAGMENT_ORIGIN, BLOCK_FRAGMENT_CHAIN): New.

From-SVN: r44444
2001-07-28 19:10:42 -07:00
Richard Henderson 594280a396 * method.c (pending_inlines): Remove.
From-SVN: r44443
2001-07-28 18:39:17 -07:00
Richard Henderson c2f7bcc3c2 * emit-rtl.c (adjust_address): Make a copy of the memory address.
From-SVN: r44442
2001-07-28 18:35:13 -07:00
Richard Henderson 91d84fadf4 flow.c (add_to_mem_set_list): New function.
* flow.c (add_to_mem_set_list): New function.
        (init_propagate_block_info): Use it.
        (mark_set_1): Likewise.
        (insn_dead_p): Canonicalize memory address for dead store
        comparison.  Allow wider mode stores to kill narrower mode stores.
        (invalidate_mems_from_autoinc): Use invalidate_mems_from_set.
        (invalidate_mems_from_set): Don't handle MEMs.

From-SVN: r44441
2001-07-28 18:13:53 -07:00
Kazu Hirata 0a02170ffd * config/h8300/h8300.h: Fix formatting.
From-SVN: r44440
2001-07-29 00:44:40 +00:00
Jan Hubicka 134d3a2eaa basic-block.h (EDGE_FREQUENCY): New macro.
* basic-block.h (EDGE_FREQUENCY): New macro.
	* bb-reorder (fixup_reorder_chain): Set counts and frequencies
	for new BB/edges.
	* flow.c (find_sub_basic_blocks): Likewise.
	(try_crossjump_to_edge): Likewise; use EDGE_FREQUENCY
	(redirect_edge_and_branch): Use EDGE_FREQUENCY.

	* predict.c (DEF_PREDICTOR): New argument FLAGS.
	(HITRATE): New macro.
	(PRED_FLAG_FIRST_MATCH): New constant.
	(predictor_info): New field flgags.
	(combine_predictions_for_insn): Use DS theory to combine
	probabilities; set the edge probabilities when finished.
	(estimate_probability): Avoid duplicated matches
	of LOOP_BRANCH heuristics for nested loops; update comment.
	* predict.def: Add flags for each prediction, set probabilities
	according to B&L paper.
	* predict.h (DEF_PREDICTOR): New argument FLAGS.

	* profile.c (compute_branch_probabilities):  Cleanup way the edge
	probabilities are computed and REG_BR_PROB notes are dropped; if
	values does not match, emit error.
	(init_branch_prob): Do error instead of warning when profile driven
	feedback is missing or corrupt.

From-SVN: r44439
2001-07-28 21:37:35 +00:00
Jan Hubicka ffd1553440 * analyze_brprob: Avoid more overflows.
From-SVN: r44438
2001-07-28 20:39:02 +00:00
GCC Administrator 7b6a93997d Daily bump.
From-SVN: r44436
2001-07-28 07:16:09 +00:00
DJ Delorie 7f64687763 ifcvt.c (noce_get_alt_condition): If the condition is a compare against a constant...
* ifcvt.c (noce_get_alt_condition): If the condition is a compare
against a constant, try to adjust the compare to have the desired
constant in it so that min/max optimizations happen more often.

From-SVN: r44435
2001-07-27 23:13:34 -04:00
Richard Henderson da397f8ed0 * test_summary: Copy LAST_UPDATED UTC time to head of summary.
From-SVN: r44433
2001-07-27 14:10:29 -07:00
Jan Hubicka 92e3cac874 * analyze_brprob: Avoid overflows.
From-SVN: r44430
2001-07-27 16:03:08 +00:00
Jan Hubicka d69d031618 flow.c (last_loop_beg_note): New function.
* flow.c (last_loop_beg_note): New function.
	(redirect_edge_and_branch): Use it.
	(split_edge): Likewise.

	* alias.c (loop_p): Avoid uninitialized memory access.

	* flow.c (try_forward_edges): Avoid accessing freed memory.

	* flow.c (backward_edge_of_syntactic_loop_p): Avoid uninitialized
	variable access.

From-SVN: r44429
2001-07-27 15:55:41 +00:00
Andrew Haley f636e2a57d linux.h (CPP_DEFAULT_CPU_SPEC): New.
2001-07-26  Andrew Haley  <aph@redhat.com>
        Joern Rennecke <amylaar@redhat.com>

        * config/sh/linux.h (CPP_DEFAULT_CPU_SPEC): New.
        (SUBTARGET_CPP_ENDIAN_SPEC): New.
        (SUBTARGET_CPP_SPEC): New.
        (CPP_SPEC): Remove.
        * config/sh/sh.h (SUBTARGET_CPP_ENDIAN_SPEC): New.
        (SUBTARGET_CPP_PTR_SPEC): New.
        (CPP_DEFAULT_CPU_SPEC): New.
        (EXTRA_SPECS): Add SUBTARGET_CPP_ENDIAN_SPEC,
        SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
        (CPP_SPEC): Break out parts into SUBTARGET_CPP_ENDIAN_SPEC,
        SUBTARGET_CPP_PTR_SPEC, and CPP_DEFAULT_CPU_SPEC.
        (SUBTARGET_CPP_SPEC): Define as an empty string.

From-SVN: r44428
2001-07-27 15:20:41 +00:00
Nathan Sidwell 0ab142b027 class.c (mark_primary_virtual_base): Don't adjust base offsets here.
cp:
	* class.c (mark_primary_virtual_base): Don't adjust base
	offsets here.
	(dfs_unshared_virtual_bases): Adjust them here.
	(mark_primary_bases): Explain why we adjust at the end.
testsuite:
	* g++.dg/abi/vbase8-21.C: New test.

From-SVN: r44425
2001-07-27 15:12:49 +00:00
Nathan Sidwell d60d223b17 class.c (finish_struct_1): When copying the primary base's VFIELD, make sure we find it is at offset zero.
cp:
	* class.c (finish_struct_1): When copying the primary base's
	VFIELD, make sure we find it is at offset zero.
testsuite:
	* g++.dg/abi/vbase8-10.C: New test.

From-SVN: r44421
2001-07-27 15:07:40 +00:00
Rainer Orth 08ecdbebab g++.exp (g++_set_ld_library_path): Renamed to ${tool}_set_ld_library_path.
gcc/testsuite:
	* lib/g++.exp (g++_set_ld_library_path): Renamed to
	${tool}_set_ld_library_path.
	Changed caller.
	* lib/objc.exp (${tool}_set_ld_library_path): New, copied from
	g++.exp.

	libjava/testsuite:
	* lib/libjava.exp (${tool}_set_ld_library_path): New, copied from
	g++.exp.

From-SVN: r44420
2001-07-27 12:21:56 +00:00
Gerald Pfeifer e69aa43364 install.texi (Configuration): Properly link the host specific instructions also when generating HTML.
* doc/install.texi (Configuration): Properly link the host
	specific instructions also when generating HTML.

From-SVN: r44416
2001-07-27 08:48:38 +00:00