aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2004-07-25regmove.c (optimize_reg_copy_1): Don't try to replace call-used hard registers.Daniel Jacobowitz2-0/+8
* regmove.c (optimize_reg_copy_1): Don't try to replace call-used hard registers. From-SVN: r85149
2004-07-25tree-ssa-operands.c (get_stmt_operands, [...]): Handle ARRAY_RANGE_REF like ↵Richard Kenner2-2/+9
ARRAY_REF. * tree-ssa-operands.c (get_stmt_operands, get_expr_operands): Handle ARRAY_RANGE_REF like ARRAY_REF. From-SVN: r85148
2004-07-25Remove obsolete text in comment.Richard Kenner1-2/+1
From-SVN: r85147
2004-07-25c-typeck.c (digest_init): Don't allow arrays of signed or unsigned variants ↵Joseph Myers4-19/+102
of wchar_t to be initialized... * c-typeck.c (digest_init): Don't allow arrays of signed or unsigned variants of wchar_t to be initialized by wide string constants. Do allow arrays of enumerated types compatible with wchar_t to be initialized by wide string constants. Refine tests distinguishing wide and narrow strings and arrays. Give specific error for arrays of other integer types initialized by string constants. (output_init_element, process_init_element): Check for INTEGRAL_TYPE_P rather than just for INTEGER_TYPE when initializing with string constants. testsuite: * gcc.dg/init-string-2.c: New test. From-SVN: r85146
2004-07-25c-decl.c (start_function): Set DECL_ARTIFICIAL and DECL_IGNORED_P on the ↵Richard Henderson13-9/+64
RESULT_DECL. * c-decl.c (start_function): Set DECL_ARTIFICIAL and DECL_IGNORED_P on the RESULT_DECL. * cgraphunit.c (cgraph_build_static_cdtor): Likewise. * integrate.c (copy_decl_for_inlining): Copy DECL_ARTIFICIAL and DECL_IGNORED_P to new decl. ada/ * utils.c (create_subprog_decl): Set DECL_ARTIFICIAL and DECL_IGNORED_P on RESULT_DECL. cp/ * decl.c (start_preparsed_function): Set DECL_ARTIFICIAL and DECL_IGNORED_P on RESULT_DECL. * semantics.c (finalize_nrv): Copy them too. fortran/ * trans-decl.c (gfc_build_function_decl): Set DECL_ARTIFICIAL and DECL_IGNORED_P on RESULT_DECL. (gfc_generate_constructors): Likewise. java/ * decl.c (build_result_decl): Set DECL_ARTIFICIAL and DECL_IGNORED_P. From-SVN: r85145
2004-07-25[multiple changes]Zack Weinberg4-25/+21
2004-07-24 Zack Weinberg <zack@codesourcery.com> * config/ia64/ia64.c (general_xfmode_operand) (destination_xfmode_operand): Delete. * config/ia64/ia64.h (PREDICATE_CODES): Remove them. * config/ia64/ia64.md (*movxf_internal): Use general_operand and destination_operand. 2004-07-24 Alexander Kabaev <kan@freebsd.org> * config/ia64/ia64.h (SUBTARGET_EXTRA_SPECS): Default to nothing. (EXTRA_SPECS): Use SUBTARGET_EXTRA_SPECS. From-SVN: r85141
2004-07-25Zack Weinberg <zack@codesourcery.comZack Weinberg4-13/+38
2004-07-24 Alexander Kabaev <kan@freebsd.org> Zack Weinberg <zack@codesourcery.com PR 16684 * c-decl.c (diagnose_mismatched_decls): Don't issue a redundant-declaration warning the first time a builtin is declared explicitly. testsuite: * gcc.dg/Wredundant-decls-1.c: New test case. From-SVN: r85140
2004-07-25* tree.h (staticp): Change return type to bool.Bernardo Innocenti2-1/+5
From-SVN: r85139
2004-07-25* c-common.c (c_staticp): Last episode of the staticp saga.Bernardo Innocenti2-3/+7
From-SVN: r85138
2004-07-25c-common.h (c_staticp): Change return type from int to bool.Bernardo Innocenti4-9/+15
* c-common.h (c_staticp): Change return type from int to bool. * tree.c (staticp): Likewise. * langhooks.h (staticp): Likewise. From-SVN: r85137
2004-07-25langhooks-def.h (lhd_staticp): Change return type from int to bool in ↵Bernardo Innocenti2-1/+6
prototype to match definition. * langhooks-def.h (lhd_staticp): Change return type from int to bool in prototype to match definition. From-SVN: r85136
2004-07-25system.h (bool, [...]): Don't redefine as preprocessor macros in C++.Bernardo Innocenti2-8/+23
* system.h (bool, true, false): Don't redefine as preprocessor macros in C++. From-SVN: r85135
2004-07-25expmed.c (init_expmed): A signed modulus by a power of two is considered ↵Roger Sayle2-1/+6
cheap if... * expmed.c (init_expmed): A signed modulus by a power of two is considered cheap if its less than or equal to four instructions. From-SVN: r85134
2004-07-25ggc.h (GGC_NEW, [...]): New macros.Bernardo Innocenti2-0/+13
* ggc.h (GGC_NEW, GGC_CNEW, GGC_NEWVEC, GGC_CNEWVEC, GGC_NEWVAR, GGC_CNEWVAR): New macros. From-SVN: r85133
2004-07-25Daily bump.GCC Administrator1-1/+1
From-SVN: r85131
2004-07-25c-common.c: Convert ATTRIBUTE_UNUSED to ARG_UNUSED in parameter lists.Bernardo Innocenti19-127/+153
* c-common.c: Convert ATTRIBUTE_UNUSED to ARG_UNUSED in parameter lists. * c-decl.c: Likewise. * c-format.c: Likewise. * c-lex.c: Likewise. * c-opts.c: Likewise. * c-pragma.c: Likewise. * c-typeck.c: Likewise. * gencheck.c: Likewise. * genconditions.c: Likewise. * genconfig.c: Likewise. * genflags.c: Likewise. * gengtype.c: Likewise. * gensupport.c: Likewise. * ggc-none.c: Likewise. * langhooks.c: Likewise. * statistics.h: Likewise. * stub-objc.c: Likewise. * java/decl.c: Likewise. From-SVN: r85128
2004-07-24m68k.c (output_scc_di): Fix coding style.Roman Zippel5-85/+66
2004-07-24 Roman Zippel <zippel@linux-m68k.org> * config/m68k/m68k.c (output_scc_di): Fix coding style. (symbolic_operand): Fix prototype. * config/m68k/m68k.h (PREDICATE_CODES): Add symbolic_operand. * config/m68k/m68k.md: Add constants for registers a0 and sp and use them, change from the "{...}" syntax to the simpler {...} syntax. (*cfv4_extendqisi2): Fix destination predicate. * config/m68k/m68k-protos.h: Remove various declarations also generated via PREDICATE_CODES. From-SVN: r85115
2004-07-24c-typeck.c (convert_for_assignment): Tightened up pointer converstions that ↵Mike Stump3-1/+32
differ in signedness. * c-typeck.c (convert_for_assignment): Tightened up pointer converstions that differ in signedness. Apple Radar 2535328. From-SVN: r85114
2004-07-24* genmodes.c (make_vector_modes): Mark with ATTRIBUTE_UNUSED.Zack Weinberg2-2/+6
From-SVN: r85113
2004-07-23tree.def (VIEW_CONVERT_EXPR): Change to class 'r'.Richard Kenner3-1/+5
* tree.def (VIEW_CONVERT_EXPR): Change to class 'r'. * tree-ssa-operands.c (get_expr_operands, case VIEW_CONVERT_EXPR): New. From-SVN: r85111
2004-07-23gimplify.c (gimplify_compound_lval): Check for no handled operations, rather ↵Richard Kenner3-57/+37
than checking for explicit list of nodes. * gimplify.c (gimplify_compound_lval): Check for no handled operations, rather than checking for explicit list of nodes. (is_gimple_addr_expr_arg_or_indirect): New function. (gimplify_addr_expr): Call it and handle INDIRECT_REF; remove redundant setting of TREE_INVARIANT. (gimplify_expr, case VIEW_CONVERT_EXPR): Call gimplify_compound_lval. * tree-gimple.c (is_gimple_addr_expr_arg): Call handled_component_p. From-SVN: r85110
2004-07-23re PR tree-optimization/16688 (ICE in group_aliases, at tree-ssa-alias.c:1234)Diego Novillo7-37/+119
PR tree-optimization/16688 PR tree-optimization/16689 * tree-ssa-alias.c (setup_pointers_and_addressables): Remove unnecessary initialization of 'tag'. (get_tmt_for): Check that the new type tag has the same alias set as the pointed-to type. (group_aliases): Only regular variables need to be removed from the alias set of a name tag. * tree-ssa-copy.c (may_propagate_copy): Do not allow copy propagation if the two types are not compatible. (merge_alias_info): Rename from replace_ssa_names_ann. Add more checking. (replace_exp_1): If both arguments are SSA_NAMEs, check that the propagation can be done. Only call merge_alias_info on pointers. (propagate_value): Likewise. * tree-ssa-copyrename.c: Include langhooks.h. (copy_rename_partition_coalesce): Call replace_ssa_name_symbol to do the merging. Do not coalesce variables with incompatible types. (rename_ssa_copies): Call replace_ssa_name_symbol. * tree-ssa.c (verify_ssa_name): Verify that the SSA_NAME has the same type as the underlying _DECL. * tree-ssanames.c (replace_ssa_name_symbol): New function. * tree.h (replace_ssa_name_symbol): Declare. From-SVN: r85108
2004-07-24Daily bump.GCC Administrator1-1/+1
From-SVN: r85106
2004-07-24boehm.c (set_bit): Improve type safety wrt unsignedness.Mike Stump12-55/+77
* boehm.c (set_bit): Improve type safety wrt unsignedness. * gjavah.c (throwable_p, decode_signature_piece, print_full_cxx_name, print_include, add_namelet, add_class_decl, process_file): Likewise. * jcf-dump.c (main): Likewise. * jcf-io.c (read_zip_member): Likewise. * jcf-parse.c (HANDLE_CONSTANT_Utf8, get_constant, give_name_to_class, get_class_constant): Likewise. * jcf-write.c (find_constant_wide, push_long_const, generate_classfile): Likewise. * lex.c (java_new_lexer, java_read_char, cxx_keyword_p): Likewise. * parse.y (read_import_dir): Likewise. * typeck.c (parse_signature_type): Likewise. * verify.c (verify_jvm_instructions): Likewise. * zextract.c (find_zip_file_start, read_zip_archive): Likewise. From-SVN: r85102
2004-07-23Makefile.am: Rename jar binary to fastjar.Thomas Fitzsimmons3-36/+42
2004-07-23 Thomas Fitzsimmons <fitzsim@redhat.com> * Makefile.am: Rename jar binary to fastjar. * Makefile.in: Regenerate. * fastjar.texi: Rename references to jar binary with fastjar. 2004-07-23 Thomas Fitzsimmons <fitzsim@redhat.com> * Make-lang.in: Replace rmic and rmiregistry references with grmic and grmiregistry. * gcj.texi: Likewise. 2004-07-23 Thomas Fitzsimmons <fitzsim@redhat.com> * Makefile.am: Replace jar, rmic and rmiregistry references with gjar, grmic and grmiregistry. * configure.in: Likewise. * Makefile.in: Regenerate. * configure: Likewise. * gcj/Makefile.in: Likewise. * include/Makefile.in: Likewise. * testsuite/Makefile.in: Likewise. From-SVN: r85101
2004-07-23re PR c++/16277 (Wrong code with conditionals in initializers)Richard Henderson2-10/+23
PR c++/16277 * gimplify.c (gimplify_cond_expr): Gimplify TARGET to a min_lval; unshare it properly. (gimplify_modify_expr_rhs): Push assignment from a conditional into the conditional for all non-register types. From-SVN: r85100
2004-07-23expr.c (expand_expr_real_1): Don't handle non-local variables.Richard Henderson13-111/+66
* expr.c (expand_expr_real_1): Don't handle non-local variables. * expr.h (fix_lexical_addr): Remove. * function.c (NEED_SEPARATE_AP): Remove. (fix_lexical_addr): Remove. * tree-alias-common.c (get_alias_var_decl): Check TREE_STATIC, not null decl_function_context. (create_alias_vars): Likewise. * tree-cfg.c (make_ctrl_stmt_edges): Don't check for non-local labels. (simple_goto_p): Likewise. * tree-dfa.c (add_referenced_var): Don't check for non-local variables. * tree-ssa-ccp.c (get_default_value): Likewise. * tree-tailcall.c (suitable_for_tail_opt_p): Likewise. * tree.c (needs_to_live_in_memory): Likewise. * tree-flow-inline.h (may_be_aliased): Move... * tree-ssa-alias.c (may_be_aliased): ... here. Enhance check for when TREE_STATIC variables may be addressable. From-SVN: r85099
2004-07-24Makefile.in (site.exp): Add HOSTCC and HOSTCFLAGS to site.exp.Jakub Jelinek19-0/+3181
* Makefile.in (site.exp): Add HOSTCC and HOSTCFLAGS to site.exp. testsuite/ * README.compat: Add RUN_ALL_COMPAT_TESTS documentation. * lib/compat.exp: Replace ^$tmpdir/? in testcase names with tmpdir-. * gcc.dg/compat/struct-layout-1.exp: New testsuite driver. * gcc.dg/compat/struct-layout-1_generate.c: New testcase generator. * gcc.dg/compat/generate-random.c: New file. * gcc.dg/compat/generate-random.h: Likewise. * gcc.dg/compat/generate-random_r.c: Likewise. * gcc.dg/compat/struct-layout-1.h: Likewise. * gcc.dg/compat/struct-layout-1_x1.h: Likewise. * gcc.dg/compat/struct-layout-1_x2.h: Likewise. * gcc.dg/compat/struct-layout-1_y1.h: Likewise. * gcc.dg/compat/struct-layout-1_y2.h: Likewise. * gcc.dg/compat/struct-layout-1_main.c: New test. * gcc.dg/compat/struct-layout-1_x.c: New file. * gcc.dg/compat/struct-layout-1_y.c: New file. * gcc.dg/compat/struct-layout-1_test.h: New file. From-SVN: r85098
2004-07-23print-rtl.c (print_rtx <case 'b'>): Don't attempt to print bitmap contents ↵Zack Weinberg3-17/+22
if GENERATOR_FILE is defined. * print-rtl.c (print_rtx <case 'b'>): Don't attempt to print bitmap contents if GENERATOR_FILE is defined. * Makefile.in (BUILD_RTL): Remove $(BUILD_PREFIX)bitmap.o. ($(BUILD_PREFIX_1)bitmap.o): Delete rule. From-SVN: r85095
2004-07-23c-decl.c (start_function): Form composite type of function types rather than ↵Joseph Myers4-1/+42
copying type from previous... * c-decl.c (start_function): Form composite type of function types rather than copying type from previous prototype declaration. testsuite: * gcc.dg/comp-return-1.c: New test From-SVN: r85093
2004-07-23altivec.h (vec_lvewx, [...]): Remove the const qualifier for the second ↵Janis Johnson2-9/+12
argument in the C++ functions. 2004-07-23 Janis Johnson <janis187@us.ibm.com> * config/rs6000/altivec.h (vec_lvewx, vec_lvehx, vec_lvwbx): Remove the const qualifier for the second argument in the C++ functions. From-SVN: r85092
2004-07-23altivec.h (vec_stvewx, [...]): Use specific pointer types.Janis Johnson2-17/+84
2004-07-23 Janis Johnson <janis187@us.ibm.com> * config/rs6000/altivec.h (vec_stvewx, vec_stvehx, vec_stvebx): Use specific pointer types. From-SVN: r85091
2004-07-23altivec.h (vec_vadduwm): (vec_vadduwm...Janis Johnson2-164/+663
2004-07-23 Janis Johnson <janis187@us.ibm.com> * config/rs6000/altivec.h (vec_vadduwm): (vec_vadduwm, vec_vadduhm, vec_vaddubm, vec_vsubuwm, vec_vsubuhm, vec_vsububm): Fix types used for vector bool and/or vector pixel, add C++ and C missing support. (vec_vaddsws, vec_vaddshs, vec_vaddsbs, vec_vmaxsw, vec_vmaxsh, vec_vmaxsb, vec_vmrghw, vec_vmrghh, vec_vmrghb, vec_vmrglw, vec_vmrglh, vec_vmrglb, vec_vminsw, vec_vminsh, vec_vminsb, vec_vpkuwum, vec_vpkuhum, vec_vspltw, vec_vsplth, vec_vspltb, vec_vsubsws, vec_vsubshs, vec_vsubsbs, vec_vupklsh, vec_vupkhsh, vec_vupklsb): Add missing C++ and C support for vector bool and/or vector pixel. (vec_vadduws, vec_vadduhs, vec_vaddubs, vec_vcmpeqfp, vec_vcmpequw, vec_vcmpequh, vec_vcmpequb, vec_vcmpgtfp, vec_vcmpgtsw, vec_vcmpgtuw, vec_vcmpgtsh, vec_vcmpgtuh, vec_vcmpgtsb, vec_vcmpgtub, vec_vmaxuw, vec_vmaxuh, vec_vmaxub, vec_vminuw, vec_vminuh, vec_vminub, vec_vsubuws, vec_vsubuhs, vec_vsububs, vec_vupkhpx, vec_vupklpx): Fix C++ and C types used for vector bool and/or vector pixel. (vec_st, vec_stl): Add C++ support for vector pixel. (vec_unpackh, vec_unpackl, vec_any_ge): Fix C++ support for vector bool. (vec_all_ne): Add C++ support for vector pixel. From-SVN: r85090
2004-07-23altivec.h (vec_vcmpgtsh): Fix C++ function name.Janis Johnson2-28/+30
2004-07-23 Janis Johnson <janis187@us.ibm.com> * config/rs6000/altivec.h (vec_vcmpgtsh): Fix C++ function name. (vec_vmulesb): Add missing C++ function. (vec_perm): Fix type of third argument in C++ function. (vec_vsum4shs): Fix C++ function name. (vec_any_ge): Remove C++ functions for unsupported arg combinations. (vec_vcmpgtsw, vec_vcmpgtuw, vec_minsb, vec_vmsummbm): Fix the argument passed to the error handler in C macro. (vec_nmsub): Remove extra parens around argument names in C macro. (vec_packpx): Add missing parens in C macro. From-SVN: r85089
2004-07-238-02a.c: Fix typo.Janis Johnson2-1/+3
2004-07-23 Janis Johnson <janis187@us.ibm.com> * gcc.dg/vmx/8-02a.c: Fix typo. From-SVN: r85088
2004-07-23varargs-4.c: Remove a Darwin-specific check.Janis Johnson3-8/+37
2004-07-23 Janis Johnson <janis187@us.ibm.com> * gcc.dg/vmx/varargs-4.c: Remove a Darwin-specific check. * gcc.dg/darwin-abi-3.c: New test. From-SVN: r85087
2004-07-23debug-1.c: Use int, not long, in union with vector.Janis Johnson3-4/+7
2004-07-23 Janis Johnson <janis187@us.ibm.com> * gcc.dg/vmx/debug-1.c: Use int, not long, in union with vector. * gcc.dg/vmx/varargs-1.c: Use int, not long, in union with vector. From-SVN: r85086
2004-07-23ops.c: Remove checks using pointers to long.Janis Johnson4-62/+120
2004-07-23 Janis Johnson <janis187@us.ibm.com> * gcc.dg/vmx/ops.c: Remove checks using pointers to long. * gcc.dg/vmx/ops-long-1.c: New test. * gcc.dg/vmx/ops-long-2.c: New test. From-SVN: r85085
2004-07-23machmode.def: Remove vector modes.Paolo Bonzini8-34/+59
2004-07-22 Paolo Bonzini <bonzini@gnu.org> * machmode.def: Remove vector modes. * config/alpha/alpha-modes.def: Add supported vector modes. * config/arm/arm-modes.def: Likewise. * config/frv/frv-modes.def: Likewise. * config/i386/i386-modes.def: Likewise. * config/rs6000/rs6000-modes.def: Likewise. * config/sh/sh-modes.def: Likewise. From-SVN: r85076
2004-07-23cp: * search.c (lookup_conversion_operator): Avoid two loops.Nathan Sidwell7-83/+434
(add_conversions): Remove. (check_hidden_convs, split_conversions, lookup_conversions_r): New. (lookup_conversions): Use lookup_conversions_r. testsuite: * g++.dg/lookup/conv-[1234].C: New. From-SVN: r85075
2004-07-23intl.c (gcc_init_libintl): Use PACKAGE for the text domain.Matthias Klose5-2/+19
2004-07-23 Matthias Klose <doko@debian.org> intl.c (gcc_init_libintl): Use PACKAGE for the text domain. configure.ac: Add AC_DEFINE_UNQUOTED for PACKAGE. config.h: Regenerate. configure: Likewise. From-SVN: r85072
2004-07-23dwarf2out.c (output_call_frame_info): Set SYMBOL_FLAG_LOCAL on generated ↵Mark Mitchell8-541/+379
SYMBOL_REFs for labels. * dwarf2out.c (output_call_frame_info): Set SYMBOL_FLAG_LOCAL on generated SYMBOL_REFs for labels. * config/darwin-protos.h (machopic_validate_stub_or_non_lazy_ptr): Change prototype. (machopic_stub_name): Remove. (machopic_indirection_name): New function. (machopic_mcount_stub_name): Likewise. (machopic_classify_name): Remove. (machopic_function_base_sym): New function. (machpoic_classify_symbol): Likewise. (machopic_classify_ident): Remove. (machopic_define_ident): Likewise. (machopic_define_name): Likewise. (machopic_name_defined_p): Likewise. (machopic_ident_defined_p): Likewise. (darwin_strip_name_encoding): Likewise. (machopic_define_symbol): New function. * config/darwin.c (hashtab.h): Include. (machopic_defined_list): Remove. (machopic_classify_ident): Likewise. (machopic_classify_name): Likewise. (machopic_ident_defined_p): Likewise. (machopic_define_ident): Likewise. (machopic_define_name): Likewise. (machopic_symbol_defined_p): New function. (machopic_classify_symbol): Likewise. (machopic_data_defined_p): Use machopic_classify_symbol. (machopic_define_symbol): New function. (machopic_function_base_sym): New function. (machopic_non_lazy_pointers): Remove. (machopic_non_lazy_ptr_name): Likewise. (machopic_stubs): Likewise. (machopic_stub_name): Likewise. (NON_LAZY_POINTER_SUFFIX): New macro. (STUB_SUFFIX): Likewise. (machopic_indirection): New structure. (machopic_indirections): New variable. (machopic_indirection_hash): New function. (machopic_indirection_eq): Likewise. (machopic_indirection_name): Likewise. (machopic_mcount_stub_name): New function. (machopic_validate_stub_or_non_lazy_pointer): Reimplement to use hash table. (machopic_indirect_data_reference): Rework to use new functions. (machopic_indirect_call_target): Likewise. (machopic_legitimize_pic_address): Likewise. (machopic_output_indirection): New function. (machopic_finish): Use it. (machopic_operand_p): Rework to use new functions. (darwin_encode_seciton_info): Use SYMBOL_REF_FLAGS. (darwin_strip_name_encoding): Remove. (update_non_lazy_ptrs): Remove. (update_stubs): Likewise. (darwin_non_lazy_pcrel): Use new functions. * config/darwin.h (ASM_DECLARE_OBJECT_NAME): Likewise. (ASM_OUTPUT_LABELREF): Likewise. (ASM_OUTPUT_ALIGNED_DECL_LOCAL): Likewise. (MACHO_SYMBOL_FLAG_VARIABLE): New macro. (MACHO_SYMBOL_FLAG_DEFINED): Likewise. (TARGET_STRIP_NAME_ENCODING): Do not use darwin_strip_name_encoding. (GEN_LAZY_PTR_NAME_FOR_SYMBOL): Do not use darwin_strip_name_encoding. * config/i386/darwin.h (FUNCTION_PROFILER): Use machopic_mcount_stub_name. * config/i386/i386.c (x86_output_mi_thunk): Use machopic_indirection_name, not machopic_stub_name. * config/rs6000/rs6000.c (rs6000_legitimize_reload_address): Use machopic_function_base_sym. (print_operand): Use machopic_classify_symbol. (rs6000_emit_prologue): Use machopic_function_base_sym. (output_profile_hook): Do not use machopic_stub_name. (macho_branch_isalnds): Do not use darwin_strip_name_encoding. From-SVN: r85071
2004-07-23Daily bump.GCC Administrator1-1/+1
From-SVN: r85067
2004-07-22* g++.dg/parse/attr2.C: Simplify.Mark Mitchell2-4/+5
From-SVN: r85060
2004-07-22re PR c/7284 (incorrectly simplifies leftshift followed by signed power-of-2 ↵Joseph Myers4-1/+40
division) PR c/7284 * fold-const.c (extract_muldiv_1): Do not treat signed left shift as multiplication. testsuite: * gcc.c-torture/execute/pr7284-1.c: New test. From-SVN: r85059
2004-07-22implement-c.texi: New file.Joseph Myers5-401/+413
* doc/implement-c.texi: New file. * doc/extend.texi (C Implementation): Move to there. * doc/gcc.texi: Include implement-c.texi. * Makefile.in (TEXI_GCC_FILES): Add implement-c.texi. From-SVN: r85058
2004-07-22integrate.c (copy_decl_for_inlining): Remove invisible reference handling.Jason Merrill3-41/+11
* integrate.c (copy_decl_for_inlining): Remove invisible reference handling. * tree-inline.c (setup_one_parameter): Likewise. From-SVN: r85057
2004-07-22fix typo.Brian Booth1-1/+0
From-SVN: r85056
2004-07-22tree-ssa-ccp.c (latticevalue): Add UNKNOWN_VAL.Brian Booth4-41/+244
* tree-ssa-ccp.c (latticevalue): Add UNKNOWN_VAL. (substitute_and_fold): Propigate into VUSE operands when possible. (visit_phi_node): Handle UNKNOWN_VAL latticevalue. (cp_lattice_meet): Handle merging of latticevalues when UNKNOWN_VAL is present. (visit_stmt): Visit assignments with V_MUST_DEFs. (visit_assignment): Gather ccp information for V_MUST_DEF operands. (ccp_fold): Deal with RHS' that are constant and virtual. (evaluate_stmt): Handle UNKNOWN_VAL likely values. (dump_lattice_value): Dump UNKNOWN_VAL latticevalues. (initialize): Mark statements with V_MUST_DEFs as VARYING only if the V_MUST_DEF operand is VARYING. Fix comment and include VOPS when computing immediate uses. (set_lattice_value): Disallow a UNKNOWN_VAL->UNDEFINED state transition. (replace_vuse_in): New function. (likely_value): Add check of vuse operands. (get_default_value): Set the default value of virtually defined variables to UKNOWN_VAL instead of VARYING. testsuite: * gcc.dg/tree-ssa/20040721-1.c: New test. From-SVN: r85055
2004-07-22* expr.c (emit_push_insn): Don't use set_mem_attributes.Richard Henderson2-19/+18
From-SVN: r85054