platform/upstream/gcc.git
17 years agoSigh. Add ChangeLog entry missing from previous commit.
Tobias Schlüter [Fri, 13 Apr 2007 11:03:43 +0000 (13:03 +0200)]
Sigh.  Add ChangeLog entry missing from previous commit.

From-SVN: r123781

17 years agore PR fortran/31562 (FAIL: gfortran.dg/value_4.f90 -O0 execution test)
Tobias Burnus [Fri, 13 Apr 2007 10:59:19 +0000 (12:59 +0200)]
re PR fortran/31562 (FAIL: gfortran.dg/value_4.f90  -O0  execution test)

2007-04-12  Tobias Burnus  <burnus@net-b.de>

       PR fortran/31562
       * gfortran.dg/value_4.c: Use GNU extensions for complex
       instead of a struct.

From-SVN: r123780

17 years agonumeric_traits.h: Do not include <limits>.
Paolo Carlini [Fri, 13 Apr 2007 10:54:37 +0000 (10:54 +0000)]
numeric_traits.h: Do not include <limits>.

2007-04-13  Paolo Carlini  <pcarlini@suse.de>

* include/ext/numeric_traits.h: Do not include <limits>.
(__numeric_traits_integer::__is_signed, __digits): Add.
(__numeric_traits_floating::__digits10, __max_exponent10): Add.
* src/istream.cc (ignore<char>(streamsize, int_type), operator>>
(basic_istream<char>&, char*), ignore<wchar_t>(streamsize,
int_type)): Use the latter.
* src/compatibility.cc (ignore<char>(streamsize),
ignore<wchar_t>(streamsize)): Likewise.
* include/ext/vstring_util.h (__vstring_utility<>::_S_compare):
Likewise.
* include/bits/stl_memory.h (__get_temporary_buffer): Likewise.
* include/bits/stl_algobase.h (lexicographical_compare(const char*,
const char*, const char*, const char*)): Likewise.
* include/bits/locale_facets.tcc (num_get<>::_M_extract_int(_InIter,
_InIter, ios_base&, ios_base::iostate&, _ValueT&),
num_put<>::_M_insert_int(_OutIter, ios_base&, _CharT, _ValueT),
num_put<>::_M_insert_float(_OutIter, ios_base&, _CharT, char,
_ValueT), collate<>::do_hash(const _CharT*, const _CharT*)): Likewise.
* include/bits/basic_string.h (basic_string<>::_S_compare): Likewise.
* include/bits/istream.tcc (operator>>(short&), operator>>(int&),
ignore(streamsize), ignore(streamsize, int_type), operator>>
(basic_istream<>&, _CharT*)): Likewise.
* include/bits/stl_bvector.h (vector<bool>::max_size): Likewise.
* include/tr1/functional_hash.h (struct hash<long double>): Likewise.
* include/std/istream: Do not include <limits>.
* include/tr1/cmath: Include <limits>.
* testsuite/23_containers/vector/bool/capacity/29134.cc: Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/13.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
Likewise.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/13.cc:
Likewise.
* testsuite/27_io/ios_base/storage/2.cc: Likewise.

* include/tr1/hashtable: Do not include the whole <iterator>.

From-SVN: r123779

17 years agore PR tree-optimization/21258 (Teach VRP to pick up a constant from case label.)
Richard Guenther [Fri, 13 Apr 2007 09:21:22 +0000 (09:21 +0000)]
re PR tree-optimization/21258 (Teach VRP to pick up a constant from case label.)

2007-04-13  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/21258
* tree-vrp.c (compare_case_labels): New helper.
(find_switch_asserts): New function.
(find_assert_locations): Call it for SWITCH_EXPRs.

* gcc.dg/tree-ssa/vrp34.c: New testcase.

From-SVN: r123778

17 years agoi386.h (X87_FLOAT_MODE_P): Check for TARGET_80387.
Uros Bizjak [Fri, 13 Apr 2007 08:14:57 +0000 (10:14 +0200)]
i386.h (X87_FLOAT_MODE_P): Check for TARGET_80387.

        * config/i386/i386.h (X87_FLOAT_MODE_P): Check for TARGET_80387.
        * config/i386/i386.md (*cmpfp0): Remove check for TARGET_80387, this
        check is now implied in X87_FLOAT_MODE_P.
        (*cmpfp_u, *cmpfp_<mode>, *cmpfp_i_i387): Ditto.
        (*cmpfp_iu_387, fix_trunc<mode>_fisttp_i386_1): Ditto.
        (fix_trunc<mode>_i386_fisttp): Ditto.
        (fix_trunc<mode>_i387_fisttp_with_temp): Ditto.
        (*fix_trunc<mode>_i387_1, fix_truncdi_i387): Ditto.
        (fix_truncdi_i387_with_temp, fix_trunc<mode>_i387): Ditto.
        (fix_trunc<mode>_i387_with_temp, *fp_jcc_1_387): Ditto.
        (*fp_jcc_2_387, *fp_jcc_5_387, *fp_jcc_6_387): Ditto.
        (*fp_jcc_7_387, *fp_jcc_8<mode>_387): Ditto.
        (unnamed_splitters): Ditto.
        * config/i386/i386.c (function_value_32): Generate FIRST_FLOAT_REG
        for X87_FLOAT_MODE_P mode.  Override FIRST_FLOAT_REG with
        FIRST_SSE_REG for local functions when SSE math is enabled or
        for functions with sseregparm attribute.
        (standard_80387_constant_p): Return -1 if mode is not
        X87_FLOAT_MODE_P.
        (ix86_cc_mode): Assert that scalar mode is not DECIMAL_FLOAT_MODE_P.
        (ix86_expand_compare): Ditto.
        (ix86_expand_carry_flag_compare): Ditto.
        (ix86_expand_int_movcc): Check for SCALAR_FLOAT_MODE_P instead
        of FLOAT_MODE_P for cmp_mode and assert that cmp_mode is not
        DECIMAL_FLOAT_MODE_P.
        (ix86_preferred_output_reload_class): Use X87_FLOAT_MODE_P instead
        of SCALAR_FLOAT_MODE_P.
        (ix86_rtx_costs) [PLUS] Remove FLOAT_MODE_P and fall through to ...
        [MINUS]: ... here.  Add SSE_FLOAT_MODE_P and X87_FLOAT_MODE_P
        checks before FLOAT_MODE_P.
        [MULT]: Add SSE_FLOAT_MODE_P and X87_FLOAT_MODE_P checks
        before FLOAT_MODE_P.
        [DIV]: Ditto.
        [NEG]: Ditto.
        [ABS]: Ditto.
        [SQRT]: Ditto.
        [FLOAT_EXTEND]: Use SSE_FLOAT_MODE_P.

From-SVN: r123777

17 years agoMakefile.am (EXTRA_DIST): Bring up to date.
Paolo Bonzini [Fri, 13 Apr 2007 07:21:04 +0000 (07:21 +0000)]
Makefile.am (EXTRA_DIST): Bring up to date.

2007-04-11  Paolo Bonzini  <bonzini@gnu.org>

* Makefile.am (EXTRA_DIST): Bring up to date.
* Makefile.in: Regenerate.
* src/frv/eabi.S: Remove RCS keyword.

From-SVN: r123776

17 years agoMakefile.in (stamp-as, [...]): Remove.
Paolo Bonzini [Fri, 13 Apr 2007 07:04:39 +0000 (07:04 +0000)]
Makefile.in (stamp-as, [...]): Remove.

2007-04-12  Paolo Bonzini  <bonzini@gnu.org>
            Charles Wilson  <libtool@cwilson.fastmail.fm>

* Makefile.in (stamp-as, stamp-collect-ld, stamp-nm): Remove.
(libgcc.mvars): Don't depend on them.
* configure.ac (as, collect-ld, nm): Create from exec-tool.in.
* exec-tool.in: New.

Co-Authored-By: Charles Wilson <libtool@cwilson.fastmail.fm>
From-SVN: r123775

17 years agoDaily bump.
GCC Administrator [Thu, 12 Apr 2007 23:17:05 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123773

17 years ago* doc/invoke.text (--help): Document --help=common.
Brooks Moses [Thu, 12 Apr 2007 21:13:32 +0000 (21:13 +0000)]
* doc/invoke.text (--help): Document --help=common.

From-SVN: r123769

17 years agoc_by_val.c: Use GCC extensions instead of including <complex.h>.
Francois-Xavier Coudert [Thu, 12 Apr 2007 20:59:43 +0000 (20:59 +0000)]
c_by_val.c: Use GCC extensions instead of including <complex.h>.

* gfortran.dg/c_by_val.c: Use GCC extensions instead of including
<complex.h>.

From-SVN: r123768

17 years agoCommit bits missing from previous checkin
Tobias Schlüter [Thu, 12 Apr 2007 19:12:20 +0000 (21:12 +0200)]
Commit bits missing from previous checkin

Commit bits missing from previous checkin
* gfortran.dg/repeat_2.f90: Add dg-warning annotations.
* gfortran.dg/repeat_4.f90: Likewise.

From-SVN: r123765

17 years agostub-objc.c (objc_build_keyword_decl): Avoid C++ keywords.
Thomas Neumann [Thu, 12 Apr 2007 19:00:38 +0000 (19:00 +0000)]
stub-objc.c (objc_build_keyword_decl): Avoid C++ keywords.

2007-04-12  Thomas Neumann  <tneumann@users.sourceforge.net>

* stub-objc.c (objc_build_keyword_decl): Avoid C++ keywords.

From-SVN: r123764

17 years agore PR fortran/31250 (Initialization expr as constant character length rejected)
Tobias Schlüter [Thu, 12 Apr 2007 18:48:06 +0000 (20:48 +0200)]
re PR fortran/31250 (Initialization expr as constant character length rejected)

PR fortran/31250
fortran/
* decl.c (match_char_spec): Move check for negative CHARACTER
length ...
* resolve.c (resolve_charlen): ... here.
(resolve_types): Resolve CHARACTER lengths earlier.
teststuite/
* gfortran.dg/char_length_2.f90: New.

From-SVN: r123763

17 years agoFile missing from previous commit
Tobias Schlüter [Thu, 12 Apr 2007 18:30:06 +0000 (20:30 +0200)]
File missing from previous commit

From-SVN: r123762

17 years agore PR fortran/31234 (Thread-safety of random_number should be documented.)
Daniel Franke [Thu, 12 Apr 2007 18:23:03 +0000 (14:23 -0400)]
re PR fortran/31234 (Thread-safety of random_number should be documented.)

2007-04-12  Daniel Franke  <franke.daniel@gmail.com>

        PR fortran/31234
        * intrinsic.texi (RANDOM_SEED, RANDOM_NUMBER): New.

From-SVN: r123760

17 years agore PR fortran/31266 (Spurious(?) warning about character truncation)
Tobias Schlüter [Thu, 12 Apr 2007 18:10:10 +0000 (20:10 +0200)]
re PR fortran/31266 (Spurious(?) warning about character truncation)

PR fortran/31266
fortran/
* primary.c (gfc_variable_attr): Don't copy string length if it
doesn't make sense.
* resolve.c (resolve_code): Clarify error message.
testsuite/
* gfortran.dg/char_assign_1.f90: New.

From-SVN: r123759

17 years agodecl.c (gfc_match_end): Also check for construct name in END FORALL and END WERE...
Tobias Schlüter [Thu, 12 Apr 2007 18:07:09 +0000 (20:07 +0200)]
decl.c (gfc_match_end): Also check for construct name in END FORALL and END WERE statements.

        fortran/31471
fortran/
* decl.c (gfc_match_end): Also check for construct name in END
FORALL and END WERE statements.
* match.c (match_case_eos): Use uppercase for statement name in
error message.
(match_elsewhere): Construct name may appear iff construct has a
name.
testsuite/
* gfortran.dg/block_name_1.f90: New.
* gfortran.dg/block_name_2.f90: New.

From-SVN: r123758

17 years agoMakefile.in (insn-emit.o): Depend on $(INTEGRATE_H).
Richard Sandiford [Thu, 12 Apr 2007 17:59:57 +0000 (17:59 +0000)]
Makefile.in (insn-emit.o): Depend on $(INTEGRATE_H).

gcc/
* Makefile.in (insn-emit.o): Depend on $(INTEGRATE_H).
* genemit.c (main): Emit #include "integrate.h".
* config/mips/mips-protos.h (SYMBOL_HALF): New mips_symbol_type.
(LOADGP_RTP): New mips_loadgp_style.
* config/mips/mips.h: Include config/vxworks-dummy.h.
(TARGET_RTP_PIC): New macro.
(TARGET_USE_GOT): Return true for TARGET_RTP_PIC.
(TARGET_USE_PIC_FN_ADDR_REG): Return true for TARGET_VXWORKS_RTP.
(ASM_OUTPUT_ADDR_DIFF_ELT): Emit function-relative case tables
for TARGET_RTP_PIC.
* config/mips/vxworks.h (SUBTARGET_ASM_SPEC): Define.  Pass down
-mvxworks-pic when using -mrtp and a PIC option.
* config/mips/mips.c (mips_classify_symbol): Return SYMBOL_GOT_DISP
for RTP PIC.
(mips_symbolic_constant_p, mips_symbolic_address_p)
(mips_symbol_insns): Handle SYMBOL_HALF.
(override_options): Warn about -G and -mrtp being used together.
Initialize mips_lo_relocs[SYMBOL_HALF].
(mips_current_loadgp_style): Return LOADGP_RTP for RTP PIC.
(mips_emit_loadgp): Handle LOADGP_RTP.
(mips_in_small_data_p): Return false for TARGET_VXWORKS_RTP.
* config/mips/mips.md (loadgp_rtp): New insn and splitter.
(tablejump): Handle function-relative case table entries if
TARGET_RTP_PIC.
* config/mips/predicates.md (symbol_ref_operand): New predicate.

From-SVN: r123757

17 years agomips.md (load_call<mode>): Allow any general register.
Richard Sandiford [Thu, 12 Apr 2007 17:44:57 +0000 (17:44 +0000)]
mips.md (load_call<mode>): Allow any general register.

gcc/
* config/mips/mips.md (load_call<mode>): Allow any general register.
destination.
(sibcall_value_internal, sibcall_value_multiple_internal)
(call_value_internal, call_value_split, call_value_multiple_internal)
(call_value_multiple_split): Remove constraints from operand 0.

From-SVN: r123756

17 years agomips-protos.h: In comments, refer to loadgp_absolute rather than loadgp_noshared.
Richard Sandiford [Thu, 12 Apr 2007 17:39:58 +0000 (17:39 +0000)]
mips-protos.h: In comments, refer to loadgp_absolute rather than loadgp_noshared.

gcc/
* config/mips/mips-protos.h: In comments, refer to loadgp_absolute
rather than loadgp_noshared.
* config/mips/mips.c (mips_emit_loadgp): Use gen_loadgp_absolute
instead of gen_loadgp_noshared.  Use gen_loadgp_newabi instead of
gen_loadgp.
* config/mips/mips.md (loadgp): Rename to...
(loadgp_newabi): ...this.
(loadgp_noshared): Rename to...
(loadgp_absolute): ...this.

From-SVN: r123755

17 years agomips.c (mips_ok_for_lazy_binding_p): Always return false for locally-binding symbols.
Richard Sandiford [Thu, 12 Apr 2007 17:37:25 +0000 (17:37 +0000)]
mips.c (mips_ok_for_lazy_binding_p): Always return false for locally-binding symbols.

gcc/
* config/mips/mips.c (mips_ok_for_lazy_binding_p): Always return
false for locally-binding symbols.
(mips_dangerous_for_la25_p): Check mips_global_symbol_p.

From-SVN: r123754

17 years ago+ * trans-types.c: Update copyright years.
Tobias Schlüter [Thu, 12 Apr 2007 17:34:03 +0000 (19:34 +0200)]
+ * trans-types.c: Update copyright years.

+       * trans-types.c: Update copyright years.  Reformat long comment
+       explaining array descriptor format.  Remove obsolete mention of
+       TYPE_SET.
+

From-SVN: r123753

17 years agomips-protos.h (SYMBOL_GOT_LOCAL): Rename to...
Richard Sandiford [Thu, 12 Apr 2007 17:26:45 +0000 (17:26 +0000)]
mips-protos.h (SYMBOL_GOT_LOCAL): Rename to...

gcc/
* config/mips/mips-protos.h (SYMBOL_GOT_LOCAL): Rename to...
(SYMBOL_GOT_PAGE_OFST): ...this.
(SYMBOL_GOT_GLOBAL): Rename to...
(SYMBOL_GOT_DISP): ...this.
(SYMBOL_GOTOFF_GLOBAL): Rename to...
(SYMBOL_GOTOFF_DISP): ...this.  Update comments accordingly.
* config/mips/mips.c (mips_global_symbol_p): New function.
(mips_symbol_binds_local_p): Likewise.
(mips_classify_symbol): Rename SYMBOL_GOT_GLOBAL to SYMBOL_GOT_DISP
and SYMBOL_GOT_LOCAL to SYMBOL_GOT_PAGE_OFST.  Use mips_global_symbol_p
and mips_symbol_binds_local_p.
(mips_symbolic_constant_p, mips_symbolic_address_p, mips_symbol_insns)
(override_options): Rename SYMBOL_GOT_GLOBAL to SYMBOL_GOT_DISP,
SYMBOL_GOT_LOCAL to SYMBOL_GOT_PAGE_OFST and SYMBOL_GOTOFF_GLOBAL to
SYMBOL_GOTOFF_DISP.
(mips_ok_for_lazy_binding_p): New function.
(mips_load_call_address, mips_expand_call): Use it.
(mips_dangerous_for_la25_p): Likewise.
* config/mips/mips.md (*xgot_hi<mode>, *xgot_lo<mode>)
(*got_disp<mode>): Use got_disp_operand instead of
global_got_operand.  Use SYMBOL_GOTOFF_DISP instead of
SYMBOL_GOTOFF_GLOBAL.
(*got_page<mode>): Use got_page_ofst_operand instead of
local_got_operand.
* config/mips/predicates.md (const_call_insn_operand): Use
SYMBOL_GOT_DISP instead of SYMBOL_GOT_GLOBAL.
(global_got_operand): Rename to...
(got_disp_operand): ...this and use SYMBOL_GOT_DISP instead of
SYMBOL_GOT_GLOBAL.
(local_got_operand): Rename to...
(got_page_ofst_operand): ...this and use SYMBOL_GOT_PAGE_OFST instead
of SYMBOL_GOT_LOCAL.

From-SVN: r123752

17 years agomips.h (TARGET_SPLIT_CALLS): Check TARGET_CALL_CLOBBERED_GP.
Richard Sandiford [Thu, 12 Apr 2007 17:10:56 +0000 (17:10 +0000)]
mips.h (TARGET_SPLIT_CALLS): Check TARGET_CALL_CLOBBERED_GP.

gcc/
* config/mips/mips.h (TARGET_SPLIT_CALLS): Check
TARGET_CALL_CLOBBERED_GP.
(TARGET_SIBCALLS): Check TARGET_USE_GOT instead of TARGET_ABICALLS.
(TARGET_USE_GOT, TARGET_CALL_CLOBBERED_GP): New macros.
(TARGET_CALL_SAVED_GP, TARGET_USE_PIC_FN_ADDR_REG): Likewise.
(STARTING_FRAME_OFFSET): Check TARGET_CALL_CLOBBERED_GP instead
of TARGET_ABICALLS && !TARGET_NEWABI.
(MIPS_CALL): Check TARGET_USE_GOT instead of TARGET_ABICALLS.
* config/mips/mips.c (mips_load_call_address): Check
TARGET_CALL_SAVED_GP instead of TARGET_NEWABI.
(mips_global_pointer): Check TARGET_USE_GOT instead of TARGET_ABICALLS.
Check TARGET_CALL_SAVED_GP instead of TARGET_NEWABI.
(mips_save_reg_p): Check TARGET_CALL_SAVED_GP instead of
TARGET_ABICALLS && TARGET_NEWABI.
(mips_current_loadgp_style): Check TARGET_USE_GOT instead of
TARGET_ABICALLS.
(mips_expand_prologue): Check TARGET_OLDABI instead of !TARGET_NEWABI.
(mips_expand_epilogue): Check TARGET_CALL_SAVED_GP instead of
TARGET_ABICALLS && TARGET_NEWABI.
(mips_output_mi_thunk): Check TARGET_USE_GOT instead of
TARGET_ABICALLS.  Check TARGET_CALL_SAVED_GP instead of
TARGET_NEWABI.  Use TARGET_USE_PIC_FN_ADDR_REG to decide
whether indirect calls must use $25.
(mips_extra_live_on_entry): Check TARGET_GOT instead of
TARGET_ABICALLS.
* config/mips/mips.md (jal_macro): Check flag_pic and
TARGET_CALL_CLOBBERED_GP instead of TARGET_ABICALLS and TARGET_NEWABI.
(builtin_setjmp_setup, builtin_longjmp): Check TARGET_USE_GOT
instead of TARGET_ABICALLS.
(exception_receiver): Check TARGET_CALL_CLOBBERED_GP instead of
TARGET_ABICALLS && TARGET_OLDABI.
(load_call<mode>): Check TARGET_USE_GOT instead of TARGET_ABICALLS.
(sibcall): In the comment above the define_insn, mention
TARGET_USE_PIC_FN_ADDR_REG instead of TARGET_ABICALLS.
* config/mips/constraints.md (c): Check TARGET_USE_PIC_FN_ADDR_REG
instead of TARGET_ABICALLS.

From-SVN: r123751

17 years agoarith.c (gfc_arith_uplus): Rename to ...
Tobias Schlüter [Thu, 12 Apr 2007 16:53:26 +0000 (18:53 +0200)]
arith.c (gfc_arith_uplus): Rename to ...

* arith.c (gfc_arith_uplus): Rename to ...
(gfc_arith_identity): ... this.
(gfc_parentheses): New function.
(gfc_uplus): Adapt to renamed function.
* arith.h (gfc_parentheses): Add prototype.
* expr.c (gfc_copy_expr): Deal with INTRINSIC_PARENTHESES.
(simplifiy_intrinsic_op): Treat INTRINSIC_UPLUS separately from
INTRINSIC_PARENTHESES.

From-SVN: r123750

17 years agobfin.md (movhi_low2high, [...]): Delete, merge functionality into...
Bernd Schmidt [Thu, 12 Apr 2007 15:22:06 +0000 (15:22 +0000)]
bfin.md (movhi_low2high, [...]): Delete, merge functionality into...

* config/bfin/bfin.md (movhi_low2high, movhi_high2high, movhi_low2low,
movhi_high2low): Delete, merge functionality into...
(packv2hi): ... this pattern.

From-SVN: r123749

17 years agolib1funcs.asm (___umulsi3_highpart, [...]): Use a more efficient implementation.
Bernd Schmidt [Thu, 12 Apr 2007 13:39:35 +0000 (13:39 +0000)]
lib1funcs.asm (___umulsi3_highpart, [...]): Use a more efficient implementation.

* config/bfin/lib1funcs.asm (___umulsi3_highpart, __smulsi3_highpart):
Use a more efficient implementation.
* config/bfin/bfin.md (umulsi3_highpart, smulsi3_highpart): Emit
inline sequences when not optimizing for size.

From-SVN: r123748

17 years agobfin.opt (msim): New option.
Bernd Schmidt [Thu, 12 Apr 2007 13:21:01 +0000 (13:21 +0000)]
bfin.opt (msim): New option.

2007-02-11  Jie Zhang  <jie.zhang@analog.com>
* config/bfin/bfin.opt (msim): New option.
(mcpu=): New option.
* config/bfin/bfin-protos.h (enum bfin_cpu): New.
(bfin_cpu_t): Typedef of enum bfin_cpu.
(bfin_cpu_type): New declaration.
* config/bfin/elf.h (STARTFILE_SPEC): Add support for
-msim and -mcpu= options.
(LIB_SPEC): Likewise.
* config/bfin/bfin.c (bfin_cpu_type): Define.
(bfin_handle_option): Handle -mcpu= option.
* config/bfin/bfin.h (DEFAULT_CPU_TYPE): Define as BFIN_CPU_BF532.
(TARGET_CPU_CPP_BUILTINS): Define __ADSPBF531__, __ADSPBF532__,
__ADSPBF533__ or __ADSPBF537__ according to the cpu type.

From-SVN: r123747

17 years agoconfigure: Regenerate.
Kai Tietz [Thu, 12 Apr 2007 13:06:43 +0000 (13:06 +0000)]
configure: Regenerate.

libgfortran:
2007-04-11  Kai Tietz   <kai.tietz@onevision.com>

        * configure: Regenerate.

libdecnumber:
2007-04-11  Kai Tietz   <kai.tietz@onevision.com>

        * configure: Regenerate.

config:
2007-04-11  Kai Tietz  <kai.tietz@onevision.com>

* stdint.m4: Make template compatible with older cygwin
types.h, wrapping each type in a __XXX_t_defined #ifdef.

From-SVN: r123746

17 years agomd.texi (Blackfin family constraints): Document PA and PB.
Bernd Schmidt [Thu, 12 Apr 2007 13:03:17 +0000 (13:03 +0000)]
md.texi (Blackfin family constraints): Document PA and PB.

* doc/md.texi (Blackfin family constraints): Document PA and PB.
* config/bfin/bfin.h (CONST_OK_FOR_P): Handle PA and PB.
(MACFLAGS_MATCH_P): New macro.
* config/bfin/bfin.c (print_operand): Handle MACFLAG_IS_M.
(bfin_secondary_reload): Treat EVEN_AREGS and ODD_AREGS like AREGS.
* config/bfin/bfin.md (MACFLAG_IS_M): New constant.  Renumber some of
the other MACFLAG constants.
(sum_of_accumulators, lshrpdi3, ashrpdi3): New patterns.
(flag_machi): Tighten constraints.  Renumber some of the operands.
(flag_machi_acconly): Tighten constraints.  Correct operand numbers in
output template.
(flag_machi_parts_acconly): New pattern.
(flag_macinithi): Tighten constraints.  Allow any accumulator to be
used.
(flag_macinit1hi): Tighten constraints.
(flag_mul_macv2hi_parts_acconly): New pattern.

From-SVN: r123745

17 years agoconfig.gcc (*-*-vxworks*): Don't add to tm_files in this stanza.
Richard Sandiford [Thu, 12 Apr 2007 12:47:05 +0000 (12:47 +0000)]
config.gcc (*-*-vxworks*): Don't add to tm_files in this stanza.

gcc/
* config.gcc (*-*-vxworks*): Don't add to tm_files in this stanza.
(arm-wrs-vxworks, mips-wrs-vxworks, powerpc-wrs-vxworks)
(powerpc-wrs-vxworksae): Use ${tm_file}.
(i[4567]86-wrs-vxworks, i[4567]86-wrs-vxworksae): Add svr4.h
after elfos.h.  Remove i386/sysv4.h and add i386/vx-common.h.
* config/i386/vx-common.h: New file.

From-SVN: r123744

17 years agovxworks.h (VXWORKS_STARTFILE_SPEC): Use -l:crt0.o instead of crt0.o%s.
Richard Sandiford [Thu, 12 Apr 2007 12:44:31 +0000 (12:44 +0000)]
vxworks.h (VXWORKS_STARTFILE_SPEC): Use -l:crt0.o instead of crt0.o%s.

gcc/
* config/vxworks.h (VXWORKS_STARTFILE_SPEC): Use -l:crt0.o instead
of crt0.o%s.

From-SVN: r123743

17 years agos390.md ("trunctddd2"): Use TDmode for the target of ldxtr.
Andreas Krebbel [Thu, 12 Apr 2007 12:07:24 +0000 (12:07 +0000)]
s390.md ("trunctddd2"): Use TDmode for the target of ldxtr.

2007-04-12  Andreas Krebbel  <krebbel1@de.ibm.com>

* config/s390/s390.md ("trunctddd2"): Use TDmode for the target of
ldxtr.

From-SVN: r123741

17 years agore PR c++/31078 (warning: same canonical type node for different types with const...
Douglas Gregor [Thu, 12 Apr 2007 11:47:56 +0000 (11:47 +0000)]
re PR c++/31078 (warning: same canonical type node for different types with const strings)

2007-04-12  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/31078
PR c++/31103
* c-common.c (c_build_qualified_type): Set canonical type
appropriately.

2007-04-12  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/31078
* g++.dg/other/pr31078.C: New.

From-SVN: r123740

17 years agotree-pretty-print.c (dump_generic_node): Print ARRAY_REF lower bound and element...
Richard Guenther [Thu, 12 Apr 2007 09:25:04 +0000 (09:25 +0000)]
tree-pretty-print.c (dump_generic_node): Print ARRAY_REF lower bound and element size if...

2007-04-12  Richard Guenther  <rguenther@suse.de>

* tree-pretty-print.c (dump_generic_node): Print ARRAY_REF
lower bound and element size if lower bound is not zero
or either of the ARRAY_REF operands is set.

From-SVN: r123738

17 years agore PR tree-optimization/31169 (Bootstrap comparison error at revision 122821)
Richard Guenther [Thu, 12 Apr 2007 09:20:42 +0000 (09:20 +0000)]
re PR tree-optimization/31169 (Bootstrap comparison error at revision 122821)

2007-04-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/31169
* gcc.c-torture/execute/pr31169.c: New testcase.

From-SVN: r123737

17 years agore PR tree-optimization/24689 (operand_equal_p does not return true for some equivale...
Richard Guenther [Thu, 12 Apr 2007 09:15:53 +0000 (09:15 +0000)]
re PR tree-optimization/24689 (operand_equal_p does not return true for some equivalent ARRAY_REF)

2007-04-12  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/24689
PR tree-optimization/31307
* fold-const.c (operand_equal_p): Compare INTEGER_CST array
indices by value.
* gimplify.c (canonicalize_addr_expr): To be consistent with
gimplify_compound_lval only set operands two and three of
ARRAY_REFs if they are not gimple_min_invariant.  This makes
it never at this place.
* tree-ssa-ccp.c (maybe_fold_offset_to_array_ref): Likewise.

* g++.dg/tree-ssa/pr31307.C: New testcase.
* gcc.dg/tree-ssa/pr24689.c: Likewise.

From-SVN: r123736

17 years agore PR fortran/31472 (gfortran does not detect the illegal use of an access specificat...
Tobias Burnus [Thu, 12 Apr 2007 08:46:30 +0000 (10:46 +0200)]
re PR fortran/31472 (gfortran does not detect the illegal use of an access specification in a program, subroutine, or function)

2007-04-12  Tobias Burnus  <burnus@net-b.de>

PR fortran/31472
* decl.c (match_attr_spec): Allow PRIVATE/PUBLIC
attribute in type definitions.
(gfc_match_private): Allow PRIVATE statement only
in specification part of modules.
(gfc_match_public): Ditto for PUBLIC.
(gfc_match_derived_decl): Allow PRIVATE/PUBLIC attribute only in
specificification part of modules.

2007-04-12  Tobias Burnus  <burnus@net-b.de>

PR fortran/31472
* gfortran.dg/access_spec_1.f90: New test.
* gfortran.dg/access_spec_2.f90: New test.
* gfortran.dg/non_module_public.f90: Match new error message.

From-SVN: r123735

17 years agopa.c (pa_som_asm_init_sections): Ensure that cfun->machine is not null before emittin...
John David Anglin [Thu, 12 Apr 2007 00:46:13 +0000 (00:46 +0000)]
pa.c (pa_som_asm_init_sections): Ensure that cfun->machine is not null before emitting a .nsubspa directive.

* pa.c (pa_som_asm_init_sections): Ensure that cfun->machine is not
null before emitting a .nsubspa directive.

From-SVN: r123733

17 years agotree-ssa-alias.c (dump_mem_ref_stats): Do not call need_to_partition_p if there are...
Diego Novillo [Wed, 11 Apr 2007 23:46:43 +0000 (23:46 +0000)]
tree-ssa-alias.c (dump_mem_ref_stats): Do not call need_to_partition_p if there are no memory statements in the function.

* tree-ssa-alias.c (dump_mem_ref_stats): Do not call
need_to_partition_p if there are no memory statements in the
function.

From-SVN: r123732

17 years agotree-data-ref.c (chrec_steps_divide_constant_p): Removed.
Zdenek Dvorak [Wed, 11 Apr 2007 23:18:58 +0000 (01:18 +0200)]
tree-data-ref.c (chrec_steps_divide_constant_p): Removed.

* tree-data-ref.c (chrec_steps_divide_constant_p): Removed.
(gcd_of_steps_may_divide_p): New function.
(analyze_miv_subscript): Use gcd_of_steps_may_divide_p.

From-SVN: r123731

17 years agoDaily bump.
GCC Administrator [Wed, 11 Apr 2007 23:17:12 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123729

17 years agoc_locale.h: Do not include <langinfo.h> and <iconv.h>.
Paolo Carlini [Wed, 11 Apr 2007 23:10:05 +0000 (23:10 +0000)]
c_locale.h: Do not include <langinfo.h> and <iconv.h>.

2007-04-11  Paolo Carlini  <pcarlini@suse.de>

* config/locale/gnu/c_locale.h: Do not include <langinfo.h>
and <iconv.h>.
* config/locale/gnu/c++locale_internal.h: Include <langinfo.h>.

From-SVN: r123726

17 years agore PR fortran/31538 (misleading bounds check error)
Paul Thomas [Wed, 11 Apr 2007 21:48:15 +0000 (21:48 +0000)]
re PR fortran/31538 (misleading bounds check error)

2007-04-11  Paul Thomas  <pault@gcc.gnu.org>

PR testsuite/31538
* gfortran.dg/result_in_spec_1.f90: Increase dimension from 2
to 4 at line 38 to fix bounds problem.

From-SVN: r123725

17 years agoreload.c (find_reloads_toplev, [...]): Use rtx_equal_p...
Bernd Schmidt [Wed, 11 Apr 2007 19:44:07 +0000 (19:44 +0000)]
reload.c (find_reloads_toplev, [...]): Use rtx_equal_p...

* reload.c (find_reloads_toplev, find_reloads_address,
find_reloads_address_1, find_reloads_subreg_address): Use rtx_equal_p,
not a pointer equality test, to decide if we need to call
push_reg_equiv_alt_mem.

From-SVN: r123724

17 years agoargv.c: Use ANSI C declarations.
Thomas Neumann [Wed, 11 Apr 2007 19:02:45 +0000 (15:02 -0400)]
argv.c: Use ANSI C declarations.

* argv.c: Use ANSI C declarations.
* make-relative-prefix.c: Likewise.

From-SVN: r123722

17 years agotree-data-ref.c (affine_function_zero_p, [...]): New.
Sebastian Pop [Wed, 11 Apr 2007 17:10:23 +0000 (19:10 +0200)]
tree-data-ref.c (affine_function_zero_p, [...]): New.

* tree-data-ref.c (affine_function_zero_p, constant_access_functions,
insert_innermost_unit_dist_vector, add_distance_for_zero_overlaps): New.
(build_classic_dist_vector): Call add_distance_for_zero_overlaps.

From-SVN: r123721

17 years agotree-data-ref.c (add_multivariate_self_dist): Force the distance vector to be positive.
Zdenek Dvorak [Wed, 11 Apr 2007 16:45:47 +0000 (18:45 +0200)]
tree-data-ref.c (add_multivariate_self_dist): Force the distance vector to be positive.

* tree-data-ref.c (add_multivariate_self_dist): Force the distance
vector to be positive.

From-SVN: r123720

17 years agore PR tree-optimization/30735 (50% slow down due to mem-ssa merge)
Diego Novillo [Wed, 11 Apr 2007 16:14:06 +0000 (16:14 +0000)]
re PR tree-optimization/30735 (50% slow down due to mem-ssa merge)

PR 30735
PR 31090
* doc/invoke.texi: Document --params max-aliased-vops and
avg-aliased-vops.
* tree-ssa-operands.h (get_mpt_for, dump_memory_partitions,
debug_memory_partitions): Move to tree-flow.h
* params.h (AVG_ALIASED_VOPS): Define.
* tree-ssa-alias.c (struct mp_info_def): Remove.  Update all
users.
(mp_info_t): Likewise.
(get_mem_sym_stats_for): New.
(set_memory_partition): Move from tree-flow-inline.h.
(mark_non_addressable): Only clear the set of symbols for the
partition if it exists.
(dump_memory_partitions): Move from tree-ssa-operands.c
(debug_memory_partitions): Likewise.
(need_to_partition_p): New.
(dump_mem_ref_stats): New.
(debug_mem_ref_stats): New.
(dump_mem_sym_stats): New.
(debug_mem_sym_stats): New.
(update_mem_sym_stats_from_stmt): New.
(compare_mp_info_entries): New.
(mp_info_cmp): Call it.
(sort_mp_info): Change argument to a list of mem_sym_stats_t
objects.
(get_mpt_for): Move from tree-ssa-operands.c.
(find_partition_for): New.
(create_partition_for): Remove.
(estimate_vop_reduction): New.
(update_reference_counts): New.
(build_mp_info): New.
(compute_memory_partitions): Refactor.
Document new heuristic.
Call build_mp_info, update_reference_counts,
find_partition_for and estimate_vop_reduction.
(compute_may_aliases): Populate virtual operands before
calling debugging dumps.
(delete_mem_sym_stats): New.
(delete_mem_ref_stats): New.
(init_mem_ref_stats): New.
(init_alias_info): Call it.
(maybe_create_global_var): Remove alias_info argument.
Get number of call sites and number of pure/const call sites
from gimple_mem_ref_stats().
(dump_alias_info): Call dump_memory_partitions first.
(dump_points_to_info_for): Show how many times a pointer has
been dereferenced.
* opts.c (decode_options): For -O2 set --param
max-aliased-vops to 500.
For -O3 set --param max-aliased-vops to 1000 and --param
avg-aliased-vops to 3.
* fortran/options.c (gfc_init_options): Remove assignment to
MAX_ALIASED_VOPS.
* tree-flow-inline.h (gimple_mem_ref_stats): New.
* tree-dfa.c (dump_variable): Dump memory reference
statistics.
Dump NO_ALIAS* settings.
(referenced_var_lookup): Tidy.
(mem_sym_stats): New.
* tree-ssa-copy.c (may_propagate_copy): Return true if DEST
and ORIG are different SSA names for a memory partition.
* tree-ssa.c (delete_tree_ssa): Call delete_mem_ref_stats.
* tree-flow.h (struct mem_sym_stats_d): Define.
(mem_sym_stats_t): Define.
(struct mem_ref_stats_d): Define.
(struct gimple_df): Add field mem_ref_stats.
(enum noalias_state): Define.
(struct var_ann_d): Add bitfield noalias_state.
(mem_sym_stats, delete_mem_ref_stats, dump_mem_ref_stats,
debug_mem_ref_stats, debug_memory_partitions,
debug_mem_sym_stats): Declare.
* tree-ssa-structalias.c (update_alias_info): Update call
sites, pure/const call sites and asm sites in structure
returned by gimple_mem_ref_stats.
Remove local variable IS_POTENTIAL_DEREF.
Increase NUM_DEREFS if the memory expression is a potential
dereference.
Call update_mem_sym_stats_from_stmt.
If the memory references memory, call
update_mem_sym_stats_from_stmt for all the direct memory
symbol references found.
(intra_create_variable_infos): Set noalias_state field for
pointer arguments according to the value of
flag_argument_noalias.
* tree-ssa-structalias.h (struct alias_info): Remove fields
num_calls_found and num_pure_const_calls_found.
(update_mem_sym_stats_from_stmt): Declare.
* params.def (PARAM_MAX_ALIASED_VOPS): Change description.
Set default value to 100.
(PARAM_AVG_ALIASED_VOPS): Define.

From-SVN: r123719

17 years agoistream (class basic_istream<>): Remove unneded friend declarations.
Paolo Carlini [Wed, 11 Apr 2007 15:58:15 +0000 (15:58 +0000)]
istream (class basic_istream<>): Remove unneded friend declarations.

2007-04-11  Paolo Carlini  <pcarlini@suse.de>

* include/std/istream (class basic_istream<>): Remove unneded friend
declarations.

From-SVN: r123718

17 years ago1.cc: Initialize v.
Paolo Carlini [Wed, 11 Apr 2007 15:22:34 +0000 (15:22 +0000)]
1.cc: Initialize v.

2007-04-11  Paolo Carlini  <pcarlini@suse.de>

* testsuite/22_locale/num_get/get/wchar_t/1.cc: Initialize v.

From-SVN: r123717

17 years agolocale_facets.tcc (num_get<>::do_get(iter_type, ios_base&, ios_base::iostate&, void...
Paolo Carlini [Wed, 11 Apr 2007 15:19:15 +0000 (15:19 +0000)]
locale_facets.tcc (num_get<>::do_get(iter_type, ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*) > sizeof(unsigned long).

2007-04-11  Paolo Carlini  <pcarlini@suse.de>

* include/bits/locale_facets.tcc (num_get<>::do_get(iter_type,
ios_base&, ios_base::iostate&, void*&)): Fix for sizeof(void*)
> sizeof(unsigned long).

* testsuite/22_locale/num_get/get/char/1.cc: Fix void* test.
* testsuite/22_locale/num_get/get/wchar_t/1.cc: Likewise.

* testsuite/22_locale/num_put/put/char/1.cc: Tweak comment.
* testsuite/22_locale/num_put/put/wchar_t/1.cc: Likewise.

From-SVN: r123716

17 years agore PR middle-end/31530 (Incorrect folding of multiplication and sign change when...
Richard Guenther [Wed, 11 Apr 2007 11:13:54 +0000 (11:13 +0000)]
re PR middle-end/31530 (Incorrect folding of multiplication and sign change when followed by an addition)

2007-04-11  Richard Guenther  <rguenther@suse.de>

PR middle-end/31530
* simplify-rtx.c (simplify_binary_operation_1): Do not simplify
a * -b + c as c - a * b if we honor sign dependent rounding.

From-SVN: r123715

17 years agobfin-protos.h (bfin_expand_movmem): Renamed from bfin_expand_strmov.
Bernd Schmidt [Wed, 11 Apr 2007 11:06:44 +0000 (11:06 +0000)]
bfin-protos.h (bfin_expand_movmem): Renamed from bfin_expand_strmov.

* config/bfin/bfin-protos.h (bfin_expand_movmem): Renamed from
bfin_expand_strmov.
* config/bfin/bfin.c (bfin_expand_prologue, bfin_delegitimize_address,
bfin_function_ok_for_sibcall, split_load_immediate): Remove unused
variables.
(initialize_trampoline): Don't use old-style function definition.
(bfin_secondary_reload): Mark IN_P argument as unused.

From-SVN: r123714

17 years agoiosfwd: Do not include <bits/c++locale.h> and <bits/functexcept.h>.
Zack Weinberg [Wed, 11 Apr 2007 10:12:47 +0000 (10:12 +0000)]
iosfwd: Do not include <bits/c++locale.h> and <bits/functexcept.h>.

2007-04-11  Zack Weinberg  <zack@mrtock.ucsd.edu>

* include/std/iosfwd: Do not include <bits/c++locale.h> and
<bits/functexcept.h>.

From-SVN: r123713

17 years agore PR testsuite/31240 (gfortran.dg/pointer_intent_1.f90 failure at -O0)
Tobias Burnus [Wed, 11 Apr 2007 07:28:49 +0000 (09:28 +0200)]
re PR testsuite/31240 (gfortran.dg/pointer_intent_1.f90 failure at -O0)

2007-04-11  Tobias Burnus  <burnus@net-b.de>

       PR testsuite/31240
       * gfortran.dg/pointer_intent_1.f90: Fix test.

From-SVN: r123712

17 years agoclass.c (convert_to_base_statically): Fold produced tree; verify that we are not...
Jan Hubicka [Wed, 11 Apr 2007 06:18:28 +0000 (08:18 +0200)]
class.c (convert_to_base_statically): Fold produced tree; verify that we are not processing template_decl.

* cp/class.c (convert_to_base_statically): Fold produced tree; verify
that we are not processing template_decl.

From-SVN: r123711

17 years agocc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members.
Benjamin Kosnik [Wed, 11 Apr 2007 01:11:56 +0000 (01:11 +0000)]
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify namespace std members.

2007-04-10  Benjamin Kosnik  <bkoz@redhat.com>

* include/ext/pb_ds/detail/resize_policy/
cc_hash_max_collision_check_resize_trigger_imp.hpp: Qualify
namespace std members.
* include/ext/pb_ds/detail/list_update_policy/
counter_lu_metadata.hpp: Same.
* include/ext/throw_allocator.h: Same.
* include/ext/pod_char_traits.h: Same.
* include/ext/malloc_allocator.h: Same.
* libsupc++/del_op.cc: Same, simplify.

* include/bits/c++config: Adjust macro name.

* include/c_global/cstring: Alphabetize.
* include/c_global/cwctype: Same.

From-SVN: r123710

17 years agore PR tree-optimization/31343 (ICE in data-refs dependence testing)
Sebastian Pop [Wed, 11 Apr 2007 00:09:35 +0000 (02:09 +0200)]
re PR tree-optimization/31343 (ICE in data-refs dependence testing)

PR tree-optimization/31343
* tree-chrec.h (chrec_zerop): Moved before build_polynomial_chrec.
(build_polynomial_chrec): Return a scalar when the evolution is zero.
* testsuite/gcc.dg/vect/pr31343.c: New.

From-SVN: r123708

17 years agoDaily bump.
GCC Administrator [Tue, 10 Apr 2007 23:17:25 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123706

17 years ago2007-04-10 Eric Christopher <echristo@apple.com>
Eric Christopher [Tue, 10 Apr 2007 23:00:00 +0000 (23:00 +0000)]
2007-04-10  Eric Christopher  <echristo@apple.com>

        * lib/target-supports.exp
        (check_effective_target_fstack_protector): Rewrite.

From-SVN: r123702

17 years agoAdd to last commit.
Eric Christopher [Tue, 10 Apr 2007 22:44:02 +0000 (22:44 +0000)]
Add to last commit.

From-SVN: r123701

17 years agoi386.h (X87_FLOAT_MODE_P): New.
Eric Christopher [Tue, 10 Apr 2007 22:41:28 +0000 (22:41 +0000)]
i386.h (X87_FLOAT_MODE_P): New.

2007-04-10  Eric Christopher  <echristo@apple.com>

    * config/i386/i386.h (X87_FLOAT_MODE_P): New.
    * config/i386/i386.md (*cmpfp0): Use.
    (*cmpfp_u, *cmpfp_<mode>, *cmpfp_i_i387): Ditto.
    (*cmpfp_iu_387, fix_trunc<mode>_fisttp_i386_1): Ditto.
    (fix_trunc<mode>_i386_fisttp): Ditto.
    (fix_trunc<mode>_i387_fisttp_with_temp): Ditto.
    (*fix_trunc<mode>_i387_1, fix_truncdi_i387): Ditto.
    (fix_truncdi_i387_with_temp, fix_trunc<mode>_i387): Ditto.
    (fix_trunc<mode>_i387_with_temp, *fp_jcc_1_387): Ditto.
    (*fp_jcc_2_387, *fp_jcc_5_387, *fp_jcc_6_387): Ditto.
    (*fp_jcc_7_387, *fp_jcc_8<mode>_387): Ditto.
    (unnamed_splitters): Ditto.
    * config/i386/i386.c (output_fix_trunc): Assert that
    we're not being passed a TFmode operand.

From-SVN: r123700

17 years agore PR tree-optimization/31526 (ICE in alloc_aux_for_block())
Zdenek Dvorak [Tue, 10 Apr 2007 21:10:26 +0000 (23:10 +0200)]
re PR tree-optimization/31526 (ICE in alloc_aux_for_block())

PR tree-optimization/31526
* tree-inline.c (copy_cfg_body): Use last_basic_block instead of
n_basic_blocks to find newly added blocks.

From-SVN: r123699

17 years agosources.am: Regenerate.
Keith Seitz [Tue, 10 Apr 2007 17:52:59 +0000 (17:52 +0000)]
sources.am: Regenerate.

        * sources.am: Regenerate.
        * Makefile.in: Likewise.

From-SVN: r123697

17 years agocmath: Include <bits/stl_algobase.h> instead of the whole <algorithm>.
Paolo Carlini [Tue, 10 Apr 2007 15:54:46 +0000 (15:54 +0000)]
cmath: Include <bits/stl_algobase.h> instead of the whole <algorithm>.

2007-04-10  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/cmath: Include <bits/stl_algobase.h> instead of
the whole <algorithm>.

From-SVN: r123696

17 years agotype_traits (__is_function_helper): New, uses variadic templates.
Paolo Carlini [Tue, 10 Apr 2007 15:12:54 +0000 (15:12 +0000)]
type_traits (__is_function_helper): New, uses variadic templates.

2007-04-10  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits (__is_function_helper): New, uses
variadic templates.
(is_function): Forward to the latter.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_function/is_function.cc: Add test.

From-SVN: r123695

17 years agoi386.md (fix_trunc<mode>di_sse): Remove "x" from "xm" alternative.
Uros Bizjak [Tue, 10 Apr 2007 11:41:01 +0000 (13:41 +0200)]
i386.md (fix_trunc<mode>di_sse): Remove "x" from "xm" alternative.

* config/i386/i386.md (fix_trunc<mode>di_sse): Remove "x" from "xm"
alternative.
(fix_trunc<mode>si_sse): Ditto.
(*floatsisf2_mixed, *floatsisf2_sse): Ditto.
(*floatsidf2_mixed, *floatsidf2_sse): Ditto.
(*floatdisf2_mixed, *floatdisf2_sse): Ditto.
(*floatdidf2_mixed, *floatdidf2_sse): Ditto.
(floathi<mode>2): Rename from floathisf2 and floathidf2. Macroize
expander using SSEMODEF mode macro.
(floatsi<mode>2): Rename from floatsisf2 and floashidf2. Macroize
expander using SSEMODEF mode macro.
(*floathi<mode>2_i387): Rename from *floathisf2_i387 and
*floathidf2_i387. Macroize insn using X87MODEF12 mode macro.
(*floatsi<mode>2_i387): Rename from *floatsisf2_i387 and
*floatsidf2_i387. Macroize insn using X87MODEF12 mode macro.
(*floatdi<mode>2_i387): Rename from *floatdisf2_i387 and
*floatdidf2_i387. Macroize insn using X87MODEF12 mode macro.
(float<mode>xf2): Rename from floathixf2, floatsixf2 and floatdixf2.
Macroize insn using X87MODEF mode macro.

From-SVN: r123693

17 years agoPR libstdc++/28277 (partial: vstring bits)
Paolo Carlini [Tue, 10 Apr 2007 10:38:50 +0000 (10:38 +0000)]
PR libstdc++/28277 (partial: vstring bits)

2007-04-10  Paolo Carlini  <pcarlini@suse.de>

PR libstdc++/28277 (partial: vstring bits)
* include/bits/ostream_insert.h: New.
* include/Makefile.am: Add.
* include/ext/vstring.h (operator<<(basic_ostream<>&,
const __versa_string<>&): Forward to __ostream_insert.
* include/bits/basic_string.h (operator<<(basic_ostream<>&,
const string<>&)): Likewise.
* include/std/ostream (operator<<(basic_ostream<>&, _CharT),
operator<<(basic_ostream<char,>&, char), operator<<(basic_ostream<>&,
const _CharT*), operator<<(basic_ostream<char,>&, const char*)):
Likewise.
* include/ext/vstring.tcc (operator<<(basic_ostream<>&,
const __versa_string<>&)): Remove.
(class basic_ostream): Remove friend declarations.
(basic_ostream<>::_M_write(char_type, streamsize),
_M_insert(const char_type*, streamsize)): Remove.
* include/bits/ostream.tcc (_M_insert(const char_type*, streamsize)):
Remove definition.
(operator<<(basic_ostream<>&, const char*)): Use __ostream_insert.
* config/abi/pre/gnu.ver: Adjust.
* src/ostream-inst.cc: Add __ostream_insert instantiations.
* include/bits/locale_facets.h (__pad<>::_S_pad): Remove __num
parameter.
* include/bits/locale_facets.tcc (__pad<>::_S_pad): Adjust.
(num_put<>::_M_pad(_CharT, streamsize, ios_base&, _CharT*,
const _CharT*, int&)): Likewise.
* include/Makefile.in: Rebuild.
* testsuite/ext/vstring/inserters_extractors/char/28277.cc: New.
* testsuite/ext/vstring/inserters_extractors/wchar_t/28277.cc: New.

* include/ext/vstring_util.h: Do not include the whole <locale>.
* include/ext/vstring.tcc (operator>>(basic_istream<>&,
__versa_string<>&, getline(basic_istream<>&, __versa_string<>&,
_CharT)): Tweak to refer to ios_base as a base of istream; do not
refer to non-standard types of istream.
* include/bits/istream.tcc (operator>>(basic_istream<>&, _CharT*),
ws(basic_istream<>&)): Do not refer to non-standard types of istream.
* include/std/bitset (operator>>(std::basic_istream<>&, bitset<>&)):
Avoid using basic_streambuf<>*.

* include/bits/istream.tcc (operator>>(basic_istream<>&,
basic_string<>&), getline(basic_istream<>&, basic_string<>&, _CharT)):
Move...
* include/bits/basic_string.tcc: ... here; tweak to refer to ios_base
as a base of istream; do not refer to non-standard types of istream.
* include/std/string: Tweak includes.

* include/ext/type_traits.h (__is_null_pointer): Add.
* include/ext/rc_string_base.h: Use it.
* include/ext/sso_string_base.h: Likewise.
* include/bits/basic_string.tcc (__is_null_pointer): Remove, use
the above.
* include/ext/vstring_util.h (__vstring_utility<>::_S_is_null_pointer):
Remove.

From-SVN: r123692

17 years agosse.md (sse2_pinsrw): Removed.
H.J. Lu [Tue, 10 Apr 2007 01:58:03 +0000 (01:58 +0000)]
sse.md (sse2_pinsrw): Removed.

2007-04-09  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/sse.md (sse2_pinsrw): Removed.
(sse2_pextrw): Renamed to ...
(*sse2_pextrw): This.

From-SVN: r123689

17 years agoDaily bump.
GCC Administrator [Mon, 9 Apr 2007 23:17:05 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123685

17 years agore PR target/27869 ("-O -fregmove" handles SSE scalar instructions incorrectly)
Jan Hubicka [Mon, 9 Apr 2007 23:06:16 +0000 (01:06 +0200)]
re PR target/27869 ("-O -fregmove" handles SSE scalar instructions incorrectly)

PR target/27869
* config/i386/sse.md
(sse_vmaddv4sf3, sse_vmmulv4sf3): Remove '%' modifier.
(sse_vmsmaxv4sf3_finite, sse_vmsminv4sf3_finite): Remove.
(sse2_vmaddv2df3, sse2_vmmulv2df3): Remove '%' modifier.
(sse2_vmsmaxv2df3_finite, sse2_vmsminv2df3_finite): Remove.

From-SVN: r123682

17 years agointerpret-run.cc: If debugging, check if args is NULL before getting the "this" pointer.
Kyle Galloway [Mon, 9 Apr 2007 20:32:19 +0000 (20:32 +0000)]
interpret-run.cc: If debugging, check if args is NULL before getting the "this" pointer.

2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

* interpret-run.cc: If debugging, check if args is NULL before
getting the "this" pointer.

From-SVN: r123681

17 years agoArrayValue.java: New file.
Kyle Galloway [Mon, 9 Apr 2007 20:30:20 +0000 (20:30 +0000)]
ArrayValue.java: New file.

2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

* classpath/gnu/classpath/jdwp/value/ArrayValue.java: New file.
* classpath/lib/gnu/classpath/jdwp/value/ArrayValue.class: New file.
* gnu/classpath/jdwp/ArrayValue.h: New file.
* gnu/classpath/jdwp/natVMFrame.cc (getValue): Add array case.
(setValue): Ditto.

From-SVN: r123680

17 years agore PR c++/31449 ([4.1] static_cast can remove const-ness)
Mark Mitchell [Mon, 9 Apr 2007 19:45:53 +0000 (19:45 +0000)]
re PR c++/31449 ([4.1] static_cast can remove const-ness)

PR c++/31449
* class.c (build_base_path): Ensure that the converted pointer has
the same cv-qualification as the input.
PR c++/31449
* g++.dg/init/const5.C: New test.

From-SVN: r123679

17 years agosendmsg.c: Added __objc_msg_forward2...
Andrew Ruder [Mon, 9 Apr 2007 18:04:50 +0000 (18:04 +0000)]
sendmsg.c: Added __objc_msg_forward2...

2007-04-09  Andrew Ruder  <andy@aeruder.net>

        * sendmsg.c: Added __objc_msg_forward2, a hook that allows
        external libraries to provide a function that returns the real
        forwarding function based on both the selector and the receiver.
        * objc/objc-api.h: Define __objc_msg_forward2.

From-SVN: r123678

17 years agoFix ChangeLog date.
David Daney [Mon, 9 Apr 2007 17:46:17 +0000 (17:46 +0000)]
Fix ChangeLog date.

From-SVN: r123677

17 years agore PR libgcj/23758 (java::lang::ConcreteProcess::nativeSpawn unsafe)
David Daney [Mon, 9 Apr 2007 17:40:20 +0000 (17:40 +0000)]
re PR libgcj/23758 (java::lang::ConcreteProcess::nativeSpawn unsafe)

PR libgcj/23758
* java/lang/natPosixProcess.cc (nativeSpawn): Move building of
environment before the fork.
* testsuite/libjava.lang/Process_7.java: New test.
* testsuite/libjava.lang/Process_7.out: Its expected results.
* testsuite/libjava.lang/Process_7.jar: Generated file.

From-SVN: r123676

17 years agotype_traits_fwd.h (__is_union_or_class): Remove.
Paolo Carlini [Mon, 9 Apr 2007 17:07:37 +0000 (17:07 +0000)]
type_traits_fwd.h (__is_union_or_class): Remove.

2007-04-09  Paolo Carlini  <pcarlini@suse.de>

* include/tr1/type_traits_fwd.h (__is_union_or_class): Remove.
* include/tr1/type_traits (struct __in_array,
struct __is_union_or_class, struct __is_union_or_class_helper,
struct __is_empty_helper, struct __is_polymorphic_helper):
Remove.
(struct is_enum): Use __is_enum.
(struct is_union): Use __is_union.
(struct is_class): Use __is_class.
(struct is_function): Adjust.
(struct is_empty): Use __is_empty.
(struct is_polymorphic): Use __is_polymorphic.
(struct is_abstract): Use __is_abstract.
(struct has_virtual_destructor): Use __has_virtual_destructor.
(struct __is_base_of_helper): Use __is_base_of.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_union_or_class/typedefs.cc: Remove.
* testsuite/tr1/4_metaprogramming/composite_type_traits/
is_union_or_class/is_union_or_class.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_class/typedefs.cc: New.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_class/is_class.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_union/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/primary_type_categories/
is_union/is_union.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_virtual_destructor/typedefs.cc: Likewise.
* testsuite/tr1/4_metaprogramming/type_properties/
has_virtual_destructor/has_virtual_destructor.cc: Likewise.
* testsuite/util/testsuite_tr1.h (class VirtualDestructorClass): Add.
* testsuite/tr1/4_metaprogramming/type_properties/is_polymorphic/
is_polymorphic.cc: Add test.

From-SVN: r123675

17 years agofoldaddr-3.c: New file.
Jan Hubicka [Mon, 9 Apr 2007 17:00:10 +0000 (19:00 +0200)]
foldaddr-3.c: New file.

* gcc.dg/tree-ssa/foldaddr-3.c: New file.

* tree-ssa-ccp (maybe_fold_offset_to_component_ref): Recurse into
multiple fields of union.

From-SVN: r123674

17 years agotree.c (cp_tree_equal): Deal with TRAIT_EXPR.
Paolo Carlini [Mon, 9 Apr 2007 16:33:33 +0000 (16:33 +0000)]
tree.c (cp_tree_equal): Deal with TRAIT_EXPR.

2007-04-09  Paolo Carlini  <pcarlini@suse.de>

* tree.c (cp_tree_equal): Deal with TRAIT_EXPR.

From-SVN: r123673

17 years agoprims.cc (load_jvmti_agent): Add the missing `,'.
H.J. Lu [Mon, 9 Apr 2007 15:07:08 +0000 (15:07 +0000)]
prims.cc (load_jvmti_agent): Add the missing `,'.

2007-04-09  H.J. Lu  <hongjiu.lu@intel.com>

* prims.cc (load_jvmti_agent): Add the missing `,'.

From-SVN: r123672

17 years agogij.cc (main): Accept -agentlib and -agentpath options.
Kyle Galloway [Mon, 9 Apr 2007 13:24:00 +0000 (13:24 +0000)]
gij.cc (main): Accept -agentlib and -agentpath options.

2007-04-09  Kyle Galloway  <kgallowa@redhat.com>

* gij.cc (main): Accept -agentlib and -agentpath options.
* prims.cc (parse_init_args): Deal with -agentlib and -agentpath.
(load_jvmti_agent): New function.

From-SVN: r123671

17 years agocfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
Zdenek Dvorak [Mon, 9 Apr 2007 06:51:43 +0000 (08:51 +0200)]
cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.

* cfgloopmanip.c (create_preheader): Do not use loop_preheader_edge.
(create_preheaders): Check that loops are available.
(fix_loop_structure): Clean up, improve comments.
* tree-ssa-loop-manip.c (rewrite_into_loop_closed_ssa):
Check that loops are available.  Set LOOP_CLOSED_SSA to the loops
state flags.
* tree-scalar-evolution.c (scev_finalize): Clear scalar_evolution_info.
* predict.c (tree_estimate_probability): Do not call
calculate_dominance_info.  Call create_preheaders.
* tree-cfgcleanup.c (cleanup_tree_cfg_loop): Only call
rewrite_into_loop_closed_ssa if LOOP_CLOSED_SSA is set in loops state
flags.
* cfgloop.c (loop_preheader_edge): Assert that loops have preheaders.
* cfgloop.h (LOOP_CLOSED_SSA): New constant.
* tree-cfg.c (tree_split_edge): Make an assert more precise.
* tree-ssa-threadedge.c (thread_across_edge): Comment the function
arguments.

From-SVN: r123670

17 years agoDaily bump.
GCC Administrator [Sun, 8 Apr 2007 23:17:01 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123668

17 years agore PR libstdc++/31511 (/usr/include/c++/bits/cmath.tcc: no match for ternary 'operato...
Alexey Beshenov [Sun, 8 Apr 2007 22:37:56 +0000 (22:37 +0000)]
re PR libstdc++/31511 (/usr/include/c++/bits/cmath.tcc: no match for ternary 'operator?:' in '((__n % 2u) != 0u) ? __x : 1')

2007-04-08  Alexey Beshenov  <bav.272304@gmail.com>

PR libstdc++/31511
* include/c_global/cmath.tcc (__cmath_power): Use _Tp(1).
* include/c_std/cmath.tcc (__cmath_power): Likewise.

From-SVN: r123665

17 years agotree.h (maybe_fold_offset_to_component_ref): Declare.
Jan Hubicka [Sun, 8 Apr 2007 22:12:21 +0000 (00:12 +0200)]
tree.h (maybe_fold_offset_to_component_ref): Declare.

* tree.h (maybe_fold_offset_to_component_ref): Declare.
* tree-ssa-ccp.c (maybe_fold_offset_to_component_ref): Export.
* fold-const.c (fold_unary): Use it.

* gcc.dg/tree-ssa/foldaddr-2.c: New file.

From-SVN: r123664

17 years agovarasm.c (assemble_variable): Remove call to lang_hooks.decls.prepare_assemble_variable.
Andrew Pinski [Sun, 8 Apr 2007 19:30:06 +0000 (19:30 +0000)]
varasm.c (assemble_variable): Remove call to lang_hooks.decls.prepare_assemble_variable.

2007-04-08  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * varasm.c (assemble_variable): Remove call to
        lang_hooks.decls.prepare_assemble_variable.
        * langhooks-def.h (LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE): Kill.
        (LANG_HOOKS_DECLS): Remove LANG_HOOKS_PREPARE_ASSEMBLE_VARIABLE.
        * langhooks.h (lang_hooks_for_decls): Remove
        prepare_assemble_variable.

From-SVN: r123663

17 years ago* config/i386/i386.c: Use inc/dec on Core2.
Mike Stump [Sun, 8 Apr 2007 16:30:23 +0000 (16:30 +0000)]
* config/i386/i386.c: Use inc/dec on Core2.

From-SVN: r123662

17 years agolanghooks.c (lhd_tree_inlining_add_pending_fn_decls, [...]): Remove.
Steven Bosscher [Sun, 8 Apr 2007 13:14:39 +0000 (13:14 +0000)]
langhooks.c (lhd_tree_inlining_add_pending_fn_decls, [...]): Remove.

* langhooks.c (lhd_tree_inlining_add_pending_fn_decls,
lhd_tree_inlining_anon_aggr_type_p, lhd_tree_inlining_start_inlining,
lhd_tree_inlining_end_inlining): Remove.
* langhooks.h (struct lang_hooks_for_tree_inlining): Remove then
add_pending_fn_decls, anon_aggr_type_p, start_inlining, and
end_inlining hooks.
* langhooks-def.h (lhd_tree_inlining_add_pending_fn_decls,
lhd_tree_inlining_anon_aggr_type_p, lhd_tree_inlining_start_inlining,
lhd_tree_inlining_end_inlining): Remove prototypes.
(LANG_HOOKS_TREE_INLINING_ADD_PENDING_FN_DECLS,
LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P,
LANG_HOOKS_TREE_INLINING_START_INLINING,
LANG_HOOKS_TREE_INLINING_END_INLINING): Remove.

* c-objc-common.h (LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P): Do
not set it.

cp/
* cp-objcp-common.h (LANG_HOOKS_TREE_INLINING_ADD_PENDING_FN_DECLS):
Do not set it.
(LANG_HOOKS_TREE_INLINING_ANON_AGGR_TYPE_P): Do not set it.
* tree.c (cp_add_pending_fn_decls): Remove.
* cp-tree.h (cp_add_pending_fn_decls): Remove prototype.

From-SVN: r123658

17 years agore PR target/29932 (avr-gcc wrongly optimizes bit sets/resets for IO register 0x20)
Anatoly Sokolov [Sun, 8 Apr 2007 10:38:38 +0000 (14:38 +0400)]
re PR target/29932 (avr-gcc wrongly optimizes bit sets/resets for IO register 0x20)

PR target/29932
* config/avr/predicates.md (io_address_operand): Delete predicate.
(low_io_address_operand): Don't use 'mode' argument.
(higth_io_address_operand): Rename ...
(high_io_address_operand): ... to this. Don't use 'mode' argument.
* config/avr/avr.md (*sbix_branch_tmp, *sbix_branch_tmp_bit7): Adjust
for above change.

From-SVN: r123657

17 years agoDaily bump.
GCC Administrator [Sat, 7 Apr 2007 23:17:02 +0000 (23:17 +0000)]
Daily bump.

From-SVN: r123653

17 years ago2007-04-07 Daniel Berlin <dberlin@dberlin.org>
Daniel Berlin [Sat, 7 Apr 2007 23:08:23 +0000 (23:08 +0000)]
2007-04-07  Daniel Berlin  <dberlin@dberlin.org>

Revert change removing staticp.

From-SVN: r123650

17 years agore PR target/30289 (avr-gcc: builtin memset(): wrong code)
Anatoly Sokolov [Sat, 7 Apr 2007 22:00:33 +0000 (02:00 +0400)]
re PR target/30289 (avr-gcc: builtin memset(): wrong code)

PR target/30289
* config/avr/avr.md (*clrmemqi, *clrmemhi): Mark operand 4 as
earlyclobber.

From-SVN: r123647

17 years agore PR fortran/31257 (ICE in gfc_conv_expr_descriptor)
Paul Thomas [Sat, 7 Apr 2007 20:29:13 +0000 (20:29 +0000)]
re PR fortran/31257 (ICE in gfc_conv_expr_descriptor)

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31257
* intrinsic.c (add_functions): Add ref. to gfc_resolve_achar.
* intrinsic.h : Add prototype for gfc_resolve_achar.
* iresolve.c (gfc_resolve_achar): New function.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31257
* gfortran.dg/achar_4.f90: New test.

From-SVN: r123646

17 years agore PR fortran/30880 (Derived types with default value -- function with ENTRY: rejecte...
Paul Thomas [Sat, 7 Apr 2007 20:25:43 +0000 (20:25 +0000)]
re PR fortran/30880 (Derived types with default value -- function with ENTRY: rejected at compile time)

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30880
* resolve.c (resolve_fl_variable): Set flag to 2 for automatic
arrays.  Make condition for automatic array error explicit.
If a dummy, no error on an INTENT(OUT) derived type.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30880
* gfortran.dg/used_dummy_types_8.f90: New test.

From-SVN: r123645

17 years agore PR fortran/30872 (Bogus "size of variable is too large")
Paul Thomas [Sat, 7 Apr 2007 20:23:40 +0000 (20:23 +0000)]
re PR fortran/30872 (Bogus "size of variable is too large")

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30872
* expr.c (find_array_element): Correct arithmetic for rank > 1.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/30872
* gfortran.dg/parameter_array_element_1.f90: New test.

From-SVN: r123644

17 years agore PR fortran/31222 (Rejected: implicitly-typed dummys used in initialization express...
Paul Thomas [Sat, 7 Apr 2007 20:20:49 +0000 (20:20 +0000)]
re PR fortran/31222 (Rejected: implicitly-typed dummys used in initialization expressions)

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31222
* check.c (numeric_check): If an expresson has not got a type,
see if it is a symbol for which a default type applies.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31222
* gfortran.dg/default_numeric_type_1.f90: New test.

From-SVN: r123643

17 years agore PR fortran/31214 (User-defined operator using entry leads to ICE)
Paul Thomas [Sat, 7 Apr 2007 20:18:17 +0000 (20:18 +0000)]
re PR fortran/31214 (User-defined operator using entry leads to ICE)

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31214
* trans-decl.c (gfc_get_symbol_decl): Allow unreferenced use
associated symbols.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31424
* gfortran.dg/unreferenced_use_assoc_1.f90: New test.

From-SVN: r123642

17 years agore PR fortran/31293 (Implicit character and array returning functions)
Paul Thomas [Sat, 7 Apr 2007 20:13:52 +0000 (20:13 +0000)]
re PR fortran/31293 (Implicit character and array returning functions)

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31293
* symbol.c (gfc_check_function_type): New function.
* gfortran.h : Add prototype for previous.
* parse.c (parse_progunit): Call it after parsing specification
statements.

2007-04-07  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/31293
* gfortran.dg/interface_12.f90: New test.

From-SVN: r123641