Commit Graph

21439 Commits

Author SHA1 Message Date
Michael Hayes
6e01bd94f8 tm.texi (USE_LOAD_POST_DECREMENT, [...]): Document.
* tm.texi (USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
	USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT): Document.
	(USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
	USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Fix documentation.
	* rtl.h	(USE_LOAD_POST_DECREMENT, USE_LOAD_PRE_DECREMENT,
	USE_STORE_POST_DECREMENT, USE_STORE_PRE_DECREMENT,
	USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
	USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Provide default
	definition.
	* expr.c: (USE_LOAD_POST_INCREMENT, USE_LOAD_PRE_INCREMENT,
	USE_STORE_POST_INCREMENT, USE_STORE_PRE_INCREMENT): Delete default
	definition.

From-SVN: r26134
1999-04-02 15:39:55 +00:00
Mark Mitchell
8f0327178b tinfo.h (__class_type_info): Fix illegal declaration.
1999-04-02  Mark Mitchell  <mark@codesourcery.com>
	* tinfo.h (__class_type_info): Fix illegal declaration.
	* cp-tree.def (TEMPLATE_ID_EXPR): Update comment.
	* cp-tree.h (INHERITED_VALUE_BINDING_P): New macro.
	(IDENTIFIER_CLASS_VALUE): Improve documentation.
	(is_properly_derived_from): Declare.
	(invalidate_class_lookup_cache): Likewise.
	(maybe_maybe_note_name_used_in_class): Likewise.
	(note_name_declared_in_class): Likewise.
	(push_using_decl): Remove duplicate declaration.
	(id_in_current_class): Remove declaration.
	(push_class_binding): Change prototype.
	(clear_identitifer_class_values): Declare.
	* call.c (is_properly_derived_from): Make it global.
	(build_new_function_call): Be careful about updating candidates.
	(build_new_method_call): Handle COMPONENT_REFs.  Don't crash when
	asked to make illegal calls.
	* class.c: Include splay-tree.h.
	(class_stack_node): Add names_used slot.
	(check_member_decl_is_same_in_complete_scope): Remove.
	(add_method): Fix comment.  Push the declaration into class
	scope.
	(finish_struct_1): When popping the class, pop the bindings too.
	Remove check for data member/function member conflict.
	(finish_struct): Remove calls to
	check_member_decl_is_same_in_complete_scope.  Change calls to
	popclass.
	(pushclass): Clear names_used in the class stack entry.
	Use invalidate_class_lookup_cache to remove cached entries, rather
	than magic values with popclass.  Clear IDENTIFIER_CLASS_VALUE
	before entering a new class.  Remove dead code.  Don't mess with
	current_function_decl when pushing declarations.
	(invalidate_class_lookup_cache): New function, split out from ...
	(popclass): Here.  Clean up names_used on our way out.
	(instantiate_type): Adjust.
	(build_self_reference): Don't push the declaration here.
	(maybe_note_name_used_in_class): New function.
	(note_name_declared_in_class): Likewise.
	* decl.c (add_binding): Change prototype.
	(find_class_binding_level): New function.
	(innermost_nonclass_level): Likewise.
	(current_binding_level): Update documentation.
	(inner_binding_level): Remove.  Replace with current_binding_level
	throughout.
	(push_binding_level): Remove special handling of
	class_binding_level.
	(pop_binding_level): Likewise.  Use find_class_binding_level.
	(suspend_binding_level): Likewise.
	(global_bindings_p): Use innermost_nonclass_level.
	(toplevel_bindings_p): Likewise.
	(namespace_bindings_p): Likewise.
	(pseudo_global_level_p): Likewise.
	(push_binding): Clear INHERITED_VALUE_BINDING_P.
	(add_binding): Check for illegal multiple declarations.  Return a
	value indicating whether or not the new binding was legal.
	(push_local_binding): Skip over class binding levels.  Check
	return value from add_binding.
	(push_class_binding): Set INHERITED_VALUE_BINDING_P.  Call
	note_name_declared_in_class.
	(pushlevel_class): Remove "fake out the rest of the compiler"
	code.
	(poplevel_class): Reset IDENTIFIER_CLASS_VALUEs.
	(clear_identifier_class_values): New function.
	(pop_from_top_level): Use it.
	(pop_everything): Tweak.
	(maybe_process_template_type_declaration): Don't push the
	declaration for the template here.
	(pushtag): Don't push tag declarations into class scope here.
	(pushdecl): Apply DeMorgan's law for readability.
	(pushdecl_class_level): Remove special-case code for
	TYPE_BEING_DEFINED.  Handle OVERLOADs and anonymous unions.
	(push_class_level_bindng): Deal with inherited bindings.
	(lookup_name_real): Remove special-case code for
	TYPE_BEING_DEFINED, and some implicit typename magic.
	(grokdeclarator): Handle COMPONENT_REF for a template function.
	(build_enumerator): Don't call pushdecl_class_level here.
	(id_in_current_class): Remove.
	* decl2.c (grokfield): Don't call pushdecl_class_level or
	check_template_shadow.
	* errfn.c (cp_file_of): Don't declare.
	(cp_line_of): Likewise.
	* error.c (dump_decl): Handle an OVERLOAD.
	(cp_file_of): Likewise.
	(cp_line_of): Likewise.
	* init.c (build_member_call): Handle a COMPONENT_REF.
	* lex.c (do_identifier): Call maybe_note_name_used_in_class, not
	pushdecl_class_level.
	* method.c (hack_identifier): Build COMPONENT_REFs for references
	to member templates as well as member functions.  Remove dead
	code.
	* parse.y (left_curly): Remove.
	(nonnested_type): Call maybe_note_name_used_in_class, not
	pushdecl_class_level.
	* parse.c: Regenerated.
	(nested_name_specifier_1): Likewise.
	* pt.c (check_explicit_specialization): Adjust, for robustness.
	(check_template_shadow): Handle OVERLOADs.
	(build_template_decl): Set DECL_CONSTRUCTOR_P on the
	TEMPLATE_DECL, if appropriate.
	* search.c (envelope_add_decl): Remove.
	(dfs_pushdecls): Likewise.
	(dfs_compress_decls): Likewise.
	(dfs_push_decls): New function.
	(dfs_push_type_decls): Likewise.
	(setup_class_bindings): Likewise.
	(template_self_reference_p): Likewise.
	(lookup_field_r): Use it.
	(looup_member): Remove old comment.  Deal with ambiguity.
	(push_class_decls): Use dfs_push_decls and dfs_push_type_decls,
	and remove envelope processing.
	* semantics.c (begin_class_definition): Let pushclass push
	declarations for base classes.
	(finish_member_declaration): Push declarations into class scope.
	* typeck.c (build_component_ref): Just put an OVERLOAD into the
	COMPONENT_REF, not a TREE_LIST of an OVERLOAD.
	(build_x_function_call): Deal with OVERLOAD.  Handle template-ids.
	* Makefile.in (class.o): Depend on splay-tree.h.

From-SVN: r26133
1999-04-02 15:36:57 +00:00
Mark Mitchell
ae7f727035 splay-tree.h (splay_tree_compare_pointers): Declare.
1999-04-02  Mark Mitchell  <mark@codesourcery.com>
	* splay-tree.h (splay_tree_compare_pointers): Declare.
1999-04-02  Mark Mitchell  <mark@codesourcery.com>
	* splay-tree.h (splay_tree_compare_pointers): Define.

From-SVN: r26132
1999-04-02 15:18:06 +00:00
Jeffrey A Law
2fa6b2d2ad * fixinc/*: Delete obsolete files.
From-SVN: r26131
1999-04-02 08:13:30 -07:00
Jeffrey A Law
4f71d8e4e7 fixinc.dgux, [...]: Deleted.
* fixinc.dgux, fixinc.interix, fixinc.irix, fixinc.ptx: Deleted.
        * fixinc.sco, fixinc.svr4, fixinc.winnt, fixinc.wrap: Likewise.

From-SVN: r26130
1999-04-02 08:08:57 -07:00
Donn Terry
5aa82acea4 configure.in: Set and substitute quoted_cc_set_by_configure.
* configure.in: Set and substitute quoted_cc_set_by_configure.
        * configure: Rebuilt.
        * Makefile.in (SUBDIR_FLAGS_TO_PASS): Fix quoting problem with ``.

From-SVN: r26129
1999-04-02 07:56:49 -07:00
Jeffrey A Law
f6087261f4 * Make-lang.in (CHILL_FLAGS_TO_PASS): Do not pass $(CC).
From-SVN: r26128
1999-04-02 07:56:11 -07:00
Stan Cox
ffb6cec051 cygwin.h (CPP_SPEC): Use mingw_include_path instead of a hardcoded path for -mno-cygwin.
* config/i386/cygwin.h (CPP_SPEC): Use mingw_include_path instead
	of a hardcoded path for -mno-cygwin.
	(mingw_include_path): New.

From-SVN: r26127
1999-04-02 14:30:18 +00:00
H.J. Lu
88101ab976 configure (gxx_include_dir): Removed.
* configure (gxx_include_dir): Removed.
	* configure.in (gxx_include_dir): Handle it.
	* Makefile.in: Likewise.
	* libio/configure.in (gxx_include_dir): Handle it.
	* libio/Makefile.in: Likewise.
	* libstdc++/configure.in (gxx_include_dir): Handle it.
	* libstdc++/Makefile.in: Likewise.

From-SVN: r26126
1999-04-02 07:17:49 -07:00
Joseph Myers
09b893bba7 pdp11.c: Include "recog.h".
* pdp11.c: Include "recog.h".
        (output_functip', `notice_update_cc_on_set', `output_ascii',
        `output_function_epilogue', `output_function_prologue',
        `print_operand_address', `register_move_cost',
        `simple_memory_operand'.
        (HARD_REGNO_MODE_OK): Parenthesise `REGNO' arg.
        (REGNO_REG_CLASS): Likewise.
        * pdp11.md: Add explicit `int' to `static count' (in two places).
        (addhi3): Add explicit braces to avoid ambiguous else.
        (addqi3): Likewise.
        (ashlhi3): Likewise.

From-SVN: r26125
1999-04-02 06:46:46 -07:00
Jerry James
8b9243df27 invoke.texi: Add documentation for additional supported MIPS CPU types...
* gcc/invoke.texi: Add documentation for additional supported
	MIPS CPU types, options -mips16 and -mentry, and ABI and ISA
	defaults.

From-SVN: r26124
1999-04-02 11:31:37 +00:00
John Wehle
87aa52463b i386.md: Delete floating point compare...
* i386.md: Delete floating point compare, add, subtract,
	multiply, and divide patterns which allowed integer
	operands.
	* i386.c (output_386_binary_op): Delete unused code.
	(output_float_compare): Likewise.

From-SVN: r26123
1999-04-02 11:18:47 +00:00
Bruce Korb
ea5c0a506f Fixed regex for finding C++ headers
From-SVN: r26122
1999-04-02 11:04:37 +00:00
John Wehle
9f567f56b1 i386.md (movsf+1, [...]): Update constraints so that SECONDARY_MEMORY_RELOAD is used.
* i386.md (movsf+1, movdf+1, movxf+1): Update constraints
        so that SECONDARY_MEMORY_RELOAD is used.  Remove dead code.

From-SVN: r26121
1999-04-02 04:01:25 -07:00
Bruce Korb
c095d84a8d Complete the change to the 'fixinc.tmp' file
From-SVN: r26120
1999-04-02 10:58:54 +00:00
Bruce Korb
a734e0bf3b interix fixincludes
From-SVN: r26119
1999-04-02 10:54:23 +00:00
Bruce Korb
e05cb56a29 UNTESTED support for interix
From-SVN: r26118
1999-04-02 10:50:42 +00:00
Jeff Law
91e3ded8bd Fix whitespace error.
From-SVN: r26117
1999-04-02 03:50:41 -07:00
Jan Hubicka
69a8af4360 i386.c (print_operand_address, case REG): Do not use ESI addressing mode for the K6.
* i386.c (print_operand_address, case REG): Do not use ESI addressing
        mode for the K6.
        * i386.c (print_operand_address, case MULT): Use more efficient
        encoding (mult (reg) (const_int 2)).

From-SVN: r26116
1999-04-02 03:44:02 -07:00
Craig Burley
57b1ca433d Update NEWS derived file
From-SVN: r26115
1999-04-02 05:37:40 -05:00
Craig Burley
7cceca3288 The -malign-double option now works
From-SVN: r26114
1999-04-02 05:37:16 -05:00
Craig Burley
68b14c7178 give URL for my web page
From-SVN: r26113
1999-04-02 04:53:53 -05:00
Martin v. Löwis
ca704688be Adopt to standard requirements.
From-SVN: r26112
1999-04-02 04:40:06 +00:00
Jeff Law
302a3fa615 Daily bump.
From-SVN: r26111
1999-04-01 17:45:04 -07:00
Richard Henderson
0133b7d92c Move over patch from Bernd Schmidt from GC branch:
* emit-rtl.c (gen_rtx_CONST_DOUBLE): New function.
        (gen_rtx): Call it.  Tidy cases.
        * rtl.h (gen_rtx_CONST_DOUBLE): Prototype it.
        * gengenrtl.c: Add commentary.
        (special_rtx): Also match CONST_DOUBLE.
        (gencode): Emit call to memset instead of bzero.

From-SVN: r26110
1999-04-01 09:06:09 -08:00
Michael Hayes
4b97aaeb34 c4x.md (ashlhi3, [...]): Force operand 1 into a register if shift count not constant.
* config/c4x/c4x.md (ashlhi3, lshrhi3, ashrhi3): Force operand 1
	into a register if shift count not constant.
	(ashlhi3_reg, lshrhi3_reg, ashrhi3_reg): Ensure that operand 1
	is a register.

From-SVN: r26109
1999-04-01 17:02:51 +00:00
Michael Hayes
8de858c039 c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED is non-zero.
* config/c4x/c4x.md (*db): Enable pattern if TARGET_LOOP_UNSIGNED
	is non-zero.
	(movstrqi_small, movstrqi_large, *cmpstrqi): Add + modifier to address
 	register constraints.
	(*movhi_clobber+1): Modify splitter pattern to handle destination
	register that is used in the source address.
	(*xorhi3_clobber): Replace AND with XOR in call to legitimize_operands.

From-SVN: r26108
1999-04-01 16:40:38 +00:00
Michael Hayes
4adf744bb4 * config/c4x/c4x.h: Added more comments.
From-SVN: r26107
1999-04-01 16:16:53 +00:00
Michael Hayes
305902b006 c4x.c (c4x_emit_move_sequence): Force invalid QImode constants into memory if...
* config/c4x/c4x.c (c4x_emit_move_sequence): Force invalid QImode
	constants into memory if we get called directly from gen_move_insn
	rather than emit_move_insn.
	(c4x_legitimize_address): Fix up LABEL_REF addresses.

From-SVN: r26106
1999-04-01 16:02:07 +00:00
Nathan Sidwell
ae9e7e16cd cvt.c (convert_pointer_to_real): Use same_type_p.
* cvt.c (convert_pointer_to_real): Use same_type_p.
	* typeck.c (comp_target_types): Use same_type_p.

From-SVN: r26105
1999-04-01 12:23:07 +00:00
Jim Wilson
6ab06cbb5b Fix irix6 libstdc++ v3 build failure with complex types.
* expr.c (store_field): When check direct_store, assume all complex
	modes can be directly stored.

From-SVN: r26104
1999-04-01 04:05:24 -08:00
Bruce Korb
b7c8ae04e1 missing comment from yesterday + new shell script
From-SVN: r26103
1999-04-01 08:22:39 +00:00
Bruce Korb
4924608282 Shell script to create the generated files
from the templates and definitions.

From-SVN: r26102
1999-04-01 08:18:52 +00:00
Manfred Hollstein
69b2ac84b8 Makefile.in (cppmain$(exeext)): Depend on intl.o.
h
	* Makefile.in (cppmain$(exeext)): Depend on intl.o.  Link in intl.o.

From-SVN: r26101
1999-04-01 08:05:46 +00:00
Manfred Hollstein
454e562f6e Makefile.in (cppmain$(exeext)): Depend on intl.o.
�
	* Makefile.in (cppmain$(exeext)): Depend on intl.o.  Link in intl.o.

From-SVN: r26100
1999-04-01 08:05:43 +00:00
H.J. Lu
80309a9c53 i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT signed integer comparisons.
* i386.c (output_fp_conditional_move): Abort for LT, LE, GE, and GT
        signed integer comparisons.

From-SVN: r26099
1999-03-31 20:01:19 -07:00
H.J. Lu
9a6ac4b0c2 i386.c (output_int_conditional_move): Use "enum rtx_code" for code type.
* i386.c (output_int_conditional_move): Use "enum rtx_code" for code
        type.

From-SVN: r26098
1999-03-31 19:56:31 -07:00
H.J. Lu
a32126ad04 i386.c (notice_update_cc): No need to check the INT mode for conditional moves since FLOAT conditional...
* i386.c (notice_update_cc): No need to check the INT mode for
        conditional moves since FLOAT conditional moves don't affect cc0.

From-SVN: r26097
1999-03-31 19:53:54 -07:00
Jeffrey A Law
ccce12f3f3 inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger string to only match on hpux11.
* fixinc/inclhack.def (zzz_ki_syscalls, zzz_time): Fix trigger
        string to only match on hpux11.
        * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.

From-SVN: r26096
1999-03-31 18:19:07 -07:00
Jeff Law
64f05e9094 Daily bump.
From-SVN: r26095
1999-03-31 17:45:04 -07:00
Alexandre Oliva
0cb97c8d0c hackshell.tpl: Complete transition to fixinc.tmp.
* fixinc/hackshell.tpl: Complete transition to fixinc.tmp.
        * fixinc/inclhack.sh: Rebuilt.

From-SVN: r26094
1999-03-31 17:25:26 -07:00
Alexandre Oliva
adc8046e1d inclhack.def: Fix typos in c_asm.h fix.
* fixinc/inclhack.def: Fix typos in c_asm.h fix.
        * fixinc/fixincl.x, fixinc/inclhack.sh, fixinc/fixinc.sh: Rebuilt.

From-SVN: r26093
1999-03-31 17:15:14 -07:00
Jason Merrill
51632249ef semantics.c (begin_inline_definitions, [...]): Rename from finish_default_args and begin_inline_definitions...
* semantics.c (begin_inline_definitions,
	finish_inline_definitions): Rename from finish_default_args and
	begin_inline_definitions, respectively, to something that isn't a
	total lie.  :)
	* parse.y (structsp): Adjust.
	* tree.c (hash_tree_cons): Remove obsolete via_* parms.
	(list_hash_lookup): Likewise.
	(hash_tree_chain): Adjust.
	* pt.c (tsubst): Adjust.
	(tsubst_arg_types): Use plain hash_tree_cons.
	* cp-tree.h (hash_tree_cons_simple): Lose.
	* parse.y (declmods, nonempty_cv_qualifiers): Use hash_tree_cons.

From-SVN: r26092
1999-03-31 13:59:19 -05:00
Jeffrey A Law
bbd2180d18 toplev.c (rest_of_compilation): Allow dbr_schedule to write to the dump file too.
* toplev.c (rest_of_compilation): Allow dbr_schedule to write to
        the dump file too.

From-SVN: r26091
1999-03-31 09:26:36 -07:00
Richard Henderson
359da67d8a flow.c (find_basic_blocks): New argument `do_cleanup'.
* flow.c (find_basic_blocks): New argument `do_cleanup'.
        Conditionally call delete_unreachable_blocks.
        (free_basic_block_vars): Zero ENTRY/EXIT data.
        (allocate_for_life_analysis): Kill.  Split into...
        (allocate_bb_life_data, allocate_reg_life_data): ... new functions.
        (life_analysis_1): Update.
        * gcse.c (gcse_main): Update find_basic_blocks call.
        * toplev.c (rest_of_compilation): Likewise.
        * stupid.c (stupid_life_analysis): Update life data calls.
        * rtl.h, output.h: Update prototypes.

From-SVN: r26090
1999-03-31 04:41:03 -08:00
Bruce Korb
42493273de updates, cleanups and reworking of fixinc
From-SVN: r26089
1999-03-31 12:13:32 +00:00
Bruce Korb
48bd952911 regenerated
From-SVN: r26088
1999-03-31 12:05:26 +00:00
Bruce Korb
8f34d1e946 added spaces to ensure correct shell syntax.
Added test to ensure '//' comments were not deleted inside strings
Added the missing c_asm.h fix

From-SVN: r26087
1999-03-31 12:02:19 +00:00
Bruce Korb
7d9ccd90ff Reworked method for traversing sym-linked directory hierarchies
From-SVN: r26086
1999-03-31 11:51:29 +00:00
Tom Tromey
5877286edf gjavah.c (print_field_info): Allow constants of other types.
* gjavah.c (print_field_info): Allow constants of other types.
	(print_include): Generate include when new name is proper prefix
	of already printed name.
	(add_namelet): Likewise.
	(cxx_keyword_subst): New function.
	(print_method_info): Use it.
	(print_field_name): New function.
	(get_field_name): New function.
	(print_field_info): Use get_field_name and print_field_name.

From-SVN: r26085
1999-03-31 11:46:42 +00:00