aboutsummaryrefslogtreecommitdiff
path: root/gcc
AgeCommit message (Collapse)AuthorFilesLines
2002-02-23cppinit.c (output_deps): Correct test for stdout output.Neil Booth2-7/+12
* cppinit.c (output_deps): Correct test for stdout output. (init_dependency_output): Cure warning. From-SVN: r49993
2002-02-23expr.c (store_expr): When converting expression to promoted equivalent type...Richard Kenner1-0/+11
* expr.c (store_expr): When converting expression to promoted equivalent type, allow using SUBREG_REG of TARGET as the target of the expansion of EXP. * loop.c (basic_induction_var, case SUBREG): Always look inside. * config/alpha/alpha.c (rtx_equiv_function_matters): Delete decl. (alpha_emit_set_const): Handle SImode when can't make new pseudos. (alpha_emit_set_const_1, alpha_sa_mask): Use no_new_pseudos. * config/alpha/alpha.md (addsi3, subsi3): Don't use if optimizing. From-SVN: r49992
2002-02-23contribute.texi, [...]: Remove trailing whitespace.Joseph Myers10-53/+59
* doc/contribute.texi, doc/extend.texi, doc/install.texi, doc/invoke.texi, doc/md.texi, doc/passes.texi, doc/rtl.texi, doc/standards.texi, doc/tm.texi: Remove trailing whitespace. From-SVN: r49991
2002-02-23re PR rtl-optimization/5747 (ss20020218 fails to build binutils-2.11.93.0.2 ↵Jakub Jelinek4-1/+63
on sparc-suse-linux - ICE in loop.c) PR optimization/5747 * loop.c (scan_loop): Update reg info if move_movables created new pseudos. * gcc.dg/20020222-1.c: New test. From-SVN: r49989
2002-02-23Daily bump.GCC Administrator2-2/+2
From-SVN: r49987
2002-02-23* gcc.c (init_gcc_spec): Revert last change.David Edelsohn2-1/+5
From-SVN: r49986
2002-02-22- Add missing mask_operand patch.Alan Modra2-0/+6
From-SVN: r49984
2002-02-22[multiple changes]David Edelsohn3-19/+35
2002-02-23 David Edelsohn <edelsohn@gnu.org> * config/rs6000/rs6000.md (load_toc_aix_{si,di}): Use gpc_reg_operand constraint. 2002-02-23 Alan Modra <amodra@bigpond.net.au> * config/rs6000/rs6000.c (num_insns_constant): Fix formatting. Simplify comparison of `low'. (add_operand): Fix formatting. (non_add_cint_operand): Use CONST_OK_FOR_LETTER_P. (rs6000_stack_info): Remove redundant test setting push_p. (output_toc): Fix formatting. * config/rs6000/rs6000.md (boolsi3, boolcsi3 splitters): Use cc_reg_not_cr0_operand constraint. (booldi3, boolcdi3 splitters): Same. From-SVN: r49983
2002-02-23altivec.h: Add extra level of parentheses on casts.Aldy Hernandez2-397/+401
2002-02-23 Aldy Hernandez <aldyh@redhat.com> * altivec.h: Add extra level of parentheses on casts. From-SVN: r49982
2002-02-23re PR java/2369 (--main should check the following symbol)Tom Tromey2-0/+51
Fix for PR java/2369: * jvspec.c (verify_class_name): New function. (lang_specific_driver): Call it. (JAVA_START_CHAR_P): New macro. (JAVA_PART_CHAR_P): Likewise. From-SVN: r49981
2002-02-22gcc.c (init_gcc_spec): Do not link with static libgcc.a if gcc invoked with ↵David Edelsohn2-1/+6
-shared-libgcc. * gcc.c (init_gcc_spec): Do not link with static libgcc.a if gcc invoked with -shared-libgcc. From-SVN: r49979
2002-02-22class.c: Change vtable to be more compatible with g++ v3 abi.Per Bothner2-4/+30
* class.c: Change vtable to be more compatible with g++ v3 abi. (get_dispatch_table): Prepend offset-to-top (always 0) and type_info pointer (currently unimplemented hence NULL) to vtable. Specifically, prepend offset-to-top and typeinfo ptr (currently null). (make_class_data): Variable dtable_start_offset is sizeof 2 pointers. Adjust vtable pointers by dtable_start_offse - i.e. skip new words. (build_dtable_decl): Add declarations for new fields. From-SVN: r49978
2002-02-22expr.c (store_expr): When converting expression to promoted equivalent type...Richard Kenner4-60/+40
* expr.c (store_expr): When converting expression to promoted equivalent type, allow using SUBREG_REG of TARGET as the target of the expansion of EXP. * loop.c (basic_induction_var, case SUBREG): Always look inside. * config/alpha/alpha.c (rtx_equiv_function_matters): Delete decl. (alpha_emit_set_const): Handle SImode when can't make new pseudos. (alpha_emit_set_const_1, alpha_sa_mask): Use no_new_pseudos. * config/alpha/alpha.md (addsi3, subsi3): Don't use if optimizing. From-SVN: r49972
2002-02-22re PR c++/5748 (g++ dies with optimization)Jakub Jelinek4-0/+40
PR c++/5748 * stmt.c (expand_anon_union_decl): Set TREE_USED on the anon union decl if any of elements was TREE_USED. * g++.dg/opt/anonunion1.C: New test. From-SVN: r49971
2002-02-22sol2.h: Don't include sys/mman.h.Alexandre Oliva5-33/+48
* config/sparc/sol2.h: Don't include sys/mman.h. * config/sparc/sparc.c (arith_operand): Use SMALL_INT32. (arith_4096_operand): Don't throw high bits away. (const64_operand): Take sign extension of CONST_INTs into account. (const64_high_operand, sparc_emit_set_const32): Likewise. (GEN_HIGHINT64): Likewise. (sparc_emit_set_const64_quick1): Likewise. (const64_is_2insns): Likewise. (print_operand): Use trunc_int_for_mode for sign extension. * config/sparc/sparc.h (SMALL_INT32): Likewise. * config/sparc/sparc.md (movqi): Sign-extend CONST_DOUBLE chars. Assume CONST_INT is already properly sign-extended. (movdi split): Sign-extend each SImode part. (andsi3 split): Don't mask high bits off, so that result remains properly sign-extend. (iorsi3 split): Likewise. (xorsi3 split): Likewise. From-SVN: r49970
2002-02-22re PR other/5746 (0220 cvs crashes using undeclared type)Jakub Jelinek2-10/+17
PR other/5746 * semantics.c (finish_switch_cond): Don't call get_unwidened if error_mark_node. From-SVN: r49969
2002-02-22parse.y (patch_method_invocation): Set CAN_COMPLETE_NORMALLY on call to ↵Per Bothner2-1/+7
finit$ (otherwise generate_bytecode_insns... * parse.y (patch_method_invocation): Set CAN_COMPLETE_NORMALLY on call to finit$ (otherwise generate_bytecode_insns drops it). However, we don't need to set it on the COMPOUND_EXPR - the caller does that. From-SVN: r49966
2002-02-22PR c++/2645, DR 295Nathan Sidwell12-95/+287
cp: PR c++/2645, DR 295 * cp-tree.h (tsubst_flags_t): Add tf_ignore_bad_quals, tf_keep_type_decl. (make_typename_type): Use tsubst_flags_t. * decl.c (make_typename_type): Adjust. Return non-artificial TYPE_DECLs, if required. (grokdeclarator): Simplify CVR qualification handling. Allow bad qualifiers on typedef types. * decl2.c (handle_class_head): Adjust make_typename_type call. * parse.y (nested_name_specifier): Likewise. (typename_sub0): Likewise. (typename_sub1): Likewise. * pt.c (convert_template_argument): Adjust make_typename_type return value. (tsubst): Adjust cp_build_qualified_type_real calls. (check_cv_quals_for_unify): Cope with alowing bad qualifications on template type parms. (instantiate_decl): Recheck substitutions to give warnings on bad qualifications. * tree.c (cp_build_qualified_type_real): Use tf_allow_bad_quals. testsuite: * g++.dg/template/qualttp19.C: New test. * g++.dg/template/qualttp20.C: New test. * g++.old-deja/g++.jason/report.C: Adjust expected errors * g++.old-deja/g++.other/qual1.C: Likewise. From-SVN: r49961
2002-02-22* fold-const.c (fold): Fix typo in comments.Richard Sandiford2-1/+5
From-SVN: r49960
2002-02-22Daily bump.GCC Administrator2-2/+2
From-SVN: r49957
2002-02-21* Makefile.in (langhooks.o): Update dependencies.Diego Novillo2-1/+6
From-SVN: r49956
2002-02-21* langhooks.c: Include flags.h.Diego Novillo2-0/+5
From-SVN: r49955
2002-02-22clAldy Hernandez1-0/+4
From-SVN: r49949
2002-02-22forgot clAldy Hernandez1-0/+7
From-SVN: r49948
2002-02-22attr-alwaysinline.c: New.Aldy Hernandez10-11/+151
2002-02-21 Aldy Hernandez <aldyh@redhat.com> * gcc.dg/attr-alwaysinline.c: New. * c-common.c (c_common_post_options): Set inline trees by default. * doc/extend.texi (Function Attributes): Document always_inline attribute. Update documentation about inlining when not optimizing. * cp/decl.c (duplicate_decls): Merge always_inline attribute. * cp/tree.c (cp_cannot_inline_tree_fn): Do not inline at -O0 unless DECL_ALWAYS_INLINE. * c-objc-common.c (c_cannot_inline_tree_fn): Do not inline at -O0 unless DECL_ALWAYS_INLINE. (c_disregard_inline_limits): Disregard if always_inline set. * langhooks.c (lhd_tree_inlining_disregard_inline_limits): Disregard if always_inline set. (lhd_tree_inlining_cannot_inline_tree_fn): Do not inline at -O0 unless DECL_ALWAYS_INLINE. * attribs.c (handle_always_inline_attribute): New. (c_common_attribute_table): Add always_inline. * config/rs6000/altivec.h: Add prototypes for builtins requiring the always_inline attribute. From-SVN: r49947
2002-02-22expmed.c (store_bit_field): Try to simplify the subreg before generating a ↵Eric Christopher2-52/+67
new one when... 2002-02-21 Eric Christopher <echristo@redhat.com> * expmed.c (store_bit_field): Try to simplify the subreg before generating a new one when when the mode size of value is less than maxmode. From-SVN: r49946
2002-02-21emit-rtl.c (offset_address): Use simplify_gen_binary rather than ↵Richard Henderson6-57/+109
gen_rtx_PLUS to form the sum. * emit-rtl.c (offset_address): Use simplify_gen_binary rather than gen_rtx_PLUS to form the sum. * explow.c (force_reg): Rearrange to not allocate new pseudo when force_operand returns a register. * expr.c (expand_assignment): Allow offset_rtx expansion to return a sum. Do not force addresses into registers. (expand_expr): Likewise. * simplify-rtx.c (simplify_gen_binary): Use simplify_plus_minus to canonicalize arithmetic that didn't simpify. (simplify_plus_minus): New argument force; update all callers. Don't split CONST unless we can do something with it, and wouldn't lose the constness of the operands. * config/i386/i386.c (legitimize_pic_address): Recognize UNSPECs that we generated earlier. From-SVN: r49945
2002-02-21dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed.Tom Tromey3-12/+18
* dwarf2out.c (DWARF_LINE_MIN_INSTR_LENGTH): Removed. (output_line_info): Use constant `1', with a long explanatory comment. * system.h (DWARF_LINE_MIN_INSTR_LENGTH): Poison. From-SVN: r49944
2002-02-21jump.c (redirect_jump): If old label has no UID, don't try to delete it.J"orn Rennecke2-1/+8
* jump.c (redirect_jump): If old label has no UID, don't try to delete it. From-SVN: r49943
2002-02-21sh.md (insv): Provide byte offsets for gen_rtx_SUBREG.J"orn Rennecke2-11/+32
* sh.md (insv): Provide byte offsets for gen_rtx_SUBREG. If input is constant, do shifts at compile time. From-SVN: r49942
2002-02-21* doc/extend.texi: Fix some more overfull hboxes.Joseph Myers2-147/+298
From-SVN: r49941
2002-02-21re PR rtl-optimization/4994 (ICE with "-fno-exceptions -O2 -mmmx -march=athlon")Jakub Jelinek4-11/+89
PR optimization/4994 * config/i386/i386.md (movsi_1, movsf_1): Support MMX -> MMX register moves. * g++.dg/opt/mmx1.C: New test. From-SVN: r49939
2002-02-21re PR c++/4574 (Internal compiler error in `expand_and', at expmed.c:4055)Jakub Jelinek11-62/+84
PR c++/4574 * expr.h (expand_and): Add mode argument. * expmed.c (expand_and): Add mode argument. (expand_mult_highpart_adjust, emit_store_flag): Adjust callers. * expr.c (store_field, expand_expr, do_store_flag): Likewise. * except.c (expand_builtin_extract_return_addr): Likewise. * config/alpha/alpha.c (alpha_initialize_trampoline): Likewise. * config/sparc/sparc.c (sparc_initialize_trampoline): Likewise. * config/c4x/c4x.h (INITIALIZE_TRAMPOLINE): Likewise. Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x). * config/c4x/c4x.md: Use GEN_INT (x) instead of gen_rtx (CONST_INT, VOIDmode, x). * gcc.dg/20020220-1.c: New test. From-SVN: r49938
2002-02-21re PR c/4697 (Warning 'value computed is not used' missing)Jakub Jelinek4-6/+27
PR c/4697: * stmt.c (warn_if_unused_value): Move side effects test once more. * gcc.dg/20020220-2.c: New test. From-SVN: r49937
2002-02-21avr.md: Add more patterns for mized-mode add and subtract (addsi3_zero_extend...Torbjorn Granlund2-0/+42
* config/avr/avr.md: Add more patterns for mized-mode add and subtract (addsi3_zero_extend, subhi3_zero_extend1, subsi3_zero_extend). From-SVN: r49936
2002-02-21rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of SUBREG or ↵Alexandre Oliva2-0/+39
ZERO_EXTEND. * rtlanal.c (replace_rtx): Don't make a CONST_INT the operand of SUBREG or ZERO_EXTEND. From-SVN: r49935
2002-02-21sh.h (current_function_anonymous_args): Remove.J"orn Rennecke8-17/+34
* sh.h (current_function_anonymous_args): Remove. (SETUP_INCOMING_VARARGS): Don't set it - just check that one of current_function_varargs and current_function_stdarg is set. * sh.c (sh_expand_prologue): Check current_function_varargs / current_function_stdarg / TARGET_SH5 instead of current_function_anonymous_args. * sh64.h (TARGET_VERSION): Define. Fix comments that to refer to SH architecture - the architecture is no longer exclusive to Hitachi. From-SVN: r49931
2002-02-21Daily bump.GCC Administrator2-2/+2
From-SVN: r49925
2002-02-20- remove mistaken ChangeLog item.David Edelsohn1-1/+0
From-SVN: r49924
2002-02-20[multiple changes]David Edelsohn3-12/+33
2002-02-20 David Edelsohn <edelsohn@gnu.org> * config/rs6000/rs6000.h (EPILOGUE_USES): Conditionalize VRSAVE_REGNO on TARGET_ALTIVEC. 2002-02-20 Alan Modra <amodra@bigpond.net.au> * config/rs6000/rs6000.c (includes_lshift_p): Mask irrelevant bits of SImode const_int. (includes_rshift_p): Likewise. (print_operand): Call mask_operand and mask64_operand with correct mode. (rs6000_output_function_epilogue): Pad traceback table to word. * config/rs6000/rs6000.h (MASK_64BIT): Correct comment. (EXTRA_CONSTRAINT, 'S' and 'T'): Call mask_operand and mask64_operand with correct mode. (RETURN_IN_MEMORY): Use HOST_WIDE_INT, not HOST_WIDEST_INT. (FUNCTION_ARG_REGNO_P): Correct parentheses. From-SVN: r49923
2002-02-20gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option `--CLASSPATH' ↵Nic Ferrier1-0/+15
becomes... * gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option `--CLASSPATH' becomes `--classpath.' * gjavah.c: Likewise. * jcf-dump.c: Likewise. * lang-options.h: Likewise. * lang.c: Likewise. * jcf-path.c: Updated comment. (jcf_path_classpath_arg): Renamed `jcf_path_CLASSPATH_arg.' (jcf_path_CLASSPATH_arg): Renamed `jcf_path_classpath_arg.' * jcf.h (jcf_path_CLASSPATH_arg): Ditto. (jcf_path_CLASSPATH_arg): Ditto. (classpath_u): Updated leading comment. From-SVN: r49922
2002-02-21re PR debug/4461 (Invalid dawrf2 debug code)Jakub Jelinek6-2/+71
PR debug/4461 * varasm.c (get_pool_constant_mark): New. * rtl.h (get_pool_constant_mark): Add prototype. * dwarf2out.c (mem_loc_descriptor): A pool constant cannot be represented if it has not been output. * gcc.dg/debug/20020220-1.c: New test. From-SVN: r49921
2002-02-20combine.c (do_SUBST): Sanity check substitutions of CONST_INTs...Alexandre Oliva3-5/+90
* combine.c (do_SUBST): Sanity check substitutions of CONST_INTs, and reject them in SUBREGs and ZERO_EXTENDs. (subst): Simplify SUBREG or ZERO_EXTEND instead of SUBSTing a CONST_INT into its operand. (known_cond): Likewise, for ZERO_EXTEND. * simplify-rtx.c (simplify_unary_operation): Fix condition to allow for simplification of wide modes. Reject CONST_INTs in ZERO_EXTEND when their actual mode is not given. From-SVN: r49920
2002-02-20* gcc.c-torture/compile/20020110.c: New test.Alexandre Oliva2-0/+16
From-SVN: r49919
2002-02-20gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option `--CLASSPATH' ↵Nic Ferrier7-70/+79
becomes... * gcj.texi: Option `--classpath' becomes `--CLASSPATH.'Option `--CLASSPATH' becomes `--classpath.' * gjavah.c: Likewise. * jcf-dump.c: Likewise. * lang-options.h: Likewise. * lang.c: Likewise. * jcf-path.c: Updated comment. (jcf_path_classpath_arg): Renamed `jcf_path_CLASSPATH_arg.' (jcf_path_CLASSPATH_arg): Renamed `jcf_path_classpath_arg.' * jcf.h (jcf_path_CLASSPATH_arg): Ditto. (jcf_path_CLASSPATH_arg): Ditto. (classpath_u): Updated leading comment. From-SVN: r49918
2002-02-20c-decl.c (pushdecl): If no global declaration is found for an extern ↵Alexandre Oliva2-3/+10
declaration in block scope... * c-decl.c (pushdecl): If no global declaration is found for an extern declaration in block scope, try a limbo one. From-SVN: r49917
2002-02-21re PR c++/4401 (Array subscript evaluation sometimes wrong for 64-bit ↵Jakub Jelinek8-177/+152
architectures) PR c++/4401 * c-common.c (pointer_int_sum): Moved from... * c-typeck.c (pointer_int_sum): ...here. * c-common.h (pointer_int_sum): Add prototype. * typeck.c (cp_pointer_int_sum): Renamed from pointer_int_sum, call pointer_int_sum. * g++.dg/opt/ptrintsum1.C: New test. From-SVN: r49916
2002-02-20re PR c++/5713 (Redeclaration causes ice in in make_decl_rtl, at varasm.c:835)Jakub Jelinek6-0/+27
PR c++/5713 * c-decl.c (duplicate_decls): Return 0 if issued error about redeclaration. * decl.c (duplicate_decls): Return 0 if issued error about redeclaration. * gcc.dg/noncompile/20020220-1.c: New test. From-SVN: r49915
2002-02-20re PR c/4389 (Improper constant folding)Jakub Jelinek5-10/+52
PR c/4389 * tree.c (host_integerp): Ensure that the constant integer is representable in a HOST_WIDE_INT or an unsigned HOST_WIDE_INT when pos is zero or non-zero respectively. Clarify comment. * c-format.c (check_format_info_recurse): Fix host_integerp usage; the pos argument should be zero when assigning to a signed HOST_WIDE_INT. * gcc.dg/20020219-1.c: New test. From-SVN: r49914
2002-02-20i386.c (ix86_expand_vector_move): Use the mode of the operand, rather than ↵Richard Henderson2-4/+34
assuming TImode. * config/i386/i386.c (ix86_expand_vector_move): Use the mode of the operand, rather than assuming TImode. (ix86_expand_binop_builtin): Cope with commutative patterns using nonimmediate_operand for both operands. (ix86_expand_timode_binop_builtin): Likewise. (ix86_expand_store_builtin): Validate operand 1. (ix86_expand_unop1_builtin): Likewise. From-SVN: r49912