- 18 Sep, 2000 25 commits
-
-
* combine.c (if_then_else_cond): Canonicalize BImode true to STORE_FLAG_VALUE. * explow.c (trunc_int_for_mode): Likewise. From-SVN: r36507
Richard Henderson committed -
* combine.c (combine_simplify_rtx): Use gen_unary to distribute the NOT for De Morgan's rule. * simplify-rtx.c (simplify_unary_operation): Simplify a BImode NOT of a comparison to the reverse comparison. From-SVN: r36506
Richard Henderson committed -
2000-09-18 Yuri V. Baskakov <yuribsk@lab.sun.mcst.ru> * bits/std_bitset.h (operator>>): Change to char_type. From-SVN: r36505
Yuri V. Baskakov committed -
From-SVN: r36504
Richard Henderson committed -
* machmode.def: Add BImode. Add a column for bitsize. * machmode.h (DEF_MACHMODE): Adjust for extra column. (GET_MODE_BITSIZE): Use it. * rtl.c (DEF_MACHMODE): Adjust for extra column. (mode_bitsize): New. (mode_mask_array): Use bitsize. * combine.c (combine_simplify_rtx): Require inner and outer modes to match on nonzero_bits optimizations. From-SVN: r36501
Richard Henderson committed -
From-SVN: r36500
Bernd Schmidt committed -
From-SVN: r36499
Bernd Schmidt committed -
From-SVN: r36498
Bernd Schmidt committed -
From-SVN: r36497
Bernd Schmidt committed -
* config/sh/sh.c (sh_expand_prologue): Mark GOTaddr2picreg as MAYBE_DEAD. (sh_expand_epilogue): Take the PIC register into account when computing the frame size. From-SVN: r36496
Alexandre Oliva committed -
* config/sh/sh.c (nonpic_symbol_mentioned_p): Check LABEL_REFs. * config/sh/sh.md (sym_label2reg, symPLT_label2reg): Protect LABEL_REFs with a PIC-safe unspec. From-SVN: r36495
Alexandre Oliva committed -
From-SVN: r36494
William Cohen committed -
c-common.c (check_format_info): Properly save the argument number and parameter for $ operand number formats in... * c-common.c (check_format_info): Properly save the argument number and parameter for $ operand number formats in case width and precision arguments are also used. Allow printf width and precision arguments to have operand numbers even if none was specified for the main format, since this is OK for %*.*m. Only object to missing $ operand number if the format used requires an argument. testsuite: * gcc.dg/format-ext-1.c: Add tests for mixing %m with $ formats. * gcc.dg/format-xopen-1.c: Fix error in one $ format test. Add more $ format tests. From-SVN: r36493
Joseph Myers committed -
* c-common.c (format_char_info): Add 'W' flag to comment. (print_char_table, scan_char_table): Use it. (check_format_info): Use the 'W' flag to determine whether a format argument is written into. From-SVN: r36492
Joseph Myers committed -
From-SVN: r36491
Joseph Myers committed -
* c-common.c (check_format_types): Reorganise and clean up, checking earlier for ERROR_MARKs and making cur_type into its TYPE_MAIN_VARIANT where convenient. From-SVN: r36490
Joseph Myers committed -
From-SVN: r36489
Joseph Myers committed -
From-SVN: r36488
Gerald Pfeifer committed -
From-SVN: r36487
Bernd Schmidt committed -
From-SVN: r36486
Bernd Schmidt committed -
* configure.in: Define _GNU_SOURCE only when using the GNU C Library. * configure: Regenerated. * config.in: Regenerated. From-SVN: r36485
Andreas Jaeger committed -
From-SVN: r36482
Jeff Law committed -
From-SVN: r36481
Greg McGary committed -
* cppinit.c (cpp_init): Don't use ANSI prototypes. * flow.c (flow_dump_loop): Likewise. (flow_loops_dump): Likewise. From-SVN: r36480
Mark Mitchell committed -
From-SVN: r36479
Mark Mitchell committed
-
- 17 Sep, 2000 15 commits
-
-
c-decl.c (grokdeclarator): Don't give a warning about defaulting to int for plain complex which defaults... * c-decl.c (grokdeclarator): Don't give a warning about defaulting to int for plain complex which defaults to complex double. Do warn about defaulting to complex double if pedantic. Warn about complex integer types if pedantic. Warn about complex types if pedantic and not in C99 mode. * c-typeck.c (build_unary_op): If pedantic, warn about use of ~ for complex conjugation. testsuite: * gcc.dg/c90-complex-1.c, gcc.dg/c99-complex-1.c: New tests. From-SVN: r36478
Joseph Myers committed -
From-SVN: r36477
Joseph Myers committed -
* 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. (store_constructor): Pass alias_set to it. From-SVN: r36475
Richard Kenner committed -
* 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 -
From-SVN: r36473
Marc Espie committed -
* 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 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. * 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 -
From-SVN: r36469
Bernd Schmidt committed -
From-SVN: r36468
Bernd Schmidt committed -
* decl2.c (handle_class_head): Always push some scope even in the error case. From-SVN: r36467
Geoff Keating committed -
* gcc.c-torture/execute/20000917-1.c: New test. * gcc.c-torture/execute/20000917-1.x: XFAIL. From-SVN: r36466
Greg McGary committed -
From-SVN: r36465
Jeff Law committed -
* 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
-