Commit Graph

21031 Commits

Author SHA1 Message Date
Jeffrey A Law
b5ce41ff0f gcse.c: More comments, whitespace and similar fixes.
* gcse.c: More comments, whitespace and similar fixes.
        (dump_cuid_table, maybe_set_rd_gen, dump_cprop_data): Delete.
        (dump_pre_data, compute_cprop_local_properties): Likewise.
        (one_classic_gcse_pass): Lose unused argument.  All callers changed.
        (compute_hash_table, compute_expr_hash_table): Likewise.
        (compute_set_hash_table, one_pre_gcse_pass, mark_call): Likewise.
        (cprop_insn, cprop, one_cprop_pass): Add new argument ALTER_JUMPS.
        All callers changed.  Only alter jumps if ALTER_JUMPS is nonzero.
        Lose unused argument.
        (gcse_main): Always run a cprop pass after finishing global cse.
        (compute_local_properties): New function.
        (hash_scan_pat, hash_scan_insn): No longer call maybe_set_rd_gen.
        (compute_cprop_data): Use compute_local_properties.

From-SVN: r25677
1999-03-10 14:29:44 -07:00
Kaveh R. Ghazi
878f32c33e gcc.c (print_file_name, [...]): Qualify a char* with the `const' keyword.
* gcc.c (print_file_name, print_prog_name, spec_machine,
        read_specs, set_spec, lookup_compiler, build_search_list,
        putenv_from_prefixes, find_a_file, record_temp_file,
        delete_if_ordinary, handle_braces, do_spec, do_spec_1, find_file,
        is_directory, validate_switches, used_arg, default_arg,
        pfatal_with_name, perror_with_name, pfatal_pexecute, fatal, error,
        notice, add_preprocessor_option, add_assembler_option,
        add_linker_option, process_command, execute,
        unused_prefix_warnings, clear_args, fatal_error,
        lang_specific_driver, user_specs, compiler, link_command_spec,
        option_map, translate_options, make_temp_file, temp_name,
        programname, path_prefix, machine_suffix, just_machine_suffix,
        gcc_exec_prefix, standard_exec_prefix, standard_exec_prefix_1,
        md_exec_prefix, md_startfile_prefix, md_startfile_prefix_1,
        standard_startfile_prefix, standard_startfile_prefix_1,
        standard_startfile_prefix_2, tooldir_base_prefix, tooldir_prefix,
        multilib_dir, temp_filename, temp_file, command, switchstr,
        infile, outfiles, input_filename, input_basename, input_suffix,
        check_live_switch, main): Qualify a char* with the `const' keyword.

From-SVN: r25676
1999-03-10 20:32:13 +00:00
Jeff Law
ac7c5af52f s/ /<tab>/g
From-SVN: r25675
1999-03-10 13:18:59 -07:00
Jeffrey A Law
f4e584dc0f gcse.c: Update various comments.
* gcse.c: Update various comments.
        (current_function_calls_longjmp): Delete declaration.

From-SVN: r25674
1999-03-10 13:14:05 -07:00
Jeffrey A Law
e78d9500be gcse.c (run_jump_opt_after_gcse): New variable.
* gcse.c (run_jump_opt_after_gcse): New variable.
        (gcse_main): Returns an integer.
        (hash_scan_set): Record initializations from CONST_DOUBLEs too.
        (try_replace_reg): Update some comments.
        (cprop_insn): Allow propagation into some JUMP_INSNs too.
        * rtl.h (gcse_main): Update prototype.
        * toplev.c (rest_of_compilation): If gcse_main returns nonzero,
        then run a jump optimization pass.
        * jump.c (delete_barrier_successors): Delete nop jumps too.

From-SVN: r25673
1999-03-10 12:45:18 -07:00
Mark Mitchell
b7975aedf6 semantics.c (begin_class_definition): Call build_self_reference.
* semantics.c (begin_class_definition): Call build_self_reference.
	(finish_member_declaration): Set DECL_CONTEXT for TYPE_DECLs.

From-SVN: r25672
1999-03-10 17:58:08 +00:00
Mark Mitchell
1e61a9d952 * search.c (assert_canonical_unmarked): Fix typo in prototype.
From-SVN: r25671
1999-03-10 12:17:47 +00:00
J"orn Rennecke
66c0b347bc sh.c (fp_arith_reg_operand): Actually test if reg is suitable for FP arithmetic.
* sh.c (fp_arith_reg_operand): Actually test if reg is suitable
	for FP arithmetic.  Changed caller.
	* sh.md (subsf3, subsf_i): Use fp_arith_reg_operand.

From-SVN: r25670
1999-03-10 11:07:32 +00:00
J"orn Rennecke
0c7f225984 reload1.c (choose_reload_regs): When inheriting from the frame pointer, don't clobber it.
* reload1.c (choose_reload_regs): When inheriting from the frame
	pointer, don't clobber it.

From-SVN: r25669
1999-03-10 10:59:54 +00:00
Mark Mitchell
6cbd257eb5 search.c (dfs_canonical_queue): New function.
* search.c (dfs_canonical_queue): New function.
	(dfs_assert_unmarked_p): Likewise.
	(assert_canonical_unmarked): Likewise.
	(access_in_type): Use it.
	(accessible_p): Likewise.  Walk the whole tree when umarking.

From-SVN: r25668
1999-03-10 10:53:35 +00:00
Mark Mitchell
5f23a307e2 sig.c (build_signature_table_constructor): Use accessible_p instead of compute_access.
* sig.c (build_signature_table_constructor): Use accessible_p
	instead of compute_access.

From-SVN: r25667
1999-03-10 09:33:45 +00:00
Bruce Korb
2d7efc013d missing updates to fixinc/fixinc.*
From-SVN: r25666
1999-03-10 08:06:20 +00:00
Bruce Korb
6e516c9cb4 Fixed the 'case' ordering
From-SVN: r25665
1999-03-10 08:00:12 +00:00
Bruce Korb
03affdf59a Patches from superior directory
From-SVN: r25664
1999-03-10 07:49:54 +00:00
Jason Merrill
47898a19f0 * call.c (add_builtin_candidates): Handle overloaded conversion ops.
From-SVN: r25663
1999-03-09 19:57:44 -05:00
Jeff Law
a5d753c030 Daily bump.
From-SVN: r25662
1999-03-09 17:45:04 -07:00
Mark Mitchell
d6479fe772 cp-tree.h (flag_access_control): Declare.
* cp-tree.h (flag_access_control): Declare.
	(TREE_VIA_PPUBLIC): Document.
	(DECL_NONSTATIC_MEMBER_P): New macro.
	(enforce_access): Return an indication of whether or not access
	was permitted.
	(build_self_reference): Change prototype.
	(compute_access): Replace with ...
	(accessible_p): New function.
	(dfs_walk): Change prototype.
	(dfs_unmark): Likewise.
	(markedp): Likewise.
	* call.c (enforce_access): Use accessible_p.
	* class.c (build_self_reference): Insert the declaration into the
	list of members for this type, and make it public.
	* decl.c (xref_basetypes): Avoid ill-timed recursion.
	* init.c (build_offset_ref): Use lookup_member, not three separate
	name-lookups.  Call enforce_access rather than checking for
	illegal accesses here.
	(resolve_offset_ref): Likewise.
	* lex.c (do_identifier): Likewise.
	* method.c (hack_identifier): Likewise.
	* parse.y (self_reference): Remove.
	(opt_component_decl_list): Don't use it.
	* parse.c: Regenerated.
	* pt.c (print_candidates): Generalize to handle lists of
	overloaded functions.
	(instantiate_class_template): Don't rely on TREE_VIA_PRIVATE; it's
	not set.
	(get_template_base): Use new calling convention for dfs_walk.
	* search.c: Include varray.h.  Add prototypes.
	(dfs_walk): Accept a data pointer to pass to the work functions.
	All callers changed.  All work functions changed.
	(breadth_first_search): Rename to bfs_walk, and make consistent
	with dfs_walk.
	(dfs_walk_real): New function.
	(canonical_binfo): New function.
	(context_for_name_lookup): Likewise.
	(shared_marked_p): Likewise.
	(shared_unmarked_p): Likewise.
	(lokup_field_queue_p): Likewise.
	(lookup_field_r): Generalize to handle both functions and fields.
	(lookup_field): Just call lookup_member.
	(lookup_fnfields): Likewise.
	(lookup_member): Move body of lookup_field here and generalize.
	(dfs_accessible_queue_p): Likewise.
	(dfs_accessible_p): Likewise.
	(dfs_access_in_type): Likewise.
	(access_in_type): Likewise.
	(compute_access): Remove, and replace with ...
	(accessible_p): New function.
	(vbase_types): Remove.
	(vbase_decl_ptr_intermediate): Likewise.
	(vbase_decl_ptr): Likewise.
	(vbase_init_result): Likewise.
	(closed_envelopes): Likewise.
	(bvtable): Likewise.

From-SVN: r25661
1999-03-09 23:02:42 +00:00
Jason Merrill
8f96c7ac27 call.c (add_function_candidate): Check for proper number of args before checking the validity of those args.
* call.c (add_function_candidate): Check for proper number of args
	before checking the validity of those args.

From-SVN: r25660
1999-03-09 14:37:02 -05:00
Jason Merrill
19f019c25c new
From-SVN: r25659
1999-03-09 14:34:51 -05:00
Jeffrey A Law
21a3b98301 calls.c (load_register_parameters): New function.
* calls.c (load_register_parameters): New function.
        (expand_call): Use it.

From-SVN: r25658
1999-03-09 09:40:30 -07:00
J"orn Rennecke
43f854cf48 reload1.c (reload_combine_note_store): Fix calculation of number of affected registers.
* reload1.c (reload_combine_note_store): Fix calculation of number
	of affected registers.

From-SVN: r25657
1999-03-09 16:05:48 +00:00
Richard Henderson
86a1db6049 flow.c (tidy_fallthru_edge): Be more careful finding the last BARRIER of a list.
* flow.c (tidy_fallthru_edge): Be more careful finding the last
BARRIER of a list.  Delete the cc0 setter as well as a cond jump.

From-SVN: r25656
1999-03-09 07:49:53 -08:00
Jeffrey A Law
39842893a1 * calls.c (expand_call): Slightly reorganize code.
From-SVN: r25655
1999-03-09 08:49:12 -07:00
Hans-Peter Nilsson
89b21b680c * i386.md (ashlsi3 splitter): Fix typo in last change.
From-SVN: r25654
1999-03-09 07:27:57 -07:00
Jeffrey A Law
a45bdd02f5 calls.c (compute_argument_addresses): New function.
* calls.c (compute_argument_addresses): New function.
        (rtx_for_function_call): New function.
        (expand_call): Use them.

From-SVN: r25653
1999-03-09 07:05:13 -07:00
Richard Henderson
91e1a7f5aa reg-stack.c (stack_reg_life_analysis): Use returnjump_p instead of an explicit test for RETURN.
* reg-stack.c (stack_reg_life_analysis): Use returnjump_p
        instead of an explicit test for RETURN.

From-SVN: r25652
1999-03-09 03:36:25 -08:00
Kaveh R. Ghazi
b1eeb24348 Warning fix:
* Makefile.in (toplev.o): Depend on $(BASIC_BLOCK_H).
        * toplev.c: Include basic-block.h.

From-SVN: r25651
1999-03-09 06:40:49 +00:00
Jeffrey A Law
d626200a86 i386.md (zero_extendhisi2): Split into an expander and anonymous pattern.
* i386.md (zero_extendhisi2): Split into an expander and anonymous
        pattern.  Add new anonymous pattern for use when optimizing for
        size or for the PPro.
        (zero_extendqihi2, zero_extendqisi2): Likewise.

From-SVN: r25650
1999-03-08 18:09:52 -07:00
Jeff Law
4abcd5db62 Daily bump.
From-SVN: r25649
1999-03-08 17:45:35 -07:00
Richard Henderson
7399257b1e haifa-sched.c (sched_analyze_1): Fix last change -- add clobber dependancies to sets in the non-hard-reg case too.
* haifa-sched.c (sched_analyze_1): Fix last change -- add clobber
        dependancies to sets in the non-hard-reg case too.

From-SVN: r25648
1999-03-08 15:45:12 -08:00
Jeffrey A Law
24883a4a12 i386.md (ashlsi3): Revise comments.
* i386.md (ashlsi3): Revise comments.  Provide new anonymous
        pattern for Pentium and PPro/PII.  Reverse constraints in
        generic ashlsi3 anonymous pattern.

From-SVN: r25647
1999-03-08 16:31:28 -07:00
Jeffrey A Law
959f3a0667 calls.c (initialize_argument_info): Accept a pointer to CUMULATIVE_ARGS.
* calls.c (initialize_argument_info): Accept a pointer to
        CUMULATIVE_ARGS.
        (expand_call): Pass the address of CUMULATIVE_ARGS.

From-SVN: r25646
1999-03-08 14:57:56 -07:00
Jeff Law
e4cbe00203 openbsd.h (HANDLE_SYSV_PRAGMA): Define.
* config/openbsd.h (HANDLE_SYSV_PRAGMA): Define.
        * rs6000/xm-sysv4.h (HOST_BITS_PER_LONGLONG): Remove #if 0.
        * mn10300.h (CASE_DROPS_THROUGH): Delete.
        * mn10200.h (CASE_DROPS_THROUGH): Delete.
        * h8300.h (CASE_DROPS_THROUGH): Delete.

From-SVN: r25645
1999-03-08 13:40:08 -07:00
Jim Wilson
49071ddced Fix performance problem on SH with unnecessary move instructions.
* local-alloc.c (combine_regs): Don't combine if we have a hard reg
	for which CLASS_LIKELY_SPILLED_P is true.

From-SVN: r25644
1999-03-08 09:50:37 -08:00
Jim Wilson
66830675f2 Fix cygwin toolchain build failure reported by Geoffrey Noer.
* unroll.c (loop_iterations): Only call loop_find_equiv_value if we
	have a REG or SUBREG.

From-SVN: r25643
1999-03-08 08:09:05 -08:00
Jeffrey A Law
86879c21ac flow.c (merge_blocks_nomove): For HAVE_cc0 targets...
�
        * flow.c (merge_blocks_nomove): For HAVE_cc0 targets, make sure
        to also delete the cc0 setter when deleting a conditional branch
        to the next block.

From-SVN: r25642
1999-03-08 07:40:47 -07:00
Per Bothner
30ca27b475 lex.c (java_parse_end_comment): Take extra parameter (next char).
�
	* lex.c (java_parse_end_comment):  Take extra parameter (next char).
	* class.c (build_utf8_ref):  Fix possible name class/ambiguity.
	* class.c (layout_class_method):  A static method in a base class
	is never overridden, so treat it like it doesn't exist.
	However, do complain about private non-static method overriding
	public static method.
	* parse.y:  Don't set unused INITIALIZED_P flag.
	* java-tree.h (INITIALIZED_P):  Removed no-longer needed flag.
	* parse.y (find_expr_with_wfl):  Optimize tail-calls.
	(build_array_from_name):  Re-order &index[string] to &string[index].
	* parse.y (java_complete_tree):  Don't call patch_assignment if rhs is
	error_mark (it might catch more errors, but it is more likely to lose).

From-SVN: r25641
1999-03-08 05:34:12 -08:00
Per Bothner
c0d87ff6f9 *** empty log message ***
From-SVN: r25640
1999-03-08 05:34:10 -08:00
J"orn Rennecke
78dd9906fe * regmove.c (copy_src_to_dest): New argument max_old_uid.
From-SVN: r25639
1999-03-08 10:51:28 +00:00
Bruce Korb
3c869bc5eb fixincl-branch merge
From-SVN: r25638
1999-03-08 08:26:56 +00:00
Craig Burley
3d1d35d66a Improve testiness
From-SVN: r25637
1999-03-08 01:34:47 -05:00
Craig Burley
fc370eff81 New tests
From-SVN: r25636
1999-03-08 01:30:51 -05:00
Jeff Law
460fb6158a Daily bump.
From-SVN: r25635
1999-03-07 17:45:03 -07:00
Craig Burley
7e0847f623 improve testiness
From-SVN: r25631
1999-03-07 19:14:12 -05:00
Craig Burley
3f18f777de move test from execute to compile
From-SVN: r25630
1999-03-07 13:09:27 -05:00
Richard Henderson
f4b9425602 haifa-sched.c (ENCODE_BLOCKAGE): Don't shift unit too far.
* haifa-sched.c (ENCODE_BLOCKAGE): Don't shift unit too far.
        (print_exp): Special case addition of a constant.
        (print_value) [CONST_INT]: Use HOST_WIDE_INT_PRINT_HEX.

From-SVN: r25629
1999-03-07 03:50:32 -08:00
Richard Henderson
28c95eff94 haifa-sched.c (reg_last_clobbers): New.
* haifa-sched.c (reg_last_clobbers): New.
        (reg_pending_clobbers, bb_reg_last_clobbers): New.
        (compute_block_backward_dependences): Allocate memory for them.
        (schedule_region): Likewise.
        (sched_analyze_1): Clobbers don't interfere with one another.
        They do interfere with sets ...
        (sched_analyze_2): ... and uses.
        (sched_analyze): Likewise.
        (sched_analyze_insn): Update reg_last_clobbers appropriately.

From-SVN: r25628
1999-03-07 03:22:10 -08:00
Kaveh R. Ghazi
3bb5de61eb gmon-sol2.c: Include config.h and system.h.
* gmon-sol2.c: Include config.h and system.h.  Don't redundantly
        include system header files.
        (sccsid): Remove.
        (moncontrol, monstartup, _mcleanup, internal_mcount): Prototype.
        (_mcleanup): Add the `const' keyword to a char*.
        (internal_mcount): Declare `etext' as a char[] not a function.
        Cast `etext' to char* when calling `monstartup'.
        * sparc.c (frame_base_name, save_regs, restore_regs,
        build_big_number, sparc_cmodel_string, sparc_align_loops_string,
        sparc_align_jumps_string, sparc_align_funcs_string, code_model,
        cpu_default, cpu_table, output_function_prologue,
        output_function_epilogue, output_return,
        sparc_flat_output_function_prologue, ultra_code_names,
        sparc_flat_output_function_epilogue): Constify a char*.
        (hypersparc_adjust_cost): Add a default case in a switch.
        * sparc.h (sparc_cmodel_string, OVERRIDE_OPTIONS,
        sparc_cpu_select, sparc_align_loops_string,
        sparc_align_jumps_string, sparc_align_funcs_string,
        output_return): Constify a char*.
        * sparc.md (movdi): Change the comparison of HOST_BITS_PER_WIDE_INT
        so that we check "== 32", instead of "!= 64".  Cast a value to
        HOST_WIDE_INT when comparing against one.  Hide the declaration
        for variable `chain'.

From-SVN: r25627
1999-03-07 05:46:30 +00:00
Kaveh R. Ghazi
366453bf4b system.h (const, inline): Move the stage2 handling of these keywords-as-macros from here...
* system.h (const, inline): Move the stage2 handling of these
        keywords-as-macros from here...
        * gansidecl.h (const, inline): ...to here.
(This became necessary after using `const' in config directory headers,
which get included before system.h does.  If we're going to reset these
keywords, we must do so before absolutely any other header file.)

From-SVN: r25626
1999-03-07 05:21:41 +00:00
Martin v. Löwis
b26caacda9 List TREE_INDIRECT_USING as application of TREE_LANG_FLAG_0.
From-SVN: r25625
1999-03-07 04:39:44 +00:00