Age | Commit message (Collapse) | Author | Files | Lines |
|
* config/rs6000/linux64.h (PROCESSOR_DEFAULT64): Default to POWER4.
* config/rs6000/rs6000.c (rs6000_adjust_cost): dep_insn is used.
From-SVN: r87843
|
|
* c-decl.c (implicitly_declare): Call maybe_apply_renaming_pragma.
(finish_decl): Likewise.
From-SVN: r87840
|
|
* tree.def (VEC_COND_EXPR): New tree node.
* tree-ssa-operands.c (get_expr_operands): Handle VEC_COND_EXPR.
From-SVN: r87839
|
|
[gcc/objc/ChangeLog]
2004-09-21 Ziemowit Laski <zlaski@apple.com>
* objc-act.c (objc_fold_objc_type_ref): New function.
* objc-act.h (objc_fold_objc_type_ref): New prototype.
From-SVN: r87838
|
|
* config/rs6000/darwin-tramp.asm: Add __ppc64__ case.
* config/rs6000/darwin-world.asm: Likewise.
From-SVN: r87836
|
|
2004-09-21 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa.c (verify_def): Use print_generic_stmt,
not debug_generic_stmt.
(verify_use): Ditto.
(verify_phi_args): Ditto.
(verify_ssa): Ditto.
From-SVN: r87835
|
|
From-SVN: r87833
|
|
target word size.
* varasm.c (default_assemble_integer): Return false for values wider
than the target word size. Works around GAS bug.
From-SVN: r87827
|
|
* parser.c (cp_lexer_peek_token, cp_lexer_consume_token):
Don't handle CPP_PRAGMA tokens specially.
(cp_lexer_handle_pragma): Use cp_lexer_consume_token. Don't
purge the token; do clear token->value after processing. Add
assertion at beginning that token->value is nonzero.
(cp_parser_statement, cp_parser_declaration_seq_opt): Handle
CPP_PRAGMA as a full statement or declaration in its own right.
From-SVN: r87822
|
|
* reg-notes.def (REG_DEP_TRUE): New entry, place first so it
gets value 0.
* print-rtl.c (print_rtx): Print the name of a REG_NOTE even
if it has value 0.
From-SVN: r87821
|
|
* gjavah.c (free_method_name_list): Fix function definition so
it's a proper C prototype.
From-SVN: r87815
|
|
anonymous types are legal)
PR c++/15049
* cp/decl.c (grokvardecl): Accept declarations of global variables
using anonymous types.
* testsuite/g++.dg/other/anon3.C: New.
From-SVN: r87814
|
|
PR java/17575:
* gjavah.c (free_method_name_list): New method.
(main): Call it.
From-SVN: r87812
|
|
PR c++/7503
* tree.c (lvalue_p_1): Disallow MIN_EXPR and MAX_EXPR as lvalues
if either operand has side-effects.
* typeck.c (rationalize_conditional_expr): Assert that neither
operand of MIN_EXPR or MAX_EXPR has side-effects.
(build_modify_expr): Add support for MIN_EXPR and MAX_EXPR.
Check that the "lhs" is a valid lvalue, i.e. that neither operand
of a MIN_EXPR or MAX_EXPR has a side-effect.
* g++.dg/opt/pr7503-1.C: New testcase for COND_EXPR lvalues.
* g++.dg/opt/pr7503-2.C: New testcase for <? and >? lvalues.
* g++.dg/opt/pr7503-3.C: New testcase for invalid <? lvalue errors.
* g++.dg/opt/pr7503-4.C: New testcase for <?= and >?= assignments.
* g++.dg/opt/pr7503-5.C: New testcase for side-effects with <?=.
From-SVN: r87810
|
|
call in error message.
2004-09-21 Daniel Berlin <dberlin@dberlin.org>
* c-typeck.c (build_function_call): Give name of object
we are attempting to call in error message.
* c-objc-common.c (c_tree_printer): Call pp_expression,
not return false, for 'E' case.
From-SVN: r87809
|
|
* cp-tree.h (struct lang_type_header): Remove
uses_multiple_inheritance field.
(TYPE_USES_MULTIPLE_INHERITANCE): Remove.
(TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P): Remove.
(TYPE_USES_VIRTUAL_BASECLASSES): Remove.
(DECL_NEEDS_VTT_PARM_P): Use CLASSTYPE_VBASECLASSES.
(TYPE_CONTAINS_VPTR_P): Likewise.
* call.c (add_template_candidate_real): Use
CLASSTYPE_VBASECLASSES.
(build_special_member_call): Likewise.
* class.c (finish_struct_bits): Remove
TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P & TYPE_USES_VIRTUAL_BASECLASSES
bookkeeping.
(check_bases_and_members): Use TYPE_CONTAINS_VPTR_P.
(create_vtable_ptr): Remove TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P
bookkeeping.
(build_vtt_inits): Use CLASSTYPE_VBASECLASSES.
(accumulate_vtbl_inits, build_vbase_offset_vtbl_entries):
Likewise.
* decl.c (xref_basetypes): Remove TYPE_USES_MULTIPLE_INHERITANCE,
TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P, TYPE_USES_VIRTUAL_BASECLASSES
bookkeeping.
(cxx_maybe_build_cleanup): Use CLASSTYPE_VBASECLASSES.
* decl2.c (maybe_retrofit_in_chrg): Likewise.
* init.c (expand_member, push_base_cleanups): Likewise.
* pt.c (instantiate_class_template): Remove
TYPE_USES_MULTIPLE_INHERITANCE,
TYPE_BASE_CONVS_MAY_REQUIRE_CODE_P, TYPE_USES_VIRTUAL_BASECLASSES
bookkeeping.
* ptree.c (cxx_print_type): Remove TYPE_USES_MULTIPLE_INHERITANCE
check.
* typeck2.c (process_init_constructor): Replace some sorrys with
asserts.
From-SVN: r87808
|
|
instead of COMPLETE_TYPE_P.
2004-09-21 Olivier Hainque <hainque@act-europe.fr>
* decl.c (gnat_to_gnu_entity) <E_General_Access_Type>: Check for a
dummy designated type via TYPE_MODE instead of COMPLETE_TYPE_P. This
ensures proper handling of types with rep clauses, which might have
their TYPE_SIZE set already.
From-SVN: r87807
|
|
little- and big-endian cases.
2004-09-21 Robert Dewar <dewar@gnat.com>
* decl.c (gnat_to_gnu_type, case E_Modular_Integer_Type): Wrap modular
packed array types in both little- and big-endian cases. This change
ensures that we no longer count on the unused bits being initialized
for such types (and in particular ensures that equality testing will
only read the relevant bits).
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
These changes mean that we no longer need to initialize small packed
arrays.
(gnat_to_gnu_entity) <E_Record_Subtype>: Apply the same
optimization to an LJM field as to its parent field.
* ada-tree.h:, trans.c, utils.c, utils2.c:
Change name TYPE_LEFT_JUSTIFIED_MODULAR_P to TYPE_JUSTIFIED_MODULAR_P
From-SVN: r87806
|
|
contain whitespace or newlines for READ)
2004-09-21 Bud Davis <bdavis9659@comcast.net>
PR fortran/17286
* io/list_read.c (namelist_read): ignore spaces after
the '=' for namelist reads.
2004-09-21 Bud Davis <bdavis9659@comcast.net>
PR fortran/17286
* gfortran.dg/pr17286.f90: New test.
From-SVN: r87799
|
|
2004-09-21 Andreas Tobler <a.tobler@schweiz.ch>
* decl.c (reshape_init_array): Initialize max_index_cst to fix
bootstrap failure.
From-SVN: r87798
|
|
PR rtl-optimization/17482
* postreload-gcse.c (reg_avail_info, oprs_unchanged_p,
load_killed_in_block_p): Clarify comments.
(record_last_reg_set_info): Make static inline.
(mark_call, mark_set, mark_clobber, mark_oprs_set): Remove.
(record_opr_changes): New function to replace the above.
(compute_hash_table): Clarify comments. Use record_opr_changes.
(reg_set_between_after_reload_p): Clean up.
(reg_used_between_after_reload_p): Likewise.
(eliminate_partially_redundant_load): Clarify comments.
From-SVN: r87794
|
|
PR rtl-optimization/17266
* regmove.c (optimize_reg_copy_3): Make a new SUBREG for each insn.
From-SVN: r87793
|
|
PR c++/17530
* pt.c (tsubst): Fix parentheses to accomodate emacs.
(tsubst_baselink): If we get a single function, mark it as used.
PR c++/17530
* g++.dg/template/static7.C: New test.
From-SVN: r87791
|
|
PR rtl-optimization/14851
* rtlanal.c (commutative_operand_precedence): Calculate
precedence of stripped constant.
From-SVN: r87788
|
|
key elements here.
* tree-ssanames.c (make_ssa_name): No longer need to clear, then
initialize key elements here.
(release_ssa_name): Zero the released SSA_NAME here.
* tree.h (SSA_NAME_EQUIV, SET_SSA_NAME_EQUIV): New macros.
(struct tree_ssa_name): Add new "equiv" field.
* tree-ssa-dom.c (const_and_copies): Kill the global varray.
(tree_ssa_dominator_optimize): No longer allocate, resize or
clear CONST_AND_COPIES.
(get_value_for, set_value_for): Kill.
(thread_across_edge): Get/set the equivalency using
SSA_NAME_EQUIV and SET_SSA_NAME_EQUIV.
(restore_vars_to_original_value): Likewise.
(record_equivalences_from_phis): Likewise.
(record_dominating_conditions): Likewise.
(record_const_or_copy, record_equality): Likewise.
(lookup_avail_expr): Likewise.
(record_equivalences_from_stmt, cprop_operand): Likewise.
(cprop_into_successor_phis): No longer need to pass around
CONST_AND_COPIES. Callers updated. Get equivalences via
SSA_NAME_EQUIV.
(cprop_into_phis): Likewise.
Co-Authored-By: Jan Hubicka <jh@suse.cz>
From-SVN: r87787
|
|
unconditionally...
2004-09-20 Matt Austern <austern@apple.com>
Zack Weinberg <zack@codesourcery.com>
* c-common.c (fix_string_type): Build the unqualified array
type unconditionally, then use c_build_qualified_type to get
the proper const-qualified variant, and set its
TYPE_MAIN_VARIANT to refer to the unqualified type.
* c-lex.c (c_lex_return_raw_string): New global.
(c_lex_with_flags): Honor it.
* c-pragma.h: Declare it.
cp:
* decl.c (make_rtl_for_nonlocal_decl, start_preparsed_function):
Apply lbasename to input_filename before passing to get_fileinfo.
* semantics.c (begin_class_definition): Likewise.
* lex.c (handle_pragma_interface): Apply get_fileinfo to the
correct filename. Rename variables to be less confusing.
(handle_pragma_implementation): Likewise. Disable "appears
after file is included" diagnostic.
* parser.c (struct cp_token): Add in_system_header fiag.
(CP_TOKEN_BLOCK_NUM_TOKENS, struct cp_token_block)
(CP_TOKEN_BUFFER_SIZE, cp_token_cache_push_token)
(CPP_NONE, cp_lexer_read_token): Delete.
(struct cp_lexer): Remove first_token, string_tokens,
main_lexer_p fields. Clarify comments.
(struct cp_token_cache): Now just a pair of pointers.
(CP_LEXER_BUFFER_SIZE): New #define.
(CPP_PURGED): New fake token type.
(cp_lexer_new_from_token_array, cp_lexer_destroy)
(cp_lexer_peek_token_emit_debug_info, cp_lexer_skip_purged_tokens)
(cp_lexer_handle_pragma, cp_token_cache_new, cp_parser_string_literal):
New functions.
(cp_lexer_new_from_tokens): Now a simple wrapper around
cp_lexer_new_from_token_array.
(cp_lexer_set_source_position_from_token): Also update
in_system_header.
(cp_lexer_next_token, cp_lexer_prev_token, cp_lexer_advance_token):
Don't wrap round.
(cp_lexer_token_difference): Dont handle wrapping round.
(cp_lexer_new_main): Enable pragma deferral and raw strings,
read the entire translation unit through c_lex_with_flags into
this lexer's buffer, then turn raw strings back off again.
(cp_lexer_grow_buffer): Adjust for buffer no longer being circular.
(cp_lexer_get_preprocessor_token): No need to handle not being
the main lexer. Set token->in_system_header too.
(cp_lexer_peek_token): Skip purged tokens. Feed pragma tokens
to cp_lexer_handle_pragma. No need to call cp_lexer_read_token.
(cp_lexer_peek_nth_token): Likewise.
(cp_lexer_purge_token): Mark the token PURGED, don't shift all
the other tokens down.
(cp_lexer_purge_tokens_after): Likewise.
(cp_lexer_save_tokens, cp_lexer_rollback_tokens): Don't worry
about there being no tokens.
(cp_lexer_print_token): Revise to give useful information on
all tokens.
(struct cp_parser): Add field translate_strings_p.
(cp_parser_new): Initialize it.
(cp_parser_translation_unit): Destroy the lexer when done.
(cp_parser_parameter_declaration): Restructure saving of
default arguments.
(cp_parser_save_member_function_body): Likewise.
(cp_parser_check_for_invalid_template_id)
(cp_parser_nested_name_specifier_opt, cp_parser_template_id):
Adjust calls to cp_lexer_advance_token.
(cp_parser_skip_to_closing_parenthesis, cp_parser_declaration):
No need to fiddle c_lex_string_translate.
(cp_parser_primary_expression, cp_parser_linkage_specification)
(cp_parser_asm_definition, cp_parser_asm_specification_opt)
(cp_parser_asm_operand_list, cp_parser_asm_clobber_list)
Use cp_parser_string_literal.
(cp_parser_attribute_list): Save and restore
parser->translate_strings_p, not c_lex_string_translate.
(cp_parser_cache_group): Delete.
(cp_parser_cache_group_1): Rename cp_parser_cache_group. Do
not take a cache argument.
From-SVN: r87786
|
|
2004-09-20 Daniel Berlin <dberlin@dberlin.org>
* Makefile.in: Fix flags.h dependencies to be $(FLAGS_H).
From-SVN: r87785
|
|
From-SVN: r87783
|
|
PR middle-end/17126
* tree-optimize.c (update_inlined_to_pointers): Fix the recursion.
(tree_rest_of_compilation): Cleanup.
From-SVN: r87780
|
|
* config/s390/s390.c (s390_select_rtx_section): Remove.
(TARGET_ASM_SELECT_RTX_SECTION): Do not redefine.
From-SVN: r87779
|
|
direct save from the original...
* config/sh/sh.c (sh_expand_prologue): Add a REG_FRAME_RELATED_EXPR
note to pretend a direct save from the original register when an
intermediate register is used for the save.
From-SVN: r87778
|
|
PR c++/14179
* decl.c (reshape_init): Extract array handling into...
(reshape_init_array): New function. Use integers instead of trees
for indices. Handle out-of-range designated initializers.
From-SVN: r87777
|
|
* tsystem.h (alloca): Provide a default definition.
Revert:
2001-08-31 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
* unwind-dw2.c: Call __builtin_alloca, not alloca.
From-SVN: r87775
|
|
* lex.c (cxx_init): Don't set the ridpointer for RID_NULL
to null_node.
From-SVN: r87774
|
|
at tree-ssa-copy.c:182)
2004-09-20 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17558
* gcc.c-torture/compile/pr17558.c: New test.
From-SVN: r87773
|
|
at tree-ssa-copy.c:182)
2004-09-20 Andrew Pinski <pinskia@physics.uc.edu>
PR tree-opt/17558
* tree-ssa-copy.c (may_propagate_copy): Only allow if the
aliasing sets are the same rather than just conflicting.
From-SVN: r87772
|
|
* cgraph.c (cgraph_unnest_node): New function.
(c_finalize): Rename to ....
(c_warn_unused_result_recursivly): ... this one; do only the warning
(finish_function): Finalize the toplevel function; do not lower nested tree.
* cgraph.h (cgraph_unnest_node): Declare.
* cgraphunit.c (decide_is_function_needed): Do not use cgraph
nestedness datastructure.
* cse.c (cse_insn): Do not cprop nonlocal LABEL_REFs.
* reload1.c (set_label_offsets): Fix call of set_label_offsets.
* tree-nested.c (finlize_nesting_tree_1): Use un-nesting code.
From-SVN: r87771
|
|
PR middle-end/16460
* cgraph.c (cgraph_unnest_node): New function.
(c_finalize): Rename to ....
(c_warn_unused_result_recursivly): ... this one; do only the warning
(finish_function): Finalize the toplevel function; do not lower nested tree.
* cgraph.h (cgraph_unnest_node): Declare.
* cgraphunit.c (decide_is_function_needed): Do not use cgraph
nestedness datastructure.
* cse.c (cse_insn): Do not cprop nonlocal LABEL_REFs.
* reload1.c (set_label_offsets): Fix call of set_label_offsets.
* tree-nested.c (finlize_nesting_tree_1): Use un-nesting code.
* utils.c (gnat_finalize): Remove.
(end_subprog_body): Directly call cgraph_finalize_function;
do not lower the nested functions.
* trans-decl.c (build_entry_thunks): Finalize the function; do not lower
tree.
(gfc_generate_function_code): Likewise.
From-SVN: r87770
|
|
some_small_symbolic_operand_1; export.
* config/alpha/alpha.c (some_small_symbolic_operand_int): Rename
from some_small_symbolic_operand_1; export.
(some_small_symbolic_operand): Remove.
* config/alpha/alpha.md (some_small_symbolic_operand splitter): Remove
extra C check.
* config/alpha/predicates.md (some_small_symbolic_operand): New.
From-SVN: r87769
|
|
* predict.c (return_prediction): New function.
(apply_return_prediction): Likewise.
(tree_bb_level_predictions): Likewise.
(tree_estimate_probability): Add noreturn exit edges; call
bb_level_predictions; fix logic of return heuristics.
(predict_paths_leading_to): Rescuesce from old CVS version of
process_note_prediction function.
* predict.def (PRED_TREE_EARLY_RETURN): New predictor.
From-SVN: r87768
|
|
defined.
* gcc.dg/compat/sdata-section.h (SDATA_SECTION): Don't use an attribute
if SKIP_ATTRIBUTE is defined.
From-SVN: r87766
|
|
register area on stack.
2004-09-20 Andreas Krebbel <krebbel1@de.ibm.com>
* config/s390/s390.c (s390_frame_info): Added alignment statement for
floating point register area on stack.
From-SVN: r87765
|
|
fortran/
PR fortran/15957
* simplify.c (gfc_simplify_reshape): Set shape of return value
correctly.
testsuite/
PR fortran/15957
* gfortran.dg/pr15957.f90: New test.
From-SVN: r87764
|
|
From-SVN: r87763
|
|
* gcc.dg/vect/vect-74.c: Avoid floating point precision error
in comparison.
* gcc.dg/vect/vect-79.c: Likewise.
* gcc.dg/vect/vect-80.c: Likewise.
From-SVN: r87762
|
|
generating useless garbage.
2004-09-20 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-pre.c (compute_antic_aux): Use malloc'd worklist, to avoid
generating useless garbage.
From-SVN: r87760
|
|
machine-dependent built-ins.
2004-09-20 Paolo Bonzini <bonzini@gnu.org>
* builtins.c (fold_builtin): Call the new omonymous
target hook for machine-dependent built-ins.
* target-def.h (TARGET_FOLD_BUILTIN): New.
* target.h (struct gcc_target): Add the fold_builtin hook.
* targhooks.c (default_fold_builtin): New.
* targhooks.h (default_fold_builtin): Declare it.
From-SVN: r87756
|
|
2004-09-20 Robert Dewar <dewar@gnat.com>
PR ada/17540
* freeze.adb (Check_Address_Clause): Reset Is_Imported and Is_Public
if an address clause is present, since that means that the Import
should be ignored.
From-SVN: r87755
|
|
* cfg.c, tree-ssa-threadupdate.c, tree-vectorizer.c: Fix
comment typos.
From-SVN: r87753
|
|
PR fortran/15750
* gfortran.fortran-torture/execute/iolength_2.f90: New test.
From-SVN: r87752
|