1. 17 Sep, 2000 14 commits
    • alias.c (true_dependence): Allow non-unchanging read to conflict with unchanging write. · ec569656
      	* alias.c (true_dependence): Allow non-unchanging read to conflict
      	with unchanging write.
      
      From-SVN: r36476
      Richard Kenner committed
    • expr.c (store_constructor_field): Accept ALIAS_SET arg. · 23cb1766
      	* expr.c (store_constructor_field): Accept ALIAS_SET arg.
      	(store_constructor): Pass alias_set to it.
      
      From-SVN: r36475
      Richard Kenner committed
    • avr.md ("mcu_enhanced"): New attribute. · 7e3bd81e
      	* config/avr/avr.md ("mcu_enhanced"): New attribute.
      	("mcu_mega"): Likewise.
      	("extendhisi2"): Use "mcu_enhanced".
      	("zero_extendhisi2"): Likewise.
      	("call_insn"): Use "mcu_enhanced" and "mcu_mega".
      	("call_value_insn"): Likewise.
      	("*sbrx_branch"): Use "mcu_mega".
      	("*sbrx_and_branchsi"): Likewise.
      	("*sbrx_and_branchhi"): Likewise.
      	("*tablejump_lib"): Likewise.
      
      From-SVN: r36474
      Denis Chertykov committed
    • Add myself · d733f374
      From-SVN: r36473
      Marc Espie committed
    • c-decl.c (grokdeclarator): Reorder tests to avoid looking at TYPE_MAIN_VARIANT of ERROR_MARK. · a52fb89b
      	* c-decl.c (grokdeclarator): Reorder tests to avoid looking at
      	TYPE_MAIN_VARIANT of ERROR_MARK.
      	* c-lex.c (readescape): Avoid using printf syntax we don't recognize.
      
      From-SVN: r36472
      Richard Kenner committed
    • simplify-rtx.c (simplify_unary_operation): Add cases FLOAT_EXTEND and… · 6a51f4a0
      simplify-rtx.c (simplify_unary_operation): Add cases FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0.
      
      	* simplify-rtx.c (simplify_unary_operation): Add cases
      	FLOAT_EXTEND and FLOAT_TRUNCATE to ones that return 0.
      
      From-SVN: r36471
      Richard Kenner committed
    • function.h (no_debugging_symbols): New field. · 87c31d6b
      	* function.h (no_debugging_symbols): New field.
      	* integrate.c (save_for_inline): Renamed from save_for_inline_nocopy.
      	Initialize no_debugging_symbols.
      	(output_inline_function): Save and restore write_symbols and set from
      	no_debugging_symbols.
      	* toplev.c (rest_of_compilation): Call save_for_inline.
      	* tree.h: Update comment.
      
      From-SVN: r36470
      Richard Kenner committed
    • Bring back equal forms for libcalls · ebb1b59a
      From-SVN: r36469
      Bernd Schmidt committed
    • decl2.c (handle_class_head): Always push some scope even in the error case. · fc928afe
      	* decl2.c (handle_class_head): Always push some scope even
      	in the error case.
      
      From-SVN: r36467
      Geoff Keating committed
    • 20000917-1.c: New test. · 859e203f
      	* gcc.c-torture/execute/20000917-1.c: New test.
      	* gcc.c-torture/execute/20000917-1.x: XFAIL.
      
      From-SVN: r36466
      Greg McGary committed
    • Daily bump. · 98c13cc0
      From-SVN: r36465
      Jeff Law committed
    • splay-tree.c (splay_tree_predecessor): Fix typo in comment. · 8f17b5c5
      	* splay-tree.c (splay_tree_predecessor): Fix typo in comment.
      
      	Convert the C front-end to use function-at-a-time mode.
      	* c-common.h: Include splay-tree.h.
      	(C_DECLARED_LABEL_FLAG): New macro.
      	(struct language_function): Add x_scope_stmt_stack and
      	x_function_name_declared_p.
      	(RECHAIN_STMTS): Move definition.
      	(lang_statment_code_p): Likewise.
      	(lang_expand_stmt): Likewise.
      	(lang_expand_decl_stmt): New variable.
      	(lang_expand_function_end): Likewise.
      	(current_scope_stmt_stack): New function.
      	(add_decl_stmt): Likewise.
      	(add_scope_stmt): Likewise.
      	(mark_stmt_tree): Likewise.
      	(struct c_lang_decl): New structure.
      	(DECL_SAVED_TREE): Define.
      	(c_mark_lang_decl): New function.
      	(c_expand_start_cond): Change prototype.
      	(c_finish_then): New function.
      	(c_finish_else): Likewise.
      	(current_function_name_declared): Remove.
      	(set_current_function_name_declared): Likewise.
      	(mark_c_language_function): Declare.
      	(case_compare): Likewise.
      	(c_add_case_label): Likewise.
      	(c_expand_expr): Likewise.
      	(c_safe_from_p): Likewise.
      	* c-common.c (lang_expand_function_end): New variable.
      	(struct if_elt): Add if_stmt.
      	(c_expand_start_cond): Add the if-statement to the statement-tree,
      	rather than generating RTL.
      	(c_finish_then): New function.
      	(c_expand_start_else): Don't generate RTL.
      	(c_finish_else): New function.
      	(c_expand_expr_stmt): Don't generate RTL.
      	(statement_code_p): Add SCOPE_STMT.
      	(case_compare): New function.
      	(c_add_case_label): Likewise.
      	(mark_stmt_tree): Likewise.
      	(c_mark_lang_decl): Likewise.
      	(mark_c_language_function): Likewise.
      	(c_expand_expr): Likewise.
      	(c_safe_from_p): Likewise.
      	* c-decl.c (c_stmt_tree): New variable
      	(c_scope_stmt_stack): Likewise.
      	(c_function_name_declared_p): Likewise.
      	(lang_expand_expr_stmt): Remove.
      	(poplevel): Don't call output_inline_function for nested
      	functions.
      	(pushdecl): Don't set DECL_CONTEXT for a local declaration of an
      	`extern' function.
      	(redeclaration_error_message): Change means of computing whether
      	or not a function is nested.
      	(lookup_label): Don't call label_rtx.
      	(init_decl_processing): Add more GC roots.
      	(start_decl): Add DECL_STMTs to the statement-tree, rather than
      	calling rest_of_decl_compilation.
      	(finish_decl): Don't call expand_decl.
      	(store_parm_decls): Begin the statement-tree, but don't generate
      	RTL.
      	(finish_function): Tie off the statement-tree.  Call c_expand_body
      	if appropriate.
      	(c_expand_body): New function.
      	(push_c_function_context): Save more information.
      	(pop_c_function_contxt): Likewise.
      	(copy_lang_decl): Now that we use DECL_LANG_SPECIFIC, copy it.
      	(lang_mark_tree): Mark it.
      	(current_stmt_tree): Adjust.
      	(current_scope_stmt_stack): New function.
      	(do_case): Remove.
      	(set_current_name_declared): Likewise.
      	(c_begin_compound_stmt): Define.
      	(c_expand_decl_stmt): Likewise.
      	* c-lang.c: Include rtl.h and expr.h.
      	(lang_init): Set more language-specific hooks.
      	* c-lex.c: Include expr.h.
      	* c-parse.in: Changes throughout to add statements to the
      	statement-tree, rather than generating RTL after every statement.
      	* c-semantics.c (lang_expand_decl_stmt): Define.
      	(add_decl_stmt): New function.
      	(add_scope_stmt): Likewise.
      	(finish_stmt_tree): Tweak.
      	(genrtl_expr_stmt): Likewise.
      	(genrtl_decl_stmt): Handle local labels, and call
      	lang_expand_decl_stmt if required.
      	(genrtl_for_stmt): Fix line-number handling.
      	(genrtl_case_label): Handle cleanups.
      	(genrtl_asm_stmt): Don't call combine_strings.
      	(genrtl_compound_stmt): Simplify.
      	(expand_stmt): Handle SCOPE_STMTs.
      	* c-tree.h (struct lang_decl): New structure.
      	(C_DECLARED_LABEL_FLAG): Remove.
      	(c_begin_compound_stmt): Declare.
      	(c_expand_decl_stmt): Likewise.
      	(c_expand_start_case): Rename to c_start_case.
      	(c_finish_case): New function.
      	* c-typeck.c (start_init): Tweak setting of
      	constructor_incremental.
      	(c_expand_asm_operands): Tweak error-handling.  Add to the
      	statement-tree.
      	(c_expand_return): Add to the statement-tree.
      	(c_expand_start_case): Rename to ...
      	(c_start_case): ... this.
      	(struct c_switch): New type.
      	(switch_stack): New variable.
      	(do_case): Simplify.
      	(c_finish_case): New function.
      	* dependence.c: Include expr.h.
      	(enum dependence_type): Change spelling of enumerals.
      	(check_node_dependence): Adjust.
      	* expr.h (lang_safe_from_p): Declare.
      	(safe_from_p): Likewise.
      	* expr.c (lang_safe_from_p): New variable.
      	(safe_from_p): Give it external linkage.  Use lang_safe_from_p.
      	* stmt.c (expand_expr_stmt): Avoid clobberring of last_expr_type.
      	* toplev.c (rest_of_decl_compilation): Robustify.
      	* tree.c (contains_placeholder_p): Likewise.
      	* Makefile.in: Update dependencies.
      	* objc/objc-act.h: Adjust calculation of value for dummy_tree_code.
      	* objc/objc-act.c: Include rtl.h, expr.h, and c-common.h.
      	(objc_expand_function_end): New function.
      	(finish_method_def): Use it.
      	(init_objc): Initialize more language-specific hooks.
      	* objc/Make-lang.in: Update dependencies.
      
      	* cp-tree.h (struct cp_language_function): Remove
      	x_scope_stmt_stack and name_declared.
      	(current_scope_stmt_stack): Remove.
      	(function_name_declared_p): New macro.
      	(struct lang_decl_flags): Use c_lang_decl as a base class.
      	(context): Remove.
      	(struct lang_decl): Replace saved_tree with context.
      	(DECL_FRIEND_CONTEXT): Adjust accordingly.
      	(SET_DECL_FRIEND_CONTEXT): Likewise.
      	(DECL_VIRTUAL_CONTEXT): Likewise.
      	(DECL_SAVED_TREE): Remove.
      	(C_DECLARED_LABEL_FLAG): Likewise.
      	(cplus_expand_expr_stmt): Don't declare.
      	(add_decl_stmt): Likewise.
      	(add_scope_stmt): Likewise.
      	* decl.c (mark_stmt_tree): Remove.
      	(case_compare): Likewise.
      	(finish_case_label): Use c_add_case_label.
      	(init_decl_processing): Set more language-specific hooks.
      	(build_enumerator): Fix typo in comment.
      	(cplus_expand_expr_stmt): Remove.
      	(mark_lang_function): Use mark_c_language_function.
      	(lang_mark_tree): Use c_mark_lang_decl.
      	* decl2.c: Change order of inclusion.
      	* except.c: Likewise.
      	* expr.c (cplus_expand_expr): Remove handling of STMT_EXPR.  Fall
      	back on c_expand_expr.
      	* friend.c: Include expr.h.
      	* init.c: Change order of inclusion.
      	* Makefile.in: Update dependencies.
      	* lex.h (free_lang_decl_chain): Remove.
      	* optimize.c (maybe_clone_body): Use function_name_declared_p.
      	* pt.c (build_template_decl): Don't copy DECL_VIRTUAL_CONTEXT if
      	it doesn't exist.
      	(instantiate_decl): Use function_name_declared_p.
      	* semantics.c (lang_expand_expr_stmt): Remove.
      	(set_current_function_name_declared): Likewise.
      	(current_function_name_declared): Likewise.
      	(begin_compound_stmt): Use function_name_declared_p.
      	(add_decl_stmt): Remove.
      	(setup_vtbl_ptr): Use function_name_declared_p.
      	(add_scope_stmt): Remove.
      	(current_scope_stmt_stack): New function.
      	(cp_expand_stmt): Don't handle SCOPE_STMTs.
      	(expand_body): Use function_name_declared_p.
      	* tree.c (cp_statement_code_p): Don't include SCOPE_STMT.
      	* typeck.c: Change order of includes.
      	(convert_sequence): Remove.
      
      From-SVN: r36464
      Mark Mitchell committed
    • configure.in: Define macros that affect features before testing for features. · 4797e955
      	* configure.in: Define macros that affect features before
      	testing for features.  Don't define _XOPEN_SOURCE.
      	* configure: Regenerated.
      	* config.in: Regenerated.
      
      From-SVN: r36463
      Geoff Keating committed
  2. 16 Sep, 2000 11 commits
  3. 15 Sep, 2000 15 commits
    • locale.cc (locale::locale(const char* __name)): Consolidate name setting. · d9fbca26
      
      2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
      
              * src/locale.cc (locale::locale(const char* __name)): Consolidate
              name setting. Add checks for NULL __name pointers. Remove calls to
              _S_initialize() as initial locale initialization can either be
              assumed, or needs to be made consistent throughout locale
              constructors.
              (locale::locale(const locale& __other, const char* __name,
              category __cat): Add checks for NULL name. Add checks for
              assignment to self.
              * src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
              const string& __name, category __cat, size_t __refs)): Set correct
              name, has_name values.
              * testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
              * docs/22_locale/locale.html: New file, more unfinished docs...
      
      From-SVN: r36451
      Benjamin Kosnik committed
    • locale.cc (locale::locale(const char* __name)): Consolidate name setting. · 04807c28
      
      2000-09-15  Benjamin Kosnik  <bkoz@purist.soma.redhat.com>
      
      	* src/locale.cc (locale::locale(const char* __name)): Consolidate
      	name setting. Add checks for NULL __name pointers. Remove calls to
      	_S_initialize() as initial locale initialization can either be
      	assumed, or needs to be made consistent throughout locale
      	construtors.
      	(locale::locale(const locale& __other, const char* __name,
      	category __cat): Add checks for NULL name. Add checks for
      	assignment to self.
      	* src/localename.cc (locale::_Impl:: _Impl(const _Impl& __other,
      	const string& __name, category __cat, size_t __refs)): Set correct
      	name, has_name values.
      	* testsuite/22_locale/ctor_copy_dtor.cc (test01): More tests.
      	* docs/22_locale/locale.html: New file, more unfinished docs...
      
      From-SVN: r36450
      Benjamin Kosnik committed
    • * lex.h: Use HAVE_ICONV_H, not HAVE_ICONV. · 4c4b521a
      From-SVN: r36449
      Tom Tromey committed
    • configure, config.in: Rebuilt. · 16abe34a
      	* configure, config.in: Rebuilt.
      	* configure.in: Check for iconv.h.  Define _XOPEN_SOURCE.
      
      From-SVN: r36448
      Tom Tromey committed
    • cppmacro.c (check_trad_stringification): Check token text pointers against limit… · 61c16b10
      cppmacro.c (check_trad_stringification): Check token text pointers against limit before dereferencing.
      
      	* cppmacro.c (check_trad_stringification): Check token
      	text pointers against limit before dereferencing.
      
      From-SVN: r36447
      Greg McGary committed
    • c-common.c (format_wanted_type): New structure. · 6a357625
      	* c-common.c (format_wanted_type): New structure.
      	(check_format_types): New function.
      	(check_format_info): Pass all checking of types of format
      	arguments, including width and precision arguments, to this new
      	function.
      
      From-SVN: r36446
      Joseph Myers committed
    • * BUGS: Remove file. · 6a1d1088
      From-SVN: r36445
      Gerald Pfeifer committed
    • alpha.c (override_options): ev6 cache latencies from Richard Henderson. · 54f5c4b0
      	* config/alpha/alpha.c (override_options): ev6 cache latencies
      	from Richard Henderson.  Don't allow -mmemory-latency=L0.
      
      From-SVN: r36444
      Jakub Jelinek committed
    • alpha.h (TARGET_CPU_EV5, [...]): Define. · a3b815cb
      	* config/alpha/alpha.h (TARGET_CPU_EV5, TARGET_CPU_EV6): Define.
      	(TARGET_OPTIONS): Add tune=.
      	(alpha_tune_string): Declare.
      	* config/alpha/alpha.c (override_options): Add cpu_table.
      	Use alpha_cpu_string first to set both alpha_cpu and target_flags
      	and then alpha_tune_string to set alpha_cpu only.
      	Replace tests for PROCESSOR_EV* with TARGET_CPU_EV* tests.
      	* config/alpha/elf.h (ASM_FILE_START): Likewise.
      	* config/alpha/osf.h (ASM_FILE_START): Likewise.
      	* config/alpha/openbsd.h (ASM_FILE_START): Likewise.
      
      From-SVN: r36443
      Jakub Jelinek committed
    • i386-protos.h (no_comparison_operator, [...]): Remove. · 9076b9c1
      	* i386-protos.h (no_comparison_operator, uno_comparison_operator):
      	Remove.
      	(ix86_comparison_operator, ix86_cc_mode): Declare
      	* i386.h (CCGC, CCGCO): New modes.
      	(SELECT_CC_MODE): Move offline to ....
      	* i386.c (ix86_cc_mode): .... here; use new modes.
      	(ix86_comparison_operator): New.
      	(fcmov_comparison_operator): Ensure proper mode.
      	(put_condition_mode): More sanity checking.
      	(ix86_match_ccmode): Handle new modes.
      	(ix86_expand_fp_compare): GEU requires CCmode.
      	(ix86_expand_strlensi_unroll_1): Use emit_cmp_and_jump_insn instead of
      	doing it by hand.
      	* i386.md (cmp?i_ccz_1): Remove
      	(cmp?i_ccno_1): Use ix86_match_ccmode.
      	(cmp?i_minus_1): New.
      	(cmpsi_1): New expander.
      	(cmpqi_ext_1): Use match_ccmode
      	(cmpqi_ext_3): New expander.
      	(cmpqi_ext_3_insn): Rename from cmpqi_ext_3.
      	(cmpqi_ext_4): Use match_ccmode.
      	(add?i_?): Use match_ccmode.
      	(add?i_6): New.
      	(test?i_ccz_1): Remove
      	(test?i_1): New.
      	(testsi_ccno_1, testqi_ccz_1, testqi_ext_ccno_0): New expander.
      	(testqi_ext_0): Use ix86_match_ccmode.
      	(*xorqi_cc_ext_1): Use ix86_match_ccmode.
      	(xorqi_cc_ext_1): New expander.
      	(shift patterns): Use CCGOCmode for all shifts except for sar.
      	(setcc_?, jcc_?, miv?icc_nic): Use ix86_comparison_operator.
      	(setcc_3, jcc_3, miv?icc_c): Remove.
      
      From-SVN: r36442
      Jan Hubicka committed
    • Described changes to dwarf2out.c. · 5eca72d9
      From-SVN: r36441
      William Cohen committed
    • Revision to accurately generate debugging information · 3724ec07
      for constant parameters to inlined functions.
      
      From-SVN: r36440
      William Cohen committed
    • gcc.c: Fix formatting. · d25a45d4
      2000-09-15  Kazu Hirata  <kazu@hxi.com>
      
      	* gcc.c: Fix formatting.
      
      From-SVN: r36439
      Kazu Hirata committed
    • * MAINTAINERS: Add myself to Write After Approval list. · d7ce9a83
      From-SVN: r36438
      Kazu Hirata committed
    • i386.md: Fix a comment typo. · 182a4620
      2000-09-15  Kazu Hirata  <kazu@hxi.com>
      
      	* config/i386/i386.md: Fix a comment typo.
      
      From-SVN: r36437
      Kazu Hirata committed