aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2004-12-18re PR rtl-optimization/16968 (loop optimizer miscompilation)Eric Botcazou4-0/+130
PR rtl-optimization/16968 * loop.c (scan_loop): Stop scanning the loop for movable insns as soon as an optimization barrier is encountered. From-SVN: r92348
2004-12-18re PR middle-end/18897 (/usr/ccs/bin/ld: Unsatisfied symbols: putchar (first ↵Zack Weinberg2-6/+17
referenced in build/gengenrtl.o) (data)) PR 18897 * toplev.c (compile_file): Call process_pending_assemble_externals just before targetm.asm_out.file_end. From-SVN: r92347
2004-12-18Daily bump.GCC Administrator2-2/+2
From-SVN: r92343
2004-12-17MAINTAINERS: Move myself to OS Port Maintainers for windows, cygwin, mingw.Danny Smith2-1/+6
* MAINTAINERS: Move myself to OS Port Maintainers for windows, cygwin, mingw. From-SVN: r92340
2004-12-17tree-optimize.c (init_tree_optimization_passes): Run ↵Diego Novillo6-4/+45
pass_late_warn_uninitialized before the last DCE run. tree-optimization/18501 * tree-optimize.c (init_tree_optimization_passes): Run pass_late_warn_uninitialized before the last DCE run. testsuite/ChangeLog: * gcc.dg/pr18501.c: New test. * gcc.dg/uninit-5.c: XFAIL. * gcc.dg/uninit-9.c: XFAIL. From-SVN: r92337
2004-12-17i386.c (x86_64_reg_class_name): Re-indent.Richard Henderson4-183/+287
* config/i386/i386.c (x86_64_reg_class_name): Re-indent. (classify_argument, examine_argument, construct_container, merge_classes): Remove prototypes. (type_natural_mode): Split out from ... (function_arg): ... here. (gen_reg_or_parallel): Remove alt_mode argument. Update callers. Use orig_mode unless it's BLKmode. (construct_container): Add orig_mode argument. Update callers. Use gen_reg_or_parallel for SSE registers. (ix86_function_value): Use type_natural_mode. (ix86_gimplify_va_arg): Likewise. (ix86_hard_regno_mode_ok): Always accept all SSE, MMX, 3DNOW modes in SSE registers; always accept all MMX, 3DNOW modes in MMX registers. * config/i386/i386.h (VALID_SSE2_REG_MODE): Don't include VALID_MMX_REG_MODE. * config/i386/i386.md (attribute mode): Add V1DF. (movsi_1): Use 'x' instead of 'Y' constraints. (movsi_1_nointernunit, movdi_2, movdi_1_rex64): Likewise. (movdi_1_rex64_nointerunit): Likewise. (movdf_nointeger, movdf_integer): Likewise. Handle SSE1. (movsf_1, movsf_1_nointerunit): Line up constraint alternatives. (swapsf): Use fp_register_operand, don't disable for TARGET_SSE. (swapdf): Likewise. (swapxf): Enable only for TARGET_80387. (movv2sf, movv2sf_internal, pushv2sf): Enable for MMX. (movtf): Remove double-check for TARGET_64BIT. (movv2df_internal): Enable for SSE1. (movv8hi_internal, movv16qi_internal): Likewise. (movv2df, movv8hi, movv16qi): Likewise. (pushv2di, pushv8hi, pushv16qi, pushv4si): Likewise. (pushdi2_rex64, movv4sf_internal, movv4si_internal, movv2di_internal, movv8qi_internal, movv4hi_internal, movv2sf_internal, movv2df_internal, movv8hi_internal, movv16qi_internal, movti_internal): Add leading '*' to name. From-SVN: r92336
2004-12-17c-decl.c (diagnose_mismatched_decls): Accept mismatched function types: void ↵Dale Johannesen4-1/+54
with previous implicit int. 2004-12-17 Dale Johannesen <dalej@apple.com> * c-decl.c (diagnose_mismatched_decls): Accept mismatched function types: void with previous implicit int. From-SVN: r92329
2004-12-17stabs-1.m: Allow assembly label to begin with a dot ('.').Ziemowit Laski2-1/+6
[gcc/testsuite/ChangeLog] 2004-12-17 Ziemowit Laski <zlaski@apple.com> * objc.dg/stabs-1.m: Allow assembly label to begin with a dot ('.'). From-SVN: r92328
2004-12-17init.c (build_zero_init): max_index is the number of elements, minus 1.Steven Bosscher2-1/+10
* init.c (build_zero_init): max_index is the number of elements, minus 1. From-SVN: r92323
2004-12-1720041213-1.c: Move...Jakub Jelinek2-0/+5
* gcc.c-torture/execute/20041213-1.c: Move... * gcc.c-torture/execute/ieee/20041213-1.c: ...to here. From-SVN: r92318
2004-12-17fix typoed PR numberNathan Sidwell3-3/+3
From-SVN: r92317
2004-12-17re PR c++/17821 (Poor diagnostic for using . instead of ->)Nathan Sidwell6-22/+52
cp: PR c++/17821 * class.c (add_method): Do not push conversion operators into a binding level. * cp-tree.h (CLASSTYPE_PRIMARY_TEMPLATE_TYPE): Reformat. * error.c (dump_decl): <TYPE_DECL case> Remove extraneous braces. testsuite: PR c++/17821 * g++.dg/lookup/conv-5.C: New. From-SVN: r92316
2004-12-17re PR libgcj/15001 ([3.4 only] Using JNI with interpreter and interface ↵Andrew Haley2-1/+28
methods yields SIGSEGV) 2004-12-10 Andrew Haley <aph@redhat.com> PR java/15001 * java/lang/reflect/natMethod.cc (_Jv_CallAnyMethodA): Look up abstract methods by name. From-SVN: r92315
2004-12-17re PR java/18931 (Java bytecode ICE in except.c remove_unreachable_regions)Andrew Haley4-19/+16
2004-12-17 Andrew Haley <aph@redhat.com> PR java/18931 * typeck.c (convert): Use a CONVERT_EXPR when converting to BOOLEAN_TYPE or CHAR_TYPE. (convert_to_boolean, convert_to_char) : Remove. * convert.h (convert_to_boolean, convert_to_char) : Remove. * expr.c (expand_load_internal): Do type conversion if type is not as required. From-SVN: r92314
2004-12-17s390.c (s390_gimplify_va_arg): Set alias set to s390_sr_alias_set.Andreas Krebbel2-0/+6
2004-12-17 Andreas Krebbel <krebbel1@de.ibm.com> * config/s390/s390.c (s390_gimplify_va_arg): Set alias set to s390_sr_alias_set. From-SVN: r92313
2004-12-17re PR target/17603 (cpowf and cpowl give wrong results)Jan Beulich2-11/+32
2004-12-17 Jan Beulich <jbeulich@novell.com> PR target/17603 * config/i386/i386.c (enum x86_64_reg_class): Define X86_64_COMPLEX_X87_CLASS. (x86_64_reg_class_names): Add name for X86_64_COMPLEX_X87_CLASS. (merge_classes): Handle X86_64_COMPLEX_X87_CLASS. (classify_argument): XCmode is X86_64_COMPLEX_X87_CLASS. (examine_argument): X86_64_COMPLEX_X87_CLASS requires two registers when dealing with a return value. (construct_container): Handle X86_64_COMPLEX_X87_CLASS. Eliminate impossible case of two X87/X87UP pairs (this now is being expressed by a single COMPLEX_X87). (x86_libcall_value): XCmode gets returned in st0/st1. From-SVN: r92312
2004-12-17tree.c (type_contains_placeholder_1): Always return false for VECTOR_TYPE if ↵Steven Bosscher2-3/+9
its TREE_TYPE does not contain a placeholder. * tree.c (type_contains_placeholder_1): Always return false for VECTOR_TYPE if its TREE_TYPE does not contain a placeholder. From-SVN: r92310
2004-12-17* config/i386/i386.md (extendsfdf2, *extendsfdf2_1,Uros Bizjak2-11/+47
*extendsfdf2_1_sse_only): Unify enable constraint with respect to TARGET_SSE2, TARGET_80387, TARGET_SSE_MATH and TARGET_MIX_SSE_I387. (*extendsfdf2_i387): New insn pattern. (*extendsfdf2_1): Rename to *extendsfdf2_mixed. Fix register constraint for operand 0. (*extendsfdf2_1_sse_only): Rename to *extendsfdf2_sse. (*extend{s,d}fxf2_1): Rename to *extend{s,d}fxf2_i387. From-SVN: r92308
2004-12-17stabs-1.m: New test.Ziemowit Laski2-0/+22
[gcc/testsuite/ChangeLog] 2004-12-16 Ziemowit Laski <zlaski@apple.com> * objc.dg/stabs-1.m: New test. From-SVN: r92302
2004-12-16visibility-c.c: Change compile to assemble for the test.Andrew Pinski2-2/+6
2004-12-16 Andrew Pinski <pinskia@physics.uc.edu> * gcc.dg/visibility-c.c: Change compile to assemble for the test. From-SVN: r92293
2004-12-16re PR target/19041 (-fvisibility=hidden causes bad codegen for common symbols)Andrew Pinski4-7/+43
2004-12-16 Andrew Pinski <pinskia@physics.uc.edu> PR target/19041 * config/darwin.c (machopic_symbol_defined_p): Return false if the binds local and is a common symbol. 2004-12-16 Andrew Pinski <pinskia@physics.uc.edu> PR target/19041 * gcc.dg/visibility-c.c: New test. From-SVN: r92292
2004-12-17Daily bump.GCC Administrator2-2/+2
From-SVN: r92290
2004-12-16i386.md (extv, [...]): Revalidate the operand with ext_register_operand.Richard Henderson2-3/+8
* config/i386/i386.md (extv, extzv, insv): Revalidate the operand with ext_register_operand. From-SVN: r92287
2004-12-16* global.c: Fix a comment typo.Kazu Hirata2-1/+5
From-SVN: r92286
2004-12-16* de.po: Update.Joseph Myers2-631/+371
From-SVN: r92283
2004-12-16re PR tree-optimization/18707 (Performance regression at -O2 with gzip)Eric Botcazou2-7/+29
PR tree-optimization/18707 * cfgloopmanip.c (create_preheader): Move the preheader only if the latch was falling through to the header. Co-Authored-By: Roger Sayle <roger@eyesopen.com> From-SVN: r92282
2004-12-16re PR target/18997 (Segmentation Violation in pthread_getspecific)Danny Smith4-0/+19
gcc PR target/18997 * config/i386/cygwin.h (GTHREAD_USE_WEAK): Define to 0. libstdc++-v3 PR target/18997 * config/os/newlib/os_defines.h (_GLIBCXX_GTHREAD_USE_WEAK): Define to 0 for __CYGWIN__. From-SVN: r92281
2004-12-16configure.in (sh64-*-*): Reenable gprof.Andrew Stubbs3-77/+95
2004-12-16 Andrew Stubbs <andrew.stubbs@st.com> * configure.in (sh64-*-*): Reenable gprof. * configure: Regenerate. From-SVN: r92280
2004-12-16simplify-rtx.c (simplify_replace_rtx): Do not blindly replace hard registers.Richard Henderson2-1/+7
* simplify-rtx.c (simplify_replace_rtx): Do not blindly replace hard registers. [[Split portion of a mixed commit.]] Co-Authored-By: Aldy Hernandez <aldyh@redhat.com> From-SVN: r92278.2
2004-12-16re PR other/18508 ("basename: too few arguments" when building without ↵H.J. Lu11-15/+27
bootstrap) 2004-12-14 H.J. Lu <hongjiu.lu@intel.com> PR other/18508 * config/alpha/t-osf4 (SHLIB_LINK): Use `.backup' as the suffix to back up the existing shared library. * config/arm/t-netbsd (SHLIB_LINK): Likewise. * config/mips/t-slibgcc-irix (SHLIB_LINK): Likewise. * config/pa/t-hpux-shlib (SHLIB_LINK): Likewise. * config/sh/t-linux (SHLIB_LINK): Likewise. * config/t-libunwind-elf (SHLIBUNWIND_LINK): Likewise. * config/t-slibgcc-darwin (SHLIB_LINK): Likewise. * config/t-slibgcc-elf-ver (SHLIB_LINK): Likewise. * config/t-slibgcc-sld (SHLIB_LINK): Likewise. * config/i386/t-nwld (SHLIB_LINK): Don't use the temporary file. From-SVN: r92276
2004-12-16trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix comment typo.Tobias Schlüter2-3/+8
* trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix comment typo. From-SVN: r92274
2004-12-16re PR middle-end/18493 (gcc doesn't like switch blocks without case/default ↵Roger Sayle2-0/+15
labels) PR middle-end/18493 * gcc.dg/switch-8.c: New test case. From-SVN: r92271
2004-12-16Makefile.in (MD_DEPS, s-mddeps): New.Richard Henderson5-15/+131
* Makefile.in (MD_DEPS, s-mddeps): New. (s-config, s-conditions, s-flags, s-codes, s-constants, s-emit, s-recog, s-opinit, s-extract, s-peep, s-attr, s-attrtab, s-output, s-preds): Depend on MD_DEPS instead of md_file. (genobjnames): Add genmddeps.o (build/genmddeps, build/genmddeps.o): New. (mostlyclean): Remove mddeps.mk. * genmddeps.c: New file. * gensupport.c (include_callback): New. (process_include): Call it. * gensupport.h (include_callback): Declare. From-SVN: r92269
2004-12-16local-alloc.c (block_alloc): Replace IN_RANGE with simple comparison.Nathan Sidwell2-3/+5
* local-alloc.c (block_alloc): Replace IN_RANGE with simple comparison. From-SVN: r92268
2004-12-16type_traits: Implement add_const, add_volatile, and add_cv.Paolo Carlini5-3/+187
2004-12-16 Paolo Carlini <pcarlini@suse.de> * include/tr1/type_traits: Implement add_const, add_volatile, and add_cv. * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ add_const.cc: New. * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ add_cv.cc: Likewise. * testsuite/tr1/4_metaprogramming/const_volatile_modifications/ add_volatile.cc: Likewise. From-SVN: r92265
2004-12-16* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.Nathan Sidwell2-5/+14
From-SVN: r92263
2004-12-16s390.c (struct processor_costs): Two new fields: madbr, maebr.Mark Dettinger2-3/+19
2004-12-16 Mark Dettinger <dettinge@de.ibm.com> * config/s390/s390.c (struct processor_costs): Two new fields: madbr, maebr. (s390_rtx_costs): Added handling of multipy and add in SFmode. More precise values for cost of multiply and add. From-SVN: r92259
2004-12-16type_traits: Implement is_function.Paolo Carlini6-12/+226
2004-12-16 Paolo Carlini <pcarlini@suse.de> * include/tr1/type_traits: Implement is_function. (struct __sfinae_types, struct __is_function_helper): New. * testsuite/tr1/4_metaprogramming/composite_type_traits/ is_object/is_object.cc: New. * testsuite/tr1/4_metaprogramming/composite_type_traits/ is_object/typedefs.cc: Likewise. * testsuite/tr1/4_metaprogramming/primary_type_categories/ is_function/is_function.cc: Likewise. * testsuite/tr1/4_metaprogramming/primary_type_categories/ is_function/typedefs.cc: Likewise. From-SVN: r92258
2004-12-16re PR c++/18905 (Strange error: subscripted value is neither array nor pointer)Nathan Sidwell13-110/+112
cp: PR c++/18905 * cp-tree.h (integral_constant_value): Declare. * call.c (null_ptr_cst_p): Use integral_constant_value, not decl_constant_value. (convert_like_real): Likewise. * class.c (check_bitfield_decl): Likewise. * cvt.c (ocp_convert): Likewise. (convert): Remove unnecessary decl_constant_value call. * decl.c (compute_array_index_type): Use integral_constant_value, not decl_constant_value. (build_enumerator): Likewise. * decl2.c (grokfield): Likewise. * init.c (decl_constant_value): Simplify. (integral_constant_value): New. * pt.c (fold_decl_constant_value): Use integral_constant_value, remove subsequent check. (tsubst): Use integral_constant_value, not decl_constant_value. (tsubst_copy, unify): Likewise. * typeck.c (decay_conversion): Likewise. (build_compound_expr): Remove unnecessary decl_constant_value calls. (build_static_cast_1, build_reinterpret_cast_1): (convert_for_assignment): Remove comment about not calling decl_constant_value. testsuite: PR c++/18905 * g++.dg/template/init4.C: New. * g++.dg/opt/static3.C: Enable optimizer. From-SVN: r92257
2004-12-16* g++.dg/other/complex1.C: New test.Wolfgang Bangerth2-0/+32
From-SVN: r92254
2004-12-16re PR target/19028 (ICE in libjava)Richard Henderson2-1/+8
PR target/19028 * config/i386/i386.md (sse compare splitter): Test for SF and DFmode explicitly instead of using VALID_SSE_REG_MODE. From-SVN: r92251
2004-12-16re PR target/19005 (Error: bad register name `%sil')Richard Henderson2-21/+41
PR target/19005 * config/i386/i386.md (swaphi_1): Swap with swaphi_2, allow with optimize_size. (swapqi_1): Rename from swapqi. Enable only for no partial reg stall and optimize_size. (swapqi_2): New. (swaphi_1, swaphi_2, swapqi_1): Add athlon_decode. (swapsi, swaphi_1, swaphi_2, swapqi_1, swapdi): Remove modrm override. From-SVN: r92250
2004-12-16i386.md (*floathisf2_i387, [...]): Also enable for TARGET_MIX_SSE_I387.Uros Bizjak2-2/+7
* config/i386/i386.md (*floathisf2_i387, *floathidf2_i387): Also enable for TARGET_MIX_SSE_I387. From-SVN: r92249
2004-12-16i386.md (sqrt{s,d}f2_1, [...]): Unify enable constraint with respect to ↵Uros Bizjak2-25/+32
TARGET_SSE... * config/i386/i386.md (sqrt{s,d}f2_1, sqrt{s,d}f2_1_sse_only, sqrt{s,d}f2_i387): Unify enable constraint with respect to TARGET_SSE, TARGET_SSE2, TARGET_USE_FANCY_MATH_387, TARGET_SSE_MATH and TARGET_MIX_SSE_I387. (sqrt{s,d}f2_1): Rename to *sqrt{s,d}f2_mixed. (sqrt{s,d}f2_1_sse_only): Rename to *sqrt{s,d}f2_sse. (sqrt{s,d}f2_i387): Rename to *sqrt{s,d}f2_i387. (*sqrtextendsfdf2): Also enable for TARGET_MIX_SSE_I387. (*sqrtextend?f?f2): Rename to *sqrtextendsfdf2_i387. From-SVN: r92247
2004-12-16* config/i386/i386.md (*fop_?f_comm_{,sse,nosse},Uros Bizjak2-119/+131
*fop_?f_1_{,sse,nosse}, *fop_{d,x}f_{2,3,4,5,6}): Unify enable constraint with respect to TARGET_80387, TARGET_SSE, TARGET_SSE2, TARGET_SSE_MATH and TARGET_MIX_SSE_I387. (*fop_?f_{comm,1}): Rename to *fop_?f_{comm,1}_mixed. (*fop_?f_{comm,1}_nosse): Rename to *fop_?f_{comm,1}_i387. (*fop_{d,x}f_{2,3,4,5,6}): Rename to *fop_{d,x}f_{2,3,4,5,6}_i387. From-SVN: r92246
2004-12-16objc-act.c (build_private_template): Change to return 'void'...Ziemowit Laski3-88/+190
[gcc/objc/ChangeLog] 2004-12-15 Ziemowit Laski <zlaski@apple.com> * objc-act.c (build_private_template): Change to return 'void'; do not set ivar_context, uprivate_record or objc_instance_type. (objc_comptypes, gen_type_name_0): For types 'id' and 'Class', retrieve protocol list from the pointee rather than the pointer itself; check TYPE_HAS_OBJC_INFO(...) precondition before accessing TYPE_OBJC_PROTOCOL_LIST. (objc_get_protocol_qualified_type): For types 'id' and 'Class', construct a variant of the pointee as well as the pointer, and store protocol information in the former. When creating variants of RECORD_TYPEs, clone their TYPE_LANG_SPECIFIC fields and propagate TYPE_OBJC_INTERFACE information. (objc_declare_class): If a TYPE_DECL is looked up, retrieve the underlying RECORD_TYPE to check for presence of TYPE_OBJC_INTERFACE; for newly-created RECORD_TYPEs, create a tentative TYPE_OBJC_INTERFACE holding an IDENTIFIER_NODE. (objc_finish_message_expr): Check TYPE_HAS_OBJC_INFO(...) before accessing TYPE_OBJC_PROTOCOL_LIST; Use TYPE_OBJC_INTERFACE instead of calling lookup_interface(); allow for TYPE_OBJC_INTERFACE holding an IDENTIFIER_NODE (meaning a @class forward-declaration only). (objc_is_public): Check TYPE_OBJC_INTERFACE instead of calling lookup_interface(). (continue_class): For @implementations, set ivar_context, uprivate_record and objc_instance_type, for @interfaces, call build_private_template(). (encode_pointer): Check TYPE_HAS_OBJC_INFO(...) before accessing TYPE_OBJC_INTERFACE. (objc_types_are_equivalent): Check TYPE_HAS_OBJC_INFO(...) before accessing TYPE_OBJC_PROTOCOL_LIST. * objc-act.h (OBJC_INFO_SLOT_ELTS, TYPE_OBJC_INFO, INIT_TYPE_OBJC_INFO, DUP_TYPE_OBJC_INFO, ALLOC_OBJC_TYPE_LANG_SPECIFIC, SIZEOF_OBJC_TYPE_LANG_SPECIFIC): New macros. (TYPE_OBJC_INTERFACE): Replaces TREE_STATIC_INSTANCE and now points to an actual @interface; stored in TYPE_LANG_SPECIFIC(...). (TYPE_OBJC_PROTOCOL_LIST): Replaces TYPE_PROTOCOL_LIST; stored in TYPE_LANG_SPECIFIC(...). (TREE_STATIC_INSTANCE, TYPE_PROTOCOL_LIST): Delete. (IS_ID, IS_CLASS, IS_PROTOCOL_QUALIFIED_UNTYPED, IS_SUPER, TYPED_OBJECT): Check for POINTER_TYPE rather than POINTER_TYPE_P; adjust for use of TYPE_OBJC_INTERFACE and TYPE_OBJC_PROTOCOL_LIST instead of TREE_STATIC_INSTANCE and TYPE_PROTOCOL_LIST. From-SVN: r92239
2004-12-16Daily bump.GCC Administrator2-2/+2
From-SVN: r92237
2004-12-15re PR target/18153 (-static-libgcc links in libunwind.so.7)H.J. Lu5-0/+61
2004-12-15 H.J. Lu <hongjiu.lu@intel.com> PR target/18153 * configure.ac: Define HAVE_LD_STATIC_DYNAMIC if linker supports -Bstatic/-Bdynamic option. * config.in: Regenerated. * configure: Likewise. * gcc.c (init_spec): Pass -Bstatic/-Bdynamic to ld for static -lunwind if possible. From-SVN: r92229
2004-12-15be.po, [...]: Update.Joseph Myers12-107264/+134138
* be.po, ca.po, da.po, de.po, el.po, es.po, fr.po, ja.po, nl.po, sv.po, tr.po: Update. From-SVN: r92227
2004-12-15* fr.po: Update.Joseph Myers2-6/+9
From-SVN: r92224