gcc.git
19 years agoMakefile.in (top_builddir): Set to `.'.
H.J. Lu [Sat, 18 Dec 2004 16:43:38 +0000 (16:43 +0000)]
Makefile.in (top_builddir): Set to `.'.

2004-12-18  H.J. Lu  <hongjiu.lu@intel.com>

* Makefile.in (top_builddir): Set to `.'.
(OUTPUT_OPTION): Removed.
(LIBTOOL): New.
(LTLIBOBJS): New.
(EXTRA_LTOFILES): New.
(FLAGS_TO_PASS): Add EXTRA_LTOFILES.
(all): Remove stamp-picdir.
(LTCOMPILE): New.
(.c.lo): New rule.
(REQUIRED_LTOFILES): New.
(CONFIGURED_LTOFILES): New.
($(TARGETLIB)): Check .libs for PIC object files. Depend on
$(REQUIRED_LTOFILES) $(EXTRA_LTOFILES) $(LTLIBOBJS).
(stamp-picdir): Completely removed.
(maint-missing): Pass $(REQUIRED_LTOFILES)
$(CONFIGURED_LTOFILES) instead of (REQUIRED_OFILES)
$(CONFIGURED_OFILES)
(maint-buildall): Depend on $(REQUIRED_LTOFILES)
$(CONFIGURED_LTOFILES).
(mostlyclean): Also remove *.lo .libs.
Run "make maint-deps".

* aclocal.m4: Include ../libtool.m4.

* config.table: Don't check --enable-shared.

* configure.ac (AC_PROG_LIBTOOL): Add.
(AC_PROG_CC_C_O): Removed.
(OUTPUT_OPTION): Removed.
(NO_MINUS_C_MINUS_O): Removed.
(ltpexecute): New substitute.
(LIBOBJS): Cleanup.
* configure: Regenerated.

* maint-tool: Updated for .lo/libtool.

From-SVN: r92353

19 years agoifcvt.c (total_bb_rtx_cost): Rename function to cheap_bb_rtx_cost_p.
Roger Sayle [Sat, 18 Dec 2004 15:26:32 +0000 (15:26 +0000)]
ifcvt.c (total_bb_rtx_cost): Rename function to cheap_bb_rtx_cost_p.

* ifcvt.c (total_bb_rtx_cost): Rename function to cheap_bb_rtx_cost_p.
Take a max_cost argument to avoid scanning large blocks, by returning
a Boolean instead of a total.  Include the cost of a "fstp %st(0)"
instruction required to pop dead values off of a register stack.

From-SVN: r92352

19 years agore PR middle-end/18548 (Miscompiles code generated by Gambit-C Scheme->C compiler)
Roger Sayle [Sat, 18 Dec 2004 14:38:44 +0000 (14:38 +0000)]
re PR middle-end/18548 (Miscompiles code generated by Gambit-C Scheme->C compiler)

PR middle-end/18548
* expr.c (expand_expr_real_1) <MAX_EXPR>: Ensure that target, op0
and op1 are all registers (or constants) before expanding the RTL
comparison sequence [to avoid reg_overlap_mentioned (target, op1)].

* gcc.dg/max-1.c: New test case.

From-SVN: r92351

19 years agore PR rtl-optimization/16968 (loop optimizer miscompilation)
Eric Botcazou [Sat, 18 Dec 2004 07:55:42 +0000 (07:55 +0000)]
re PR rtl-optimization/16968 (loop optimizer miscompilation)

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

19 years agore PR middle-end/18897 (/usr/ccs/bin/ld: Unsatisfied symbols: putchar (first referenc...
Zack Weinberg [Sat, 18 Dec 2004 06:38:24 +0000 (06:38 +0000)]
re PR middle-end/18897 (/usr/ccs/bin/ld: Unsatisfied symbols: putchar (first 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

19 years agoDaily bump.
GCC Administrator [Sat, 18 Dec 2004 00:16:43 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92343

19 years agoMAINTAINERS: Move myself to OS Port Maintainers for windows, cygwin, mingw.
Danny Smith [Fri, 17 Dec 2004 23:05:30 +0000 (23:05 +0000)]
MAINTAINERS: Move myself to OS Port Maintainers for windows, cygwin, mingw.

* MAINTAINERS: Move myself to OS Port Maintainers for windows,
cygwin, mingw.

From-SVN: r92340

19 years agotree-optimize.c (init_tree_optimization_passes): Run pass_late_warn_uninitialized...
Diego Novillo [Fri, 17 Dec 2004 22:20:33 +0000 (22:20 +0000)]
tree-optimize.c (init_tree_optimization_passes): Run 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

19 years agoi386.c (x86_64_reg_class_name): Re-indent.
Richard Henderson [Fri, 17 Dec 2004 21:40:39 +0000 (13:40 -0800)]
i386.c (x86_64_reg_class_name): Re-indent.

        * 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

19 years agoc-decl.c (diagnose_mismatched_decls): Accept mismatched function types: void with...
Dale Johannesen [Fri, 17 Dec 2004 20:05:34 +0000 (20:05 +0000)]
c-decl.c (diagnose_mismatched_decls): Accept mismatched function types: void 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

19 years agostabs-1.m: Allow assembly label to begin with a dot ('.').
Ziemowit Laski [Fri, 17 Dec 2004 19:32:51 +0000 (19:32 +0000)]
stabs-1.m: Allow assembly label to begin with a dot ('.').

[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

19 years agoinit.c (build_zero_init): max_index is the number of elements, minus 1.
Steven Bosscher [Fri, 17 Dec 2004 17:10:49 +0000 (17:10 +0000)]
init.c (build_zero_init): max_index is the number of elements, minus 1.

* init.c (build_zero_init): max_index is the number of
elements, minus 1.

From-SVN: r92323

19 years ago20041213-1.c: Move...
Jakub Jelinek [Fri, 17 Dec 2004 16:05:57 +0000 (17:05 +0100)]
20041213-1.c: Move...

* gcc.c-torture/execute/20041213-1.c: Move...
* gcc.c-torture/execute/ieee/20041213-1.c: ...to here.

From-SVN: r92318

19 years agofix typoed PR number
Nathan Sidwell [Fri, 17 Dec 2004 16:02:12 +0000 (16:02 +0000)]
fix typoed PR number

From-SVN: r92317

19 years agore PR c++/17821 (Poor diagnostic for using . instead of ->)
Nathan Sidwell [Fri, 17 Dec 2004 15:58:04 +0000 (15:58 +0000)]
re PR c++/17821 (Poor diagnostic for using . instead of ->)

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

19 years agore PR libgcj/15001 ([3.4 only] Using JNI with interpreter and interface methods yield...
Andrew Haley [Fri, 17 Dec 2004 15:13:44 +0000 (15:13 +0000)]
re PR libgcj/15001 ([3.4 only] Using JNI with interpreter and interface 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

19 years agore PR java/18931 (Java bytecode ICE in except.c remove_unreachable_regions)
Andrew Haley [Fri, 17 Dec 2004 15:09:11 +0000 (15:09 +0000)]
re PR java/18931 (Java bytecode ICE in except.c remove_unreachable_regions)

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

19 years agos390.c (s390_gimplify_va_arg): Set alias set to s390_sr_alias_set.
Andreas Krebbel [Fri, 17 Dec 2004 13:18:00 +0000 (13:18 +0000)]
s390.c (s390_gimplify_va_arg): Set alias set to s390_sr_alias_set.

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

19 years agore PR target/17603 (cpowf and cpowl give wrong results)
Jan Beulich [Fri, 17 Dec 2004 08:53:58 +0000 (08:53 +0000)]
re PR target/17603 (cpowf and cpowl give wrong results)

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

19 years agotree.c (type_contains_placeholder_1): Always return false for VECTOR_TYPE if its...
Steven Bosscher [Fri, 17 Dec 2004 08:17:01 +0000 (08:17 +0000)]
tree.c (type_contains_placeholder_1): Always return false for VECTOR_TYPE if 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

19 years ago* config/i386/i386.md (extendsfdf2, *extendsfdf2_1,
Uros Bizjak [Fri, 17 Dec 2004 06:28:59 +0000 (07:28 +0100)]
* config/i386/i386.md (extendsfdf2, *extendsfdf2_1,

*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

19 years agostabs-1.m: New test.
Ziemowit Laski [Fri, 17 Dec 2004 02:50:33 +0000 (02:50 +0000)]
stabs-1.m: New test.

[gcc/testsuite/ChangeLog]
2004-12-16  Ziemowit Laski  <zlaski@apple.com>

        * objc.dg/stabs-1.m: New test.

From-SVN: r92302

19 years agovisibility-c.c: Change compile to assemble for the test.
Andrew Pinski [Fri, 17 Dec 2004 00:54:49 +0000 (00:54 +0000)]
visibility-c.c: Change compile to assemble for the test.

2004-12-16  Andrew Pinski  <pinskia@physics.uc.edu>

        * gcc.dg/visibility-c.c: Change compile to
        assemble for the test.

From-SVN: r92293

19 years agore PR target/19041 (-fvisibility=hidden causes bad codegen for common symbols)
Andrew Pinski [Fri, 17 Dec 2004 00:25:16 +0000 (00:25 +0000)]
re PR target/19041 (-fvisibility=hidden causes bad codegen for common symbols)

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

19 years agoDaily bump.
GCC Administrator [Fri, 17 Dec 2004 00:16:22 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92290

19 years agoi386.md (extv, [...]): Revalidate the operand with ext_register_operand.
Richard Henderson [Thu, 16 Dec 2004 23:18:03 +0000 (15:18 -0800)]
i386.md (extv, [...]): Revalidate the operand with ext_register_operand.

        * config/i386/i386.md (extv, extzv, insv): Revalidate the
        operand with ext_register_operand.

From-SVN: r92287

19 years ago* global.c: Fix a comment typo.
Kazu Hirata [Thu, 16 Dec 2004 21:57:49 +0000 (21:57 +0000)]
* global.c: Fix a comment typo.

From-SVN: r92286

19 years ago* de.po: Update.
Joseph Myers [Thu, 16 Dec 2004 20:02:18 +0000 (20:02 +0000)]
* de.po: Update.

From-SVN: r92283

19 years agore PR tree-optimization/18707 (Performance regression at -O2 with gzip)
Eric Botcazou [Thu, 16 Dec 2004 20:01:25 +0000 (21:01 +0100)]
re PR tree-optimization/18707 (Performance regression at -O2 with gzip)

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

19 years agore PR target/18997 (Segmentation Violation in pthread_getspecific)
Danny Smith [Thu, 16 Dec 2004 19:56:12 +0000 (19:56 +0000)]
re PR target/18997 (Segmentation Violation in pthread_getspecific)

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

19 years agoconfigure.in (sh64-*-*): Reenable gprof.
Andrew Stubbs [Thu, 16 Dec 2004 19:50:41 +0000 (19:50 +0000)]
configure.in (sh64-*-*): Reenable gprof.

2004-12-16  Andrew Stubbs  <andrew.stubbs@st.com>

* configure.in (sh64-*-*): Reenable gprof.
* configure: Regenerate.

From-SVN: r92280

19 years agosimplify-rtx.c (simplify_replace_rtx): Do not blindly replace hard registers.
Richard Henderson [Thu, 16 Dec 2004 19:19:04 +0000 (11:19 -0800)]
simplify-rtx.c (simplify_replace_rtx): Do not blindly replace hard registers.

* 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

19 years agore PR other/18508 ("basename: too few arguments" when building without bootstrap)
H.J. Lu [Thu, 16 Dec 2004 19:14:29 +0000 (19:14 +0000)]
re PR other/18508 ("basename: too few arguments" when building without 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

19 years agotrans-intrinsic.c (build_fixbound_expr): Clarify comment, fix comment typo.
Tobias Schlüter [Thu, 16 Dec 2004 19:10:18 +0000 (20:10 +0100)]
trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix comment typo.

* trans-intrinsic.c (build_fixbound_expr): Clarify comment, fix
comment typo.

From-SVN: r92274

19 years agore PR middle-end/18493 (gcc doesn't like switch blocks without case/default labels)
Roger Sayle [Thu, 16 Dec 2004 17:52:02 +0000 (17:52 +0000)]
re PR middle-end/18493 (gcc doesn't like switch blocks without case/default labels)

PR middle-end/18493
* gcc.dg/switch-8.c: New test case.

From-SVN: r92271

19 years agoMakefile.in (MD_DEPS, s-mddeps): New.
Richard Henderson [Thu, 16 Dec 2004 17:31:58 +0000 (09:31 -0800)]
Makefile.in (MD_DEPS, s-mddeps): New.

        * 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

19 years agolocal-alloc.c (block_alloc): Replace IN_RANGE with simple comparison.
Nathan Sidwell [Thu, 16 Dec 2004 16:48:23 +0000 (16:48 +0000)]
local-alloc.c (block_alloc): Replace IN_RANGE with simple comparison.

* local-alloc.c (block_alloc): Replace IN_RANGE with simple
comparison.

From-SVN: r92268

19 years agotype_traits: Implement add_const, add_volatile, and add_cv.
Paolo Carlini [Thu, 16 Dec 2004 15:00:37 +0000 (15:00 +0000)]
type_traits: Implement add_const, add_volatile, and add_cv.

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

19 years ago* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.
Nathan Sidwell [Thu, 16 Dec 2004 14:17:24 +0000 (14:17 +0000)]
* doc/c-tree.texi (CONSTRUCTOR): Mention RANGE_EXPRs.

From-SVN: r92263

19 years agos390.c (struct processor_costs): Two new fields: madbr, maebr.
Mark Dettinger [Thu, 16 Dec 2004 12:31:32 +0000 (12:31 +0000)]
s390.c (struct processor_costs): Two new fields: madbr, maebr.

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

19 years agotype_traits: Implement is_function.
Paolo Carlini [Thu, 16 Dec 2004 11:35:56 +0000 (11:35 +0000)]
type_traits: Implement is_function.

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

19 years agore PR c++/18905 (Strange error: subscripted value is neither array nor pointer)
Nathan Sidwell [Thu, 16 Dec 2004 11:04:09 +0000 (11:04 +0000)]
re PR c++/18905 (Strange error: subscripted value is neither array nor pointer)

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

19 years ago* g++.dg/other/complex1.C: New test.
Wolfgang Bangerth [Thu, 16 Dec 2004 10:16:24 +0000 (10:16 +0000)]
* g++.dg/other/complex1.C: New test.

From-SVN: r92254

19 years agore PR target/19028 (ICE in libjava)
Richard Henderson [Thu, 16 Dec 2004 09:42:46 +0000 (01:42 -0800)]
re PR target/19028 (ICE in libjava)

        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

19 years agore PR target/19005 (Error: bad register name `%sil')
Richard Henderson [Thu, 16 Dec 2004 09:40:31 +0000 (01:40 -0800)]
re PR target/19005 (Error: bad register name `%sil')

        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

19 years agoi386.md (*floathisf2_i387, [...]): Also enable for TARGET_MIX_SSE_I387.
Uros Bizjak [Thu, 16 Dec 2004 09:34:07 +0000 (10:34 +0100)]
i386.md (*floathisf2_i387, [...]): Also enable for TARGET_MIX_SSE_I387.

* config/i386/i386.md (*floathisf2_i387, *floathidf2_i387):
Also enable for TARGET_MIX_SSE_I387.

From-SVN: r92249

19 years agoi386.md (sqrt{s,d}f2_1, [...]): Unify enable constraint with respect to TARGET_SSE...
Uros Bizjak [Thu, 16 Dec 2004 09:29:57 +0000 (10:29 +0100)]
i386.md (sqrt{s,d}f2_1, [...]): Unify enable constraint with respect to 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

19 years ago* config/i386/i386.md (*fop_?f_comm_{,sse,nosse},
Uros Bizjak [Thu, 16 Dec 2004 06:35:57 +0000 (07:35 +0100)]
* config/i386/i386.md (*fop_?f_comm_{,sse,nosse},

*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

19 years agoobjc-act.c (build_private_template): Change to return 'void'...
Ziemowit Laski [Thu, 16 Dec 2004 01:10:38 +0000 (01:10 +0000)]
objc-act.c (build_private_template): Change to return 'void'...

[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

19 years agoDaily bump.
GCC Administrator [Thu, 16 Dec 2004 00:16:32 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92237

19 years agore PR target/18153 (-static-libgcc links in libunwind.so.7)
H.J. Lu [Wed, 15 Dec 2004 23:50:26 +0000 (23:50 +0000)]
re PR target/18153 (-static-libgcc links in libunwind.so.7)

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

19 years agobe.po, [...]: Update.
Joseph Myers [Wed, 15 Dec 2004 22:44:28 +0000 (22:44 +0000)]
be.po, [...]: Update.

* 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

19 years ago* fr.po: Update.
Joseph Myers [Wed, 15 Dec 2004 22:29:31 +0000 (22:29 +0000)]
* fr.po: Update.

From-SVN: r92224

19 years agocfgloop.c (flow_loops_dump): Don't print out levels.
Daniel Berlin [Wed, 15 Dec 2004 21:18:42 +0000 (21:18 +0000)]
cfgloop.c (flow_loops_dump): Don't print out levels.

2004-12-15  Daniel Berlin  <dberlin@dberlin.org>

* cfgloop.c (flow_loops_dump): Don't print out levels.
(flow_loops_find): Don't set loop->levels.
(flow_loops_level_compute): Make void.
* cfgloop.h (struct loops): Remove levels member.
Add comment about loops in parray possibly being NULL.

From-SVN: r92222

19 years agoreload.c (SMALL_REGISTER_CLASS_P): New.
Alexandre Oliva [Wed, 15 Dec 2004 20:22:26 +0000 (20:22 +0000)]
reload.c (SMALL_REGISTER_CLASS_P): New.

* reload.c (SMALL_REGISTER_CLASS_P): New.
(push_secondary_reload, find_reusable_reload, find_reloads): Use
it instead of testing only the class size.

From-SVN: r92221

19 years agoscanner.c (skip_fixed_comments): Fix typo in comment preceding function.
Tobias Schlüter [Wed, 15 Dec 2004 19:15:40 +0000 (20:15 +0100)]
scanner.c (skip_fixed_comments): Fix typo in comment preceding function.

* scanner.c (skip_fixed_comments): Fix typo in comment preceding
function.

From-SVN: r92211

19 years agore PR c++/17972 (const/pure functions result in bad asm)
Eric Botcazou [Wed, 15 Dec 2004 19:14:55 +0000 (19:14 +0000)]
re PR c++/17972 (const/pure functions result in bad asm)

PR c++/17972
* tree-inline.c (expand_call_inline): Set TREE_SIDE_EFFECTS
on the STMT_EXPR wrapping up the inlined body.

From-SVN: r92210

19 years agore PR fortran/18993 (incorrect parsing in fixed-form)
Tobias Schlüter [Wed, 15 Dec 2004 18:55:57 +0000 (19:55 +0100)]
re PR fortran/18993 (incorrect parsing in fixed-form)

fortran/
PR fortran/18993
* match.c (gfc_match_if): Don't explicitly skip optional whitespace.
(gfc_match_nullify): Make sure that ')' is in front of the end of
statement.

testsuite/
PR fortran/18993
* gfotran.dg/nullify_1.f: New test.

From-SVN: r92209

19 years agoPR middle end/17340
Vladimir Makarov [Wed, 15 Dec 2004 17:59:51 +0000 (17:59 +0000)]
PR middle end/17340

2004-12-15  Vladimir Makarov  <vmakarov@redhat.com>
            Steven Bosscher  <stevenb@suse.de>
PR middle end/17340

* global.c: Update comments in a few places.
(check_earlyclobber): Return true if there are early clobber
classes.
        (calculate_local_reg_bb_info): Do not try to mark earlyclobber
regs if there are none.
(bb_info, allocate_bb_info, free_bb_info, modify_reg_pav,
make_accurate_live_analysis): Rename pavin, pavout to live_pavin,
live_pavout.
(modify_bb_reg_pav): Remove.
(calculate_reg_pav): Use code from modify_bb_reg_pav.
(temp_bitmap): New variable.
(calculate_reg_pav): Allocate/deallocate temp_bitmap.

Co-Authored-By: Steven Bosscher <stevenb@suse.de>
From-SVN: r92206

19 years agore PR target/19010 (sse and mmx parameter passing broken)
Richard Henderson [Wed, 15 Dec 2004 17:41:58 +0000 (09:41 -0800)]
re PR target/19010 (sse and mmx parameter passing broken)

        PR target/19010
        * config/i386/i386.c (ix86_must_pass_in_stack): Don't return true
        for TImode vectors.
        (gen_reg_or_parallel): New.
        (function_arg): Use it.
        (ix86_hard_regno_mode_ok): Test SSE1 and SSE2 separately,
        MMX and 3DNOW separately.
        (ix86_rtx_costs): Simplify FLOAT_EXTEND case.
        (ix86_vector_mode_supported_p): Test SSE1 and SSE2 separately.
        * config/i386/i386.h (VALID_SSE2_REG_MODE): Move SSE2 cases from ...
        (VALID_SSE_REG_MODE): ... here.

        * gcc.target/i386/i386.exp: New harness.
        * gcc.target/i386/vect-args.c: New.

From-SVN: r92205

19 years ago* xcoffout.c (xcoffout_declare_function): Change strncpy to memcpy.
David Edelsohn [Wed, 15 Dec 2004 16:01:55 +0000 (16:01 +0000)]
* xcoffout.c (xcoffout_declare_function): Change strncpy to memcpy.

From-SVN: r92202

19 years ago* gcc.dg/20040813-1.c: Skip for *-*-aix*.
David Edelsohn [Wed, 15 Dec 2004 15:54:48 +0000 (15:54 +0000)]
* gcc.dg/20040813-1.c: Skip for *-*-aix*.

From-SVN: r92201

19 years agore PR c++/18825 (ICE segmentation fault in wv2)
Kriang Lerdsuwanakij [Wed, 15 Dec 2004 15:21:11 +0000 (15:21 +0000)]
re PR c++/18825 (ICE segmentation fault in wv2)

PR c++/18825
* pt.c (instantiate_class_template): Set input_location for
friend function.
(tsubst_friend_function): Don't set input_location here.
Make sure the context is complete if necessary.

* g++.dg/template/friend32.C: New test.

From-SVN: r92200

19 years agoarm.c (arm_xscale_rtx_costs): Increase cost of COMPARE of MULT.
Ian Lance Taylor [Wed, 15 Dec 2004 14:03:58 +0000 (14:03 +0000)]
arm.c (arm_xscale_rtx_costs): Increase cost of COMPARE of MULT.

* config/arm/arm.c (arm_xscale_rtx_costs): Increase cost of
COMPARE of MULT.
* config/arm/arm.md (mulsi3_compare0): Don't check
arm_arch_xscale.
(mulsi_compare0_scratch, mulsi3_addsi_compare0): Likewise.
(mulsi3addsi_compare0_scratch): Likewise.

From-SVN: r92199

19 years agoAdd missing entry.
Eric Botcazou [Wed, 15 Dec 2004 13:37:31 +0000 (13:37 +0000)]
Add missing entry.

From-SVN: r92196

19 years agore PR preprocessor/15167 (Internal compiler error with "#pragma once")
Eric Botcazou [Wed, 15 Dec 2004 13:31:28 +0000 (14:31 +0100)]
re PR preprocessor/15167 (Internal compiler error with "#pragma once")

PR preprocessor/15167
* files.c (destroy_cpp_file): New function.
(should_stack_file): Make a new file if the
compared file is still stacked.

From-SVN: r92194

19 years agore PR libfortran/17597 (list directed read has error)
Bud Davis [Wed, 15 Dec 2004 12:42:39 +0000 (12:42 +0000)]
re PR libfortran/17597 (list directed read has error)

2004-12-15  Bud Davis  <bdavis9659@comcast.net>
            Steven G. Kargl  <kargls@comcast.net>

        PR fortran/17597
        * io/list_read.c (read_real): do not push back a comma when
        it delimits a real value without a decimal point

2004-12-15  Bud Davis  <bdavis9659@comcast.net>
            Steven G. Kargle  <kargls@comcast.net>

        PR fortran/17597
        * gfortran.dg/list_read_3.f90: New test.

Co-Authored-By: Steven G. Kargl <kargls@comcast.net>
Co-Authored-By: Steven G. Kargl <kargls@comcast.net>
From-SVN: r92190

19 years agore PR other/18665 (-ftrapv borks up simple integer arithmetic)
Eric Botcazou [Wed, 15 Dec 2004 12:30:46 +0000 (13:30 +0100)]
re PR other/18665 (-ftrapv borks up simple integer arithmetic)

PR other/18665
* libgcc-std.ver (GCC_3.4.4): Inherit from GCC_3.4.2.
Export __absvti2, __addvti3, __mulvti3, __negvti2 and __subvti3.
* libgcc2.c (__addvsi3): Rename to __addvSI3.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__addvdi3): Rename to __addvDI3.
(__subvsi3): Rename to __subvSI3.  Use word type for the result.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__subvdi3): Rename to __subvDI3.
(_mulvsi3): Rename to _mulvSI3.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(_mulvdi3): Rename to _mulvDI3.
(__negvsi2): Rename to __negvSI2.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__negvdi2): Rename to __negvDI2.
(__absvsi2): Rename to __absvSI2.
New version if COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__absvdi2): Rename to __absvDI2.
* libgcc2.h (64-bit targets): Define COMPAT_SIMODE_TRAPPING_ARITHMETIC.
(__absvSI2, __addvSI3, __subvSI3, __mulvSI3, __negvSI2, __absvDI2,
__addvDI3, __subvDI3, __mulvDI3, __negvDI2): Define to the appropriate
symbol and declare.
(__absvsi2, __addvsi3, __subvsi3, __mulvsi3, __negvsi2): Declare if
COMPAT_SIMODE_TRAPPING_ARITHMETIC.

From-SVN: r92187

19 years agoconfig/m32r.c (m32r_legitimize_pic_address): Changed to support GOTOFF relocation.
Kazuhiro Inaoka [Wed, 15 Dec 2004 12:13:07 +0000 (12:13 +0000)]
config/m32r.c (m32r_legitimize_pic_address): Changed to support GOTOFF relocation.

config/m32r.c  (m32r_legitimize_pic_address): Changed to support GOTOFF
               relocation.
config/m32r.md (UNSPEC_GOTOFF): New.
               (gotoff_load_addr): New.

From-SVN: r92186

19 years ago(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.
Kazuhiro Inaoka [Wed, 15 Dec 2004 11:53:44 +0000 (11:53 +0000)]
(PREFERRED_DEBUGGING_TYPE): Use DWARF2_DEBUG.

From-SVN: r92185

19 years agore PR c++/18981 (ICE in cp_parser_lookup_name)
Nathan Sidwell [Wed, 15 Dec 2004 10:25:14 +0000 (10:25 +0000)]
re PR c++/18981 (ICE in cp_parser_lookup_name)

cp:
PR c++/18981
* parser.c (cp_parser_lookup_name): Remove unneeded TYPENAME_TYPE
flag setting.
testsuite:
PR 18981
* g++.dg/template/typename9.C: New test.

From-SVN: r92184

19 years agomips.c (mips_arg_info): Use FUNCTION_ARG_BOUNDARY to decide whether an argument is...
Richard Sandiford [Wed, 15 Dec 2004 08:55:05 +0000 (08:55 +0000)]
mips.c (mips_arg_info): Use FUNCTION_ARG_BOUNDARY to decide whether an argument is double-word aligned.

* config/mips/mips.c (mips_arg_info): Use FUNCTION_ARG_BOUNDARY to
decide whether an argument is double-word aligned.

From-SVN: r92182

19 years ago* config/i386/i386.md: Fix missing modes on cmove splitters.
Richard Henderson [Wed, 15 Dec 2004 07:59:34 +0000 (23:59 -0800)]
* config/i386/i386.md: Fix missing modes on cmove splitters.

From-SVN: r92180

19 years agomklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.
Jan Beulich [Wed, 15 Dec 2004 07:43:48 +0000 (07:43 +0000)]
mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.

gcc/
2004-12-15 Jan Beulich  <jbeulich@novell.com>
* mklibgcc.in (libgcc2_c_dep): Add dependency on libgcc2.h.

From-SVN: r92179

19 years ago* config/i386/i386.md (floathisf2, *floathisf2_1, floatsisf2,
Uros Bizjak [Wed, 15 Dec 2004 06:54:53 +0000 (07:54 +0100)]
* config/i386/i386.md (floathisf2, *floathisf2_1, floatsisf2,

*floatsisf2_i387, *floatsisf2_sse, floatdisf2,
*floatdisf2_i387_only, *floatdisf2_i387, *floatdisf2_sse,
floathidf2, *floathidf2_1, *floatsidf2_i387, *floatsidf2_sse,
floatdidf2, *floatdidf2_i387_only, *floatdidf2_i387,
*floatdidf2_sse, floatunssisf2, floatunsdisf2, floatunsdidf2):
Unify enable constraint with respect to TARGET_80387, TARGET_SSE,
TARGET_SSE2, TARGET_64BIT, TARGET_SSE_MATH and TARGET_MIX_SSE_I387.
(*float?i?f_i387): Rename to *float?i?f2_mixed.
(*float?i?f2_1): Rename to *float?i?f2_i387.
(*float?i?f2_i387_only): Rename to *float?i?f2_i387.
(float?ixf2): Penalize integer register operand.

From-SVN: r92178

19 years agore PR c++/17242 (Testsuite fails due to duplicate symbols)
John David Anglin [Wed, 15 Dec 2004 05:10:57 +0000 (05:10 +0000)]
re PR c++/17242 (Testsuite fails due to duplicate symbols)

PR c++/17242
* configure.ac: Add GAS check for HP-UX .nsubspa comdat.
* configure, config.in: Rebuilt.
* config/pa/pa-hpux10.h (SUPPORTS_ONE_ONLY, MAKE_DECL_ONE_ONLY): Delete
defines.
* config/pa/pa.c (pa_select_section): Allow uninitialized variables in
one-only (comdat) subspaces.
* config/pa/som.h (SUPPORTS_SOM_COMDAT): New define.
(SUPPORTS_ONE_ONLY): True if SUPPORTS_WEAK or SUPPORTS_SOM_COMDAT are
true.
(MAKE_DECL_ONE_ONLY): Place uninitialized variables in common.

From-SVN: r92177

19 years agogfortran.h (gfc_expr.function.name): Make const.
Richard Henderson [Wed, 15 Dec 2004 03:56:06 +0000 (19:56 -0800)]
gfortran.h (gfc_expr.function.name): Make const.

        * gfortran.h (gfc_expr.function.name): Make const.
        (gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
        (gfc_get_string): Update prototype.
        * iresolve.c: Include tree.h.
        (string_node, HASH_SIZE, string_head, hash): Remove.
        (gfc_get_string): Use vsnprintf, get_identifier.
        (free_strings, gfc_iresolve_init_1, gfc_iresolve_done_1): Remove.
        * misc.c (gfc_init_1): Don't call gfc_iresolve_init_1.
        (gfc_done_1): Don't call gfc_iresolve_done_1.
        * module.c (mio_allocated_string): Take and return const char *,
        instead of modifying char**.
        (mio_expr): Update to match.
        * resolve.c (pure_function): Constify name argument.
        (resolve_function): Constify name.
        * trans-intrinsic.c (gfc_conv_intrinsic_function): Likewise.

From-SVN: r92176

19 years agocombine.c (combine_validate_cost): Consider cost of undobuf.other_insn rather than...
Ian Lance Taylor [Wed, 15 Dec 2004 01:02:55 +0000 (01:02 +0000)]
combine.c (combine_validate_cost): Consider cost of undobuf.other_insn rather than always allowing the...

* combine.c (combine_validate_cost): Consider cost of
undobuf.other_insn rather than always allowing the recombination
if it is set.

From-SVN: r92173

19 years agore PR c++/18738 (typename not allowed with non-dependent qualified name)
Mark Mitchell [Wed, 15 Dec 2004 00:42:33 +0000 (00:42 +0000)]
re PR c++/18738 (typename not allowed with non-dependent qualified name)

PR c++/18738
* decl.c (make_typename_type): Do not handle namespace-scoped
names here.
(tag_name): Handle typename_type.
(check_elaborated_type_specifier): Handle typenames.
* parser.c (cp_parser_diagnose_invalid_type_name): Improve
comment.
(cp_parser_elaborated_type_specifier): Use
cp_parser_diagnose_invalid_type_name.

PR c++/18738
* g++.dg/template/typename8.C: New test.
* g++.dg/parse/friend2.C: Tweak error message.

From-SVN: r92172

19 years agoDaily bump.
GCC Administrator [Wed, 15 Dec 2004 00:16:21 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r92170

19 years agopa-host.c (MAP_FAILED): Define if not defined.
John David Anglin [Tue, 14 Dec 2004 22:48:53 +0000 (22:48 +0000)]
pa-host.c (MAP_FAILED): Define if not defined.

* pa-host.c (MAP_FAILED): Define if not defined.
(pa_gt_pch_use_address): Handle short reads.

From-SVN: r92166

19 years agore PR target/17990 (sse used for negate without -mfpmath=sse)
Richard Henderson [Tue, 14 Dec 2004 22:45:28 +0000 (14:45 -0800)]
re PR target/17990 (sse used for negate without -mfpmath=sse)

        PR target/17990
        * config/i386/i386.c (x86_use_bt): New.
        (ix86_expand_unary_operator): Use MEM_P.
        (ix86_expand_fp_absneg_operator): New.
        * config/i386/i386.h (x86_use_bt): Declare.
        (TARGET_USE_BT): New.
        * config/i386/i386-protos.h: Update.
        * config/i386/i386.md (negsf2): Use ix86_expand_fp_absneg_operator.
        (negdf2, negxf2, abssf2, absdf2, absxf2): Likewise.
        (negsf2_memory, negsf2_ifs, negsf2_if, negdf2_memory, negdf2_ifs,
        negdf2_ifs_rex64, negdf2_if, negdf2_if_rex64, negxf2_if,
        abssf2_memory, abssf2_ifs, abssf2_if, absdf2_memory, absdf2_ifs,
        absdf2_ifs_rex64, absdf2_if, absxf2_if): Remove.
        (absnegsf2_mixed, absnegsf2_sse, absnegsf2_i387, absnegdf2_mixed,
        absnegdf2_sse, absnegdf2_i387, absnegxf2_i387): New.  Merge all
        neg and abs splitters.  Handle DFmode in general regs in 64-bit mode.
        (negextendsfdf2, absextendsfdf2): Disable for non-mixed sse math.
        (btsq, btrq, btcq): New.  Add peepholes as well.
        (movv4sf_internal splitter): Postpone til after reload.
        (movv2di_internal splitter): Likewise.
        * config/i386/predicates.md (const_0_to_63_operand): New.
        (absneg_operator): New.

From-SVN: r92165

19 years agopa.h (REGNO_OK_FOR_INDEX_P, [...]): Check register number and that reg_renumber is...
John David Anglin [Tue, 14 Dec 2004 22:35:48 +0000 (22:35 +0000)]
pa.h (REGNO_OK_FOR_INDEX_P, [...]): Check register number and that reg_renumber is nonzero before using it.

* pa.h (REGNO_OK_FOR_INDEX_P, REGNO_OK_FOR_BASE_P, REGNO_OK_FOR_FP_P):
Check register number and that reg_renumber is nonzero before using it.

From-SVN: r92164

19 years agoFix date on ChangeLog
Tobias Schlüter [Tue, 14 Dec 2004 22:00:54 +0000 (23:00 +0100)]
Fix date on ChangeLog

From-SVN: r92163

19 years agoinvoke.texi (IA-64 options): Add existing options that weren't already listed.
Steve Ellcey [Tue, 14 Dec 2004 21:50:54 +0000 (21:50 +0000)]
invoke.texi (IA-64 options): Add existing options that weren't already listed.

* doc/invoke.texi (IA-64 options): Add existing options that
weren't already listed.

From-SVN: r92162

19 years ago20041214-1.c: New test.
Jeff Law [Tue, 14 Dec 2004 20:29:12 +0000 (13:29 -0700)]
20041214-1.c: New test.

* gcc.c-torture/execute/20041214-1.c: New test.

Actually commit 20041213-2.c (pr18694).

From-SVN: r92160

19 years agoForgot to add dg-do
Andrew Pinski [Tue, 14 Dec 2004 20:21:49 +0000 (12:21 -0800)]
Forgot to add dg-do

From-SVN: r92159

19 years agore PR middle-end/18965 (ICE in gimplify_init_ctor_eval)
Andrew Pinski [Tue, 14 Dec 2004 20:13:16 +0000 (20:13 +0000)]
re PR middle-end/18965 (ICE in gimplify_init_ctor_eval)

2004-12-14  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c++/18965
        * init.c (build_zero_init): If the max_index is 0, there is no
        need to create a RANGE_EXPR.

2004-12-14  Andrew Pinski  <pinskia@physics.uc.edu>

        PR c++/18965
        * g++.dg/init/array17.C: New test.

From-SVN: r92158

19 years agotree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target partition to...
Jeff Law [Tue, 14 Dec 2004 20:05:48 +0000 (13:05 -0700)]
tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target partition to conflict_graph_merge_regs.

        * tree-outof-ssa.c (coalesce_abnormal_edges): Pass the correct target
        partition to conflict_graph_merge_regs.

From-SVN: r92157

19 years agore PR c++/18793 (ICE in cp_expr_size)
Mark Mitchell [Tue, 14 Dec 2004 19:38:25 +0000 (19:38 +0000)]
re PR c++/18793 (ICE in cp_expr_size)

PR c++/18793
* cp-objcp-common.c (cp_expr_size): Loosen assertion.

PR c++/18793
* g++.dg/init/aggr3.C: New test.

From-SVN: r92156

19 years agors6000.c (rs6000_handle_altivec_attribute_tree): Report errors for vector types with...
Uttam Pawar [Tue, 14 Dec 2004 18:43:57 +0000 (18:43 +0000)]
rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors for vector types with invalid component types.

* rs6000.c (rs6000_handle_altivec_attribute_tree): Report errors
for vector types with invalid component types.
testsuite:
* gcc.dg/altivec-types-1.c: New test.
* gcc.dg/altivec-types-2.c: New test.
* gcc.dg/altivec-types-3.c: New test.
* gcc.dg/altivec-types-4.c: New test.
* g++.dg/ext/altivec-types-1.C: New test.
* g++.dg/ext/altivec-types-2.C: New test.
* g++.dg/ext/altivec-types-3.C: New test.
* g++.dg/ext/altivec-types-4.C: New test.

Co-Authored-By: Janis Johnson <janis187@us.ibm.com>
From-SVN: r92154

19 years agore PR middle-end/18951 (Invalid code generated by expand_errno_check)
Jakub Jelinek [Tue, 14 Dec 2004 18:04:56 +0000 (19:04 +0100)]
re PR middle-end/18951 (Invalid code generated by expand_errno_check)

PR middle-end/18951
* builtins.c (expand_builtin_mathfn, expand_builtin_mathfn_2,
expand_builtin_mathfn_3): Avoid using arguments passed to
save_expr after that call.

* gcc.c-torture/execute/20041213-1.c: New test.

From-SVN: r92151

19 years agofold-const.c (fold_single_bit_test): If flag_syntax_only, pretend LOAD_EXTEND_OP...
Jakub Jelinek [Tue, 14 Dec 2004 17:59:36 +0000 (18:59 +0100)]
fold-const.c (fold_single_bit_test): If flag_syntax_only, pretend LOAD_EXTEND_OP is not defined.

* fold-const.c (fold_single_bit_test): If flag_syntax_only, pretend
LOAD_EXTEND_OP is not defined.
(fold): Likewise.  If flag_syntax_only, don't depend on BITS_PER_WORD.

From-SVN: r92150

19 years agoRemove >>> conflict indicator.
Jeff Law [Tue, 14 Dec 2004 17:46:11 +0000 (10:46 -0700)]
Remove >>>  conflict indicator.

From-SVN: r92148

19 years agoForgot to commit yesterday.
Kazu Hirata [Tue, 14 Dec 2004 17:45:37 +0000 (10:45 -0700)]
Forgot to commit yesterday.

From-SVN: r92147

19 years agotree.def, [...]: Correctly document restrictions on the shift width.
Tobias Schlüter [Tue, 14 Dec 2004 17:24:46 +0000 (18:24 +0100)]
tree.def, [...]: Correctly document restrictions on the shift width.

2004-12-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>

* tree.def, doc/c-tree.texi: Correctly document restrictions on the
shift width.

From-SVN: r92145

19 years agotree.def, [...]: Correctly document restrictions on the shift width.
Tobias Schlüter [Tue, 14 Dec 2004 17:19:37 +0000 (18:19 +0100)]
tree.def, [...]: Correctly document restrictions on the shift width.

2004-12-14  Tobias Schlueter  <tobias.schlueter@physik.uni-muenchen.de>

* tree.def, doc/c-tree.texi: Correctly document restrictions on the
shift width.

From-SVN: r92144

19 years agotransfer.c (us_read): Use memcpy/memset instead of assignment to fill unaligned buffer.
Steve Ellcey [Tue, 14 Dec 2004 16:34:08 +0000 (16:34 +0000)]
transfer.c (us_read): Use memcpy/memset instead of assignment to fill unaligned buffer.

* libgfortran/io/transfer.c (us_read): Use memcpy/memset
instead of assignment to fill unaligned buffer.
(us_write): Ditto.
(next_record_w): Ditto.

From-SVN: r92143

19 years ago* expr.h (expand_modifier): Define EXPAND_STACK_PARM as 1.
Kazu Hirata [Tue, 14 Dec 2004 16:24:42 +0000 (16:24 +0000)]
* expr.h (expand_modifier): Define EXPAND_STACK_PARM as 1.

From-SVN: r92140

19 years agore PR c++/18949 (trouble with const_cast in templates)
Nathan Sidwell [Tue, 14 Dec 2004 15:39:12 +0000 (15:39 +0000)]
re PR c++/18949 (trouble with const_cast in templates)

cp:
PR c++/18949
* pt.c (tsubst_copy_and_build): <INDIRECT_REF case> Check that a
REFERENCE_REF_P is dereferencing a reference type.
* typeck.c (build_static_cast): Convert from reference even in a
template.
(build_reinterpret_cast, build_const_cast, build_c_cast): Likewise.
testsuite:
PR c++/18949
* g++.dg/template/cast1.C: New.

From-SVN: r92136