gcc.git
15 years ago[multiple changes]
Andrew Haley [Thu, 4 Jun 2009 15:43:03 +0000 (15:43 +0000)]
[multiple changes]

2009-06-04  Andrew Haley  <aph@redhat.com>

* src/powerpc/ppc_closure.S: Insert licence header.
* src/powerpc/linux64_closure.S: Likewise.
* src/m68k/sysv.S: Likewise.

* src/sh64/ffi.c: Change void (*)() to void (*)(void).
* src/powerpc/ffi.c: Likewise.
* src/powerpc/ffi_darwin.c: Likewise.
* src/m32r/ffi.c: Likewise.
* src/sh64/ffi.c: Likewise.
* src/x86/ffi64.c: Likewise.
* src/alpha/ffi.c: Likewise.
* src/alpha/osf.S: Likewise.
* src/frv/ffi.c: Likewise.
* src/s390/ffi.c: Likewise.
* src/pa/ffi.c: Likewise.
* src/pa/hpux32.S: Likewise.
* src/ia64/unix.S: Likewise.
* src/ia64/ffi.c: Likewise.
* src/sparc/ffi.c: Likewise.
* src/mips/ffi.c: Likewise.
* src/sh/ffi.c: Likewise.

2008-02-15  David Daney  <ddaney@avtrex.com>

        * src/mips/ffi.c (USE__BUILTIN___CLEAR_CACHE):
        Define (conditionally), and use it to include cachectl.h.
        (ffi_prep_closure_loc): Fix cache flushing.
        * src/mips/ffitarget.h (_ABIN32, _ABI64, _ABIO32): Define.

From-SVN: r148172

15 years ago2009-06-04 Andrew Haley <aph@redhat.com>
Andrew Haley [Thu, 4 Jun 2009 15:11:12 +0000 (15:11 +0000)]
2009-06-04  Andrew Haley  <aph@redhat.com>

        include/ffi.h.in,
        src/arm/ffitarget.h,
        src/arm/ffi.c,
        src/arm/sysv.S,
        src/powerpc/ffitarget.h,
        src/closures.c,
        src/sh64/ffitarget.h,
        src/sh64/ffi.c,
        src/sh64/sysv.S,
        src/types.c,
        src/x86/ffi64.c,
        src/x86/ffitarget.h,
        src/x86/win32.S,
        src/x86/darwin.S,
        src/x86/ffi.c,
        src/x86/sysv.S,
        src/x86/unix64.S,
        src/alpha/ffitarget.h,
        src/alpha/ffi.c,
        src/alpha/osf.S,
        src/m68k/ffitarget.h,
        src/frv/ffitarget.h,
        src/frv/ffi.c,
        src/s390/ffitarget.h,
        src/s390/sysv.S,
        src/cris/ffitarget.h,
        src/pa/linux.S,
        src/pa/ffitarget.h,
        src/pa/ffi.c,
        src/raw_api.c,
        src/ia64/ffitarget.h,
        src/ia64/unix.S,
        src/ia64/ffi.c,
        src/ia64/ia64_flags.h,
        src/java_raw_api.c,
        src/debug.c,
        src/sparc/v9.S,
        src/sparc/ffitarget.h,
        src/sparc/ffi.c,
        src/sparc/v8.S,
        src/mips/ffitarget.h,
        src/mips/n32.S,
        src/mips/o32.S,
        src/mips/ffi.c,
        src/prep_cif.c,
        src/sh/ffitarget.h,
        src/sh/ffi.c,
        src/sh/sysv.S: Update license text.

From-SVN: r148171

15 years agoarm.c (thumb2_legitimate_index_p): Initialize val after checking for integers.
Ramana Radhakrishnan [Thu, 4 Jun 2009 14:59:12 +0000 (14:59 +0000)]
arm.c (thumb2_legitimate_index_p): Initialize val after checking for integers.

2009-06-04  Ramana Radhakrishnan  <ramana.radhakrishnan@arm.com>

* config/arm/arm.c (thumb2_legitimate_index_p): Initialize
val after checking for integers.

From-SVN: r148170

15 years agore PR c++/39371 (Incorrectly rejects switch((unsigned int)boolvar))
Richard Guenther [Thu, 4 Jun 2009 12:41:31 +0000 (12:41 +0000)]
re PR c++/39371 (Incorrectly rejects switch((unsigned int)boolvar))

2009-06-04  Richard Guenther  <rguenther@suse.de>

PR c++/39371
* g++.dg/torture/pr40335.C: New testcase.

From-SVN: r148167

15 years agoi386.h (X86_64_MS_REGPARM_MAX): Rename from X64_REGPARM_MAX.
Uros Bizjak [Thu, 4 Jun 2009 08:32:52 +0000 (10:32 +0200)]
i386.h (X86_64_MS_REGPARM_MAX): Rename from X64_REGPARM_MAX.

* config/i386/i386.h (X86_64_MS_REGPARM_MAX): Rename from
X64_REGPARM_MAX.
(REGPARM_MAX): Use X86_64_MS_REGPARM_MAX.
(X86_64_MS_SSE_REGPARM_MAX): Rename from X64_SSE_REGPARM_MAX.
(SSE_REGPARM_MAX): Use X86_64_MS_SSE_REGPARM_MAX.
* config/i386/i386.c: Use X86_64_MS_REGPARM_MAX instead of
X64_REGPARM_MAX.  Use X86_64_MS_SSE_REGPARM_MAX instead of
X64_SSE_REGPARM_MAX.
* config/i386/i386.md: Use X86_64_MS_SSE_REGPARM_MAX instead of
X64_SSE_REGPARM_MAX.

From-SVN: r148163

15 years agogcc.c (report_times_to_file): New.
Alexandre Oliva [Thu, 4 Jun 2009 05:53:38 +0000 (05:53 +0000)]
gcc.c (report_times_to_file): New.

* gcc.c (report_times_to_file): New.
(execute): Implement it.
(process_command): Support -time=.
* doc/invoke.texi: Document it.

From-SVN: r148162

15 years agotree-ssa-live.c (remove_unused_scope_block_p): Keep variables that have value exprs.
Alexandre Oliva [Thu, 4 Jun 2009 05:52:03 +0000 (05:52 +0000)]
tree-ssa-live.c (remove_unused_scope_block_p): Keep variables that have value exprs.

* tree-ssa-live.c (remove_unused_scope_block_p): Keep variables
that have value exprs.

From-SVN: r148161

15 years agodwarf2asm.c (dw2_force_const_mem): Defer creation of declarations for constants until...
Alexandre Oliva [Thu, 4 Jun 2009 05:50:34 +0000 (05:50 +0000)]
dwarf2asm.c (dw2_force_const_mem): Defer creation of declarations for constants until...

* dwarf2asm.c (dw2_force_const_mem): Defer creation of
declarations for constants until...
(dw2_output_indirect_constant_1): ... this point.

From-SVN: r148160

15 years agoDaily bump.
GCC Administrator [Thu, 4 Jun 2009 00:16:49 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r148159

15 years agore PR target/10242 ([ARM] subsequent use of plus and minus operators could be improved)
Richard Earnshaw [Wed, 3 Jun 2009 23:31:12 +0000 (23:31 +0000)]
re PR target/10242 ([ARM] subsequent use of plus and minus operators could be improved)

PR target/10242
* arm.md (arm_addsi3): Don't try to split an add with an
eliminable register until after reload has completed.

From-SVN: r148156

15 years agore PR libfortran/40330 (incorrect IO)
Janne Blomqvist [Wed, 3 Jun 2009 21:07:19 +0000 (00:07 +0300)]
re PR libfortran/40330 (incorrect IO)

PR libfortran/40330

Use heap memory for cached format strings.

From-SVN: r148149

15 years agogfortran.texi: Add mixed-language programming...
Tobias Burnus [Wed, 3 Jun 2009 20:32:23 +0000 (22:32 +0200)]
gfortran.texi: Add mixed-language programming...

2009-06-03  Tobias Burnus  <burnus@net-b.de>

        * gfortran.texi: Add mixed-language programming, mention
        varying string lengths, some clean up of introduction parts.
        * intrinsic.texi (instrinsic modules): Create @menu for
        * subsections.
        (ISO_C_BINDING): Support ISOCBINDING_INT_FAST128_T.
        * libgfortran.h: Comment to rember to keep gfortran.texi in
        * sync.
        * iso-c-binding.def: Support ISOCBINDING_INT_FAST128_T.

From-SVN: r148147

15 years agoansidecl.h (EXPORTED_CONST): Define.
Ian Lance Taylor [Wed, 3 Jun 2009 20:19:55 +0000 (20:19 +0000)]
ansidecl.h (EXPORTED_CONST): Define.

include/:
* ansidecl.h (EXPORTED_CONST): Define.
gcc/:
* dummy-checksum.c (executable_checksum): Use EXPORTED_CONST.
* genattrtab.c (write_length_unit_log): Likewise.
* genchecksum.c (dosum): Likewise.
* gengtype.c (write_rtx_next): Likewise.
(finish_root_table, write_roots): Likewise.
* gimple.c (gimple_ops_offset_): Likewise.
* tree-nomudflap.c (gt_ggc_r_gt_tree_mudflap_h): Likewise.
* config/arc/arc.c (arc_attribute_table): Likewise.
* config/arm/arm.c (arm_attribute_table): Likewise.
* config/avr/avr.c (avr_attribute_table): Likewise.
* config/crx/crx.c (crx_attribute_table): Likewise.
* config/m32r/m32r.c (m32r_attribute_table): Likewise.
* config/m68hc11/m68hc11.c (m68hc11_attribute_table): Likewise.
* config/mcore/mcore.c (mcore_attribute_table): Likewise.
* config/rs6000/rs6000.c (rs6000_attribute_table): Likewise.
* config/sh/sh.c (sh_attribute_table): Likewise.
* config/sparc/sparc.c (sparc_attribute_table): Likewise.
* config/spu/spu.c (spu_attribute_table): Likewise.
* config/v850/v850.c (v850_attribute_table): Likewise.

* config/alpha/alpha.c (vms_attribute_table): Make static.
* config/bfin/bfin.c (bfin_attribute_table): Likewise.
* config/h8300/h8300.c (h8300_attribute_table): Likewise.
* config/mips/mips.c (mips_attribute_table): Likewise.

* Makefile.in (dummy-checksum.o): Depend upon $(CONFIG_H) and
$(SYSTEM_H).
(cc1-checksum.o): Likewise.
gcc/cp/:
* Make-lang.in (cc1plus-checksum.o): Depend upon $(CONFIG_H) and
$(SYSTEM_H).
gcc/objc/:
* Make-lang.in (cc1obj-checksum.o): Depend upon $(CONFIG_H) and
$(SYSTEM_H).
gcc/objcp/:
* Make-lang.in (cc1objplus-checksum.o): Depend upon $(CONFIG_H)
and $(SYSTEM_H).

From-SVN: r148146

15 years agoiso-c-binding.def: Use INTMAX_TYPE instead of
Francois-Xavier Coudert [Wed, 3 Jun 2009 19:44:43 +0000 (19:44 +0000)]
iso-c-binding.def: Use INTMAX_TYPE instead of

2009-06-03  Francois-Xavier Coudert  <fxcoudert@gcc.gnu.org>
            Tobias Burnus  <burnus@net-b.de>

        * iso-c-binding.def: Use INTMAX_TYPE instead of
        * intmax_type_node.
        * trans-types.c (init_c_interop_kinds): Remove intmax_type_node.

Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r148145

15 years ago* module.c (mio_f2k_derived): Initialize cur.
Alexandre Oliva [Wed, 3 Jun 2009 19:42:57 +0000 (19:42 +0000)]
* module.c (mio_f2k_derived): Initialize cur.

From-SVN: r148144

15 years agovect.md (*movv2sf_internal): Handle big endian case.
Steve Ellcey [Wed, 3 Jun 2009 19:35:23 +0000 (19:35 +0000)]
vect.md (*movv2sf_internal): Handle big endian case.

2009-06-03  Steve Ellcey  <sje@cup.hp.com>

* config/ia64/vect.md (*movv2sf_internal): Handle big endian case.

From-SVN: r148142

15 years ago6.cc: Adjust test name.
Benjamin Kosnik [Wed, 3 Jun 2009 17:44:43 +0000 (17:44 +0000)]
6.cc: Adjust test name.

2009-06-03  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/23_containers/list/cons/6.cc: Adjust test name.

From-SVN: r148140

15 years agors6000.c (rs6000_emit_stack_reset): Return generated insn if it is changing sp.
Jakub Jelinek [Wed, 3 Jun 2009 17:28:00 +0000 (19:28 +0200)]
rs6000.c (rs6000_emit_stack_reset): Return generated insn if it is changing sp.

* config/rs6000/rs6000.c (rs6000_emit_stack_reset): Return generated
insn if it is changing sp.  Use gen_add3_insn instead of
conditionally gen_addsi3 and gen_adddi3.
(offset_below_red_zone_p): New static inline function.
(rs6000_emit_epilogue): Emit needed epilogue unwind info.
Use gen_add3_insn instead of conditionally gen_addsi3 and gen_adddi3.
* config/rs6000/ppc-asm.h: Include auto-host.h.
(CFI_STARTPROC, CFI_ENDPROC, CFI_DEF_CFA_REGISTER, CFI_OFFSET,
CFI_RESTORE): Define.
* config/rs6000/crtresxgpr.asm: Add unwind info.
* config/rs6000/crtresxfpr.asm: Likewise.
* config/rs6000/crtresgpr.asm: Likewise.
* config/rs6000/crtresfpr.asm: Likewise.
* config/rs6000/crtsavgpr.asm: Likewise.
* config/rs6000/crtsavfpr.asm: Likewise.

From-SVN: r148138

15 years agodwarf2out.c (output_cfi_directive): Pass 1 instead of 0 to second argument of DWARF2_...
Jakub Jelinek [Wed, 3 Jun 2009 17:26:48 +0000 (19:26 +0200)]
dwarf2out.c (output_cfi_directive): Pass 1 instead of 0 to second argument of DWARF2_FRAME_REG_OUT macros.

* dwarf2out.c (output_cfi_directive): Pass 1 instead of
0 to second argument of DWARF2_FRAME_REG_OUT macros.

From-SVN: r148137

15 years agoarm.c (arm_hard_regno_mode_ok): Permit values of four words or less (including TImode...
Julian Brown [Wed, 3 Jun 2009 16:01:38 +0000 (16:01 +0000)]
arm.c (arm_hard_regno_mode_ok): Permit values of four words or less (including TImode) in core registers.

* config/arm/arm.c (arm_hard_regno_mode_ok): Permit values of four
words or less (including TImode) in core registers.

From-SVN: r148135

15 years agore PR middle-end/40328 (internal compiler error: in set_ssa_val_to, at tree-ssa-sccvn...
Richard Guenther [Wed, 3 Jun 2009 15:30:52 +0000 (15:30 +0000)]
re PR middle-end/40328 (internal compiler error: in set_ssa_val_to, at tree-ssa-sccvn.c:1811)

2009-06-03  Richard Guenther  <rguenther@suse.de>

PR middle-end/40328
* fold-const.c (fold_convert): Fold the build COMPLEX_EXPR.

* gcc.dg/torture/pr40328.c: New testcase.

From-SVN: r148134

15 years agostatistics.c (statistics_counter_event): Do not record event in pass dump if its...
Andrey Belevantsev [Wed, 3 Jun 2009 14:36:47 +0000 (18:36 +0400)]
statistics.c (statistics_counter_event): Do not record event in pass dump if its number == -1.

        * statistics.c (statistics_counter_event): Do not record event
        in pass dump if its number == -1.
        (curr_statistics_hash): Add assert that we never get passes
        with static number == -1.

From-SVN: r148131

15 years agocfgexpand.c (discover_nonconstant_array_refs_r): Make only non-BLKmode arrays address...
Richard Guenther [Wed, 3 Jun 2009 14:33:31 +0000 (14:33 +0000)]
cfgexpand.c (discover_nonconstant_array_refs_r): Make only non-BLKmode arrays addressable.

2009-06-03  Richard Guenther  <rguenther@suse.de>
            Andrey Belevantsev  <abel@ispras.ru>

        * cfgexpand.c (discover_nonconstant_array_refs_r): Make only
        non-BLKmode arrays addressable.

Co-Authored-By: Andrey Belevantsev <abel@ispras.ru>
From-SVN: r148130

15 years agolinux.h (HAVE_GAS_BALIGN_AND_P2ALIGN): Move to ...
Maxim Kuvyrkov [Wed, 3 Jun 2009 12:00:32 +0000 (12:00 +0000)]
linux.h (HAVE_GAS_BALIGN_AND_P2ALIGN): Move to ...

* config/m68k/linux.h (HAVE_GAS_BALIGN_AND_P2ALIGN): Move to ...
* config/m68k/m68k.h: ... here.
* testsuite/gcc.dg/falign-labels.c (dg-options): Don't restrict for
m68k and fido.

From-SVN: r148127

15 years agore PR tree-optimization/40323 (compiling just takes forever and doesn't really process)
Martin Jambor [Wed, 3 Jun 2009 11:56:05 +0000 (13:56 +0200)]
re PR tree-optimization/40323 (compiling just takes forever and doesn't really process)

2009-06-03  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/40323
* ipa-prop.c (get_ssa_def_if_simple_copy): Break if not single
assignment.

* testsuite/g++.dg/torture/pr40323.C: New file.

From-SVN: r148126

15 years agodecl.c (gnat_to_gnu_entity): When adjusting the discriminant nodes in an extension...
Eric Botcazou [Wed, 3 Jun 2009 10:52:40 +0000 (10:52 +0000)]
decl.c (gnat_to_gnu_entity): When adjusting the discriminant nodes in an extension...

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: When
adjusting the discriminant nodes in an extension, use the full view
of the parent subtype if it is of a private kind.

From-SVN: r148125

15 years agodecl.c (gnat_to_gnu_entity): Add the _Parent field, if any, to the record before...
Eric Botcazou [Wed, 3 Jun 2009 10:39:42 +0000 (10:39 +0000)]
decl.c (gnat_to_gnu_entity): Add the _Parent field, if any, to the record before adding the other fields.

* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Record_Type>: Add the
_Parent field, if any, to the record before adding the other fields.
<E_Record_Subtype>: Put the _Controller field before the other fields
except for the _Tag or _Parent fields.
(components_to_record): Likewise.  Retrieve the _Parent field from the
record type.

From-SVN: r148124

15 years agore PR libstdc++/40296 ([C++0x] std::exception_ptr comparisons)
Paolo Carlini [Wed, 3 Jun 2009 10:37:20 +0000 (10:37 +0000)]
re PR libstdc++/40296 ([C++0x] std::exception_ptr comparisons)

2009-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40296
* libsupc++/exception_ptr.h (exception_ptr::operator!,
exception_ptr::operator __safe_bool): Only declare when
_GLIBCXX_EH_PTR_COMPAT is undefined.
* libsupc++/eh_ptr.cc: Define _GLIBCXX_EH_PTR_COMPAT before including
exception_ptr.
* testsuite/18_support/exception_ptr/40296.cc: New.
* testsuite/18_support/nested_exception/throw_with_nested.cc: Adjust.
* testsuite/18_support/nested_exception/cons.cc: Likewise.
* testsuite/18_support/nested_exception/nested_ptr.cc: Likewise.
* testsuite/18_support/exception_ptr/current_exception.cc: Likewise.

From-SVN: r148122

15 years agodecl.c (substitution_list): Rename to build_subst_list, remove unused parameter and...
Eric Botcazou [Wed, 3 Jun 2009 10:26:20 +0000 (10:26 +0000)]
decl.c (substitution_list): Rename to build_subst_list, remove unused parameter and simplify.

* gcc-interface/decl.c (substitution_list): Rename to build_subst_list,
remove unused parameter and simplify.
(gnat_to_gnu_entity) <E_Record_Type>: Do not set TYPE_FIELDS.  Factor
common predicate.  Rewrite loop for clarity.  Use GNU_TYPE directly
as context for all discriminants.  Fix formatting nits.
<E_Record_Subtype>: Add cosmetic 'break'.  Test Has_Discriminants
before Discriminant_Constraint.  Adjust for above renaming.  Do not
set GNU_TYPE more than once.
(elaborate_entity): Test Has_Discriminants on the entity and use
Implementation_Base_Type.
(components_to_record): Rename component_list to gnat_component_list.
Retrieve the _Parent field from the list.  Fix nits in comments.
Clarify logic in loop.  Pass correct arguments to create_field_decl.

From-SVN: r148121

15 years agotree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE consistently.
Richard Guenther [Wed, 3 Jun 2009 09:54:09 +0000 (09:54 +0000)]
tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE consistently.

2009-06-03  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE
consistently.

From-SVN: r148120

15 years agopredicates.md: Use REG_P...
Shujing Zhao [Wed, 3 Jun 2009 09:36:50 +0000 (09:36 +0000)]
predicates.md: Use REG_P...

2009-06-03  Shujing Zhao  <pearly.zhao@oracle.com>

* config/sh/predicates.md: Use REG_P, MEM_P, CONST_INT_P, LABEL_P,
JUMP_P, CALL_P, NONJUMP_INSN_P, NOTE_P, BARRIER_P and
JUMP_TABLE_DATA_P where applicable.
* config/sh/sh.c: Ditto.
* config/sh/sh.h: Ditto.
* config/sh/sh.md: Ditto.
* config/sh/symbian.c: Ditto.

From-SVN: r148119

15 years agopredicates.md: Use REG_P...
Shujing Zhao [Wed, 3 Jun 2009 09:36:23 +0000 (09:36 +0000)]
predicates.md: Use REG_P...

2009-06-03  Shujing Zhao  <pearly.zhao@oracle.com>

* config/sh/predicates.md: Use REG_P, MEM_P, CONST_INT_P, LABEL_P,
JUMP_P, CALL_P, NONJUMP_INSN_P, NOTE_P, BARRIER_P and
JUMP_TABLE_DATA_P where applicable.
* config/sh/sh.c: Ditto.
* config/sh/sh.h: Ditto.
* config/sh/sh.md: Ditto.
* config/sh/symbian.c: Ditto.

From-SVN: r148118

15 years agoFix nits
Eric Botcazou [Wed, 3 Jun 2009 06:51:13 +0000 (06:51 +0000)]
Fix nits

From-SVN: r148116

15 years agodriver-i386.c (describe_cache): Optimize concatenation of strings.
Uros Bizjak [Wed, 3 Jun 2009 06:33:31 +0000 (08:33 +0200)]
driver-i386.c (describe_cache): Optimize concatenation of strings.

* config/i386/driver-i386.c (describe_cache): Optimize
concatenation of strings.  Use snprintf instead of sprintf.
(host_detect_local_cpu): Ditto.  Ignore -march and -mtune for native
target when not compiling with GCC.

From-SVN: r148115

15 years agoMakefile.tpl (all): Avoid a trailing backslash.
Jerome Guitton [Wed, 3 Jun 2009 05:41:22 +0000 (05:41 +0000)]
Makefile.tpl (all): Avoid a trailing backslash.

        * Makefile.tpl (all): Avoid a trailing backslash.
        * Makefile.in: Regenerate.

Co-Authored-By: Ralf Wildenhues <Ralf.Wildenhues@gmx.de>
From-SVN: r148113

15 years ago* decl.c (maybe_deduce_size_from_array_init): Use relayout_decl.
Mark Mitchell [Wed, 3 Jun 2009 03:07:49 +0000 (03:07 +0000)]
* decl.c (maybe_deduce_size_from_array_init): Use relayout_decl.

From-SVN: r148111

15 years ago* g++.dg/init/ref15.C: Require unwrapped targets.
Mark Mitchell [Wed, 3 Jun 2009 00:50:43 +0000 (00:50 +0000)]
* g++.dg/init/ref15.C: Require unwrapped targets.

From-SVN: r148110

15 years agoDaily bump.
GCC Administrator [Wed, 3 Jun 2009 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r148109

15 years ago* config.sub, config.guess: Update from upstream sources.
Ben Elliston [Tue, 2 Jun 2009 23:00:35 +0000 (23:00 +0000)]
* config.sub, config.guess: Update from upstream sources.

From-SVN: r148105

15 years agosh.c: Revert last change.
Kaz Kojima [Tue, 2 Jun 2009 21:17:36 +0000 (21:17 +0000)]
sh.c: Revert last change.

* config/sh/sh.c: Revert last change.
(sh_expand_epilogue): Emit a blockage insn before the frame
pointer adjustment unconditionally.

From-SVN: r148103

15 years agopa-hpux.h (LINK_SPEC): Remove "%<fwhole-program".
Richard Sandiford [Tue, 2 Jun 2009 19:15:26 +0000 (19:15 +0000)]
pa-hpux.h (LINK_SPEC): Remove "%<fwhole-program".

gcc/
* config/pa/pa-hpux.h (LINK_SPEC): Remove "%<fwhole-program".
* config/pa/pa-hpux10.h (LINK_SPEC): Likewise.
* config/pa/pa-hpux11.h (LINK_SPEC): Likewise.
* gcc.c (set_collect_gcc_options): Don't add -fwhole-program
to COLLECT_GCC_OPTIONS.

From-SVN: r148099

15 years agocrossconfig.m4 (GLIBCXX_CROSSCONFIG): Handle AIX targets.
Richard Sandiford [Tue, 2 Jun 2009 19:15:03 +0000 (19:15 +0000)]
crossconfig.m4 (GLIBCXX_CROSSCONFIG): Handle AIX targets.

libstdc++-v3/
* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Handle AIX targets.
* configure: Regenerate.

From-SVN: r148098

15 years agocollect2.c (target_system_root): New variable.
Richard Sandiford [Tue, 2 Jun 2009 19:08:28 +0000 (19:08 +0000)]
collect2.c (target_system_root): New variable.

gcc/
* collect2.c (target_system_root): New variable.
(main): Handle --sysroot=.
(ignore_library): Strip the sysroot from the library path.

From-SVN: r148097

15 years agoMakefile.in (COLLECT2_OBJS): Add collect2-aix.o.
Richard Sandiford [Tue, 2 Jun 2009 19:06:56 +0000 (19:06 +0000)]
Makefile.in (COLLECT2_OBJS): Add collect2-aix.o.

gcc/
* Makefile.in (COLLECT2_OBJS): Add collect2-aix.o.
(collect2.o): Depend on collect2-aix.h.
(collect2-aix.o): New rule.
* collect2-aix.h: New file.
* collect2-aix.c: Likewise.
* collect2.c: Include collect2-aix.h.  Don't undefine
OBJECT_FORMAT_COFF if CROSS_AIX_SUPPORT is defined.
Guard native includes with #ifndef CROSS_DIRECTORY_STRUCTURE.
Use TARGET_AIX_VERSION instead of _AIX51.
* config/rs6000/aix43.h (TARGET_AIX_VERSION): Define.
* config/rs6000/aix51.h (TARGET_AIX_VERSION): Likewise.
* config/rs6000/aix52.h (TARGET_AIX_VERSION): Likewise.
* config/rs6000/aix53.h (TARGET_AIX_VERSION): Likewise.
* config/rs6000/aix61.h (TARGET_AIX_VERSION): Likewise.

From-SVN: r148096

15 years agocollect2.c (ignore_library): Avoid premature post-increment and null deference.
Richard Sandiford [Tue, 2 Jun 2009 19:04:39 +0000 (19:04 +0000)]
collect2.c (ignore_library): Avoid premature post-increment and null deference.

gcc/
* collect2.c (ignore_library): Avoid premature post-increment
and null deference.

From-SVN: r148095

15 years agoMakefile.in (libgcc.mvars): Add TARGET_SYSTEM_ROOT.
Richard Sandiford [Tue, 2 Jun 2009 19:02:49 +0000 (19:02 +0000)]
Makefile.in (libgcc.mvars): Add TARGET_SYSTEM_ROOT.

gcc/
* Makefile.in (libgcc.mvars): Add TARGET_SYSTEM_ROOT.
* config/rs6000/aix.h (LINK_SYSCALLS_SPEC): Add %R to the
!CROSS_DIRECTORY_STRUCTURE alternative and use it for
CROSS_DIRECTORY_STRUCTURE too.
(LINK_LIBG_SPEC): Likewise.
(LIB_SPEC): Add %R to sysroot paths.
* config/rs6000/aix43.h (CPP_SPEC): Add %R to sysroot paths.
(CPLUSPLUS_CPP_SPEC, LIB_SPEC): Likewise.
* config/rs6000/aix51.h: As for aix43.h.
* config/rs6000/aix52.h: Likewise.
* config/rs6000/aix53.h: Likewise.
* config/rs6000/aix61.h: Likewise.
* config/rs6000/t-aix52 (SHLIB_LINK): Add $(TARGET_SYSTEM_ROOT)
to the beginning of sysroot paths.

From-SVN: r148094

15 years agoconfigure.ac (powerpc-*-aix*, [...]): Add target-newlib to noconfdirs.
Richard Sandiford [Tue, 2 Jun 2009 19:01:35 +0000 (19:01 +0000)]
configure.ac (powerpc-*-aix*, [...]): Add target-newlib to noconfdirs.

* configure.ac (powerpc-*-aix*, rs6000-*-aix*): Add target-newlib
to noconfdirs.
* configure: Regenerate.

From-SVN: r148093

15 years agoprint_rtl (print_rtx): Don't print modes in EXPR_LISTs and INSN_LISTs that are out...
Alexandre Oliva [Tue, 2 Jun 2009 17:51:00 +0000 (17:51 +0000)]
print_rtl (print_rtx): Don't print modes in EXPR_LISTs and INSN_LISTs that are out of the REG_NOTE range.

* print_rtl (print_rtx): Don't print modes in EXPR_LISTs and
INSN_LISTs that are out of the REG_NOTE range.

From-SVN: r148091

15 years agoloop-unroll.c (struct iv_to_split): Add pointer to next.
Alexandre Oliva [Tue, 2 Jun 2009 17:47:33 +0000 (17:47 +0000)]
loop-unroll.c (struct iv_to_split): Add pointer to next.

* loop-unroll.c (struct iv_to_split): Add pointer to next.
(struct var_to_expand): Likewise.
(struct opt_info): Add head and tail for linked lists of the above.
(analyze_insn_to_expand_var): Initialize next.
(analyze_iv_to_split_insn): Likewise.
(analyze_insns_in_loop): Create linked lists.
(allocate_basic_variable): Simplify for use without hash table.
(insert_var_expansion_initialization): Likewise, make it type-safer.
(combine_var_copies_in_loop_exit): Likewise.
(apply_opt_in_copies): Walk lists rather than hash tables.
(release_var_copies): Simplified and inlined by hand into...
(free_opt_info): ... this function.

From-SVN: r148090

15 years agore PR c++/40308 (Brace initialization fails for member initializers in constructor...
Jason Merrill [Tue, 2 Jun 2009 17:02:38 +0000 (13:02 -0400)]
re PR c++/40308 (Brace initialization fails for member initializers in constructor for class templates)

PR c++/40308
PR c++/40311
* typeck.c (cp_build_modify_expr): Always pass init-lists to the
conversion code.
* call.c (implicit_conversion): Allow init-list conversion to scalar
during direct-initialization, too.  Mark the conversion bad if it
has too many levels of braces.
(convert_like_real): And give a helpful error.

From-SVN: r148089

15 years agore PR c++/40306 (ICE when using auto to declare a local copy inside a member function)
Jason Merrill [Tue, 2 Jun 2009 17:02:27 +0000 (13:02 -0400)]
re PR c++/40306 (ICE when using auto to declare a local copy inside a member function)

PR c++/40306
PR c++/40307
* decl.c (cp_finish_decl): Handle auto deduction from ().
* typeck.c (build_x_indirect_ref): Handle dereferencing an operand
with dependent type that is known to be a pointer.

From-SVN: r148088

15 years agotree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE for field decls.
Richard Guenther [Tue, 2 Jun 2009 15:33:29 +0000 (15:33 +0000)]
tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE for field decls.

2009-06-02  Richard Guenther  <rguenther@suse.de>

* tree-ssa-sccvn.c (copy_reference_ops_from_ref): Use DECL_SIZE
for field decls.

From-SVN: r148086

15 years ago* gcc-interface/Make-lang.in: Fix formatting.
Eric Botcazou [Tue, 2 Jun 2009 11:16:09 +0000 (11:16 +0000)]
* gcc-interface/Make-lang.in: Fix formatting.

From-SVN: r148083

15 years agore PR libstdc++/40299 (Rope + C++0x mode = build error)
Paolo Carlini [Tue, 2 Jun 2009 09:06:31 +0000 (09:06 +0000)]
re PR libstdc++/40299 (Rope + C++0x mode = build error)

2009-06-03  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/40299
* include/ext/memory: Fully qualify calls with __gnu_cxx.
* testsuite/ext/rope/40299.cc: New.

From-SVN: r148081

15 years agoMakefile.tpl ([+compare-target+]): Compare all stage directories, rather than just...
Alexandre Oliva [Tue, 2 Jun 2009 08:12:04 +0000 (08:12 +0000)]
Makefile.tpl ([+compare-target+]): Compare all stage directories, rather than just gcc.

* Makefile.tpl ([+compare-target+]): Compare all stage
directories, rather than just gcc.
* Makefile.in: Rebuilt.

From-SVN: r148080

15 years ago* compare-debug: Don't fail just because of .eh_frame differences.
Alexandre Oliva [Tue, 2 Jun 2009 08:11:31 +0000 (08:11 +0000)]
* compare-debug: Don't fail just because of .eh_frame differences.

From-SVN: r148079

15 years agocfgexpand.c (gimple_expand_cfg): Discard the source location only for builtins that...
Alexandre Oliva [Tue, 2 Jun 2009 08:10:53 +0000 (08:10 +0000)]
cfgexpand.c (gimple_expand_cfg): Discard the source location only for builtins that are not overridden.

* cfgexpand.c (gimple_expand_cfg): Discard the source location
only for builtins that are not overridden.

From-SVN: r148078

15 years agogengtype.c (adjust_field_rtx_def): Add NOTE_INSN_DELETED_LABEL's label string.
Alexandre Oliva [Tue, 2 Jun 2009 08:09:27 +0000 (08:09 +0000)]
gengtype.c (adjust_field_rtx_def): Add NOTE_INSN_DELETED_LABEL's label string.

* gengtype.c (adjust_field_rtx_def): Add NOTE_INSN_DELETED_LABEL's
label string.

From-SVN: r148077

15 years ago* df-core.c (df_ref_debug): Honor -fdump-noaddr.
Alexandre Oliva [Tue, 2 Jun 2009 08:08:57 +0000 (08:08 +0000)]
* df-core.c (df_ref_debug): Honor -fdump-noaddr.

From-SVN: r148076

15 years ago* combine.c (move_deaths): Compare LUIDs within the same BB only.
Alexandre Oliva [Tue, 2 Jun 2009 08:08:13 +0000 (08:08 +0000)]
* combine.c (move_deaths): Compare LUIDs within the same BB only.

From-SVN: r148075

15 years agocommon.opt (fdump-unnumbered-links): New.
Alexandre Oliva [Tue, 2 Jun 2009 08:07:13 +0000 (08:07 +0000)]
common.opt (fdump-unnumbered-links): New.

* common.opt (fdump-unnumbered-links): New.
* doc/invoke.texi (-fdump-unnumbered-links): Document it.
* print-rtl.c (flag_dump_unnumbered_links): New.
(print_rtx): Test it.

From-SVN: r148074

15 years agoarm.c (arm_get_frame_offsets): Prefer using r3 for padding a push/pop multiple to...
Richard Earnshaw [Tue, 2 Jun 2009 07:47:09 +0000 (07:47 +0000)]
arm.c (arm_get_frame_offsets): Prefer using r3 for padding a push/pop multiple to 8-byte alignment.

* arm.c (arm_get_frame_offsets): Prefer using r3 for padding a
push/pop multiple to 8-byte alignment.

From-SVN: r148072

15 years agoFix nits
Eric Botcazou [Tue, 2 Jun 2009 07:21:27 +0000 (07:21 +0000)]
Fix nits

From-SVN: r148071

15 years agore PR c++/38089 (g++ crash on invalid code)
Simon Martin [Tue, 2 Jun 2009 05:37:17 +0000 (05:37 +0000)]
re PR c++/38089 (g++ crash on invalid code)

gcc/cp/

2009-06-02  Simon Martin  <simartin@users.sourceforge.net>

PR c++/38089
* pt.c (register_specialization): Properly setup DECL_CONTEXT for
specializations in an invalid namespace.

gcc/testsuite/

2009-06-02  Simon Martin  <simartin@users.sourceforge.net>

PR c++/38089
* g++.dg/template/spec36.C: New test.

From-SVN: r148069

15 years agoi386.c (queued_cfa_restores): New static variable.
Jakub Jelinek [Mon, 1 Jun 2009 19:49:57 +0000 (21:49 +0200)]
i386.c (queued_cfa_restores): New static variable.

* config/i386/i386.c (queued_cfa_restores): New static variable.
(ix86_add_cfa_restore_note, ix86_add_queued_cfa_restore_notes): New
functions.
(pro_epilogue_adjust_stack): Call ix86_add_queued_cfa_restore_notes.
(ix86_emit_restore_reg_using_pop): Add RED_OFFSET argument.
Set RTX_FRAME_RELATED_P immediately after adding a REG_CFA_* note.
Call ix86_add_cfa_restore_note instead of adding REG_CFA_OFFSET
note unconditionally.
(ix86_emit_restore_regs_using_mov): Likewise.
(ix86_emit_restore_sse_regs_using_mov): Likewise.
(ix86_emit_restore_regs_using_pop): Add RED_OFFSET argument, pass
it through to ix86_emit_restore_reg_using_pop.
(ix86_emit_leave): Add RED_OFFSET argument.  Call
ix86_add_queued_cfa_restore_notes.  Call ix86_add_cfa_restore_note
instead of adding REG_CFA_OFFSET note unconditionally.
(ix86_expand_epilogue): Compute RED_OFFSET, pass it down to
the above functions.  Call ix86_add_queued_cfa_restore_notes when
needed.

From-SVN: r148067

15 years agodwarf2out.c (dwarf2out_cfi_label): Add FORCE argument...
Jakub Jelinek [Mon, 1 Jun 2009 19:43:24 +0000 (21:43 +0200)]
dwarf2out.c (dwarf2out_cfi_label): Add FORCE argument...

* dwarf2out.c (dwarf2out_cfi_label): Add FORCE argument, if true,
force output of the label even for dwarf2out_do_cfi_asm.
(add_fde_cfi): If -g2 and above and cfi might change CFA,
force creation of CFI label and chain DW_CFA_set_loc jumping to it
for convert_cfa_to_fb_loc_list.  Adjust other dwarf2out_cfi_label
caller.
(dwarf2out_stack_adjust, dwarf2out_frame_debug,
dwarf2out_begin_epilogue, dwarf2out_frame_debug_restore_state): Adjust
dwarf2out_cfi_label callers.
* tree.h (dwarf2out_cfi_label): Adjust prototype.
* config/arm/arm.c (thumb_pushpop, thumb1_output_function_prologue):
Adjust dwarf2out_cfi_label callers.
* config/vax/vax.c (vax_output_function_prologue): Likewise.

From-SVN: r148066

15 years agoi386.h (struct machine_cfa_state, [...]): Guard with ifndef USED_FOR_TARGET instead...
Jakub Jelinek [Mon, 1 Jun 2009 19:41:43 +0000 (21:41 +0200)]
i386.h (struct machine_cfa_state, [...]): Guard with ifndef USED_FOR_TARGET instead of not IN_LIBGCC2 and not in...

* config/i386/i386.h (struct machine_cfa_state,
struct machine_function): Guard with ifndef USED_FOR_TARGET
instead of not IN_LIBGCC2 and not in IN_TARGET_LIBS.

From-SVN: r148065

15 years agoconfigure.ac: Support gold for target arm*-*-*.
Doug Kwan [Mon, 1 Jun 2009 19:41:08 +0000 (19:41 +0000)]
configure.ac: Support gold for target arm*-*-*.

2009-06-01  Doug Kwan  <dougkwan@google.com>

* configure.ac: Support gold for target arm*-*-*.
* configure: Regenerate.

From-SVN: r148064

15 years agore PR other/40024 (trunk/gcc-4.3/gcc: * emutls.c (emutls_destroy): Don' t fall out...
Jakub Jelinek [Mon, 1 Jun 2009 18:03:26 +0000 (20:03 +0200)]
re PR other/40024 (trunk/gcc-4.3/gcc: * emutls.c (emutls_destroy): Don' t fall out of the array bound.)

PR other/40024
* emutls.c (__emutls_get_address): Change arr->size to mean number
of allocated arr->data entries instead of # of slots + 1.

From-SVN: r148061

15 years agore PR middle-end/40316 (Revision 147995 breaks gcc.target/i386/lea.c)
Jakub Jelinek [Mon, 1 Jun 2009 17:13:04 +0000 (19:13 +0200)]
re PR middle-end/40316 (Revision 147995 breaks gcc.target/i386/lea.c)

PR middle-end/40316
* recog.c (peep2_reinit_state): New function.
(peephole2_init_state): Use it at the end of a basic block and also
when seeing a RTX_FRAME_RELATED_P insn.

From-SVN: r148055

15 years agoia64.md (floatdirf2, [...]): New.
Steve Ellcey [Mon, 1 Jun 2009 16:46:42 +0000 (16:46 +0000)]
ia64.md (floatdirf2, [...]): New.

2009-06-01  Steve Ellcey  <sje@cup.hp.com>

* ia64.md (floatdirf2, fix_truncrfdi, floatunsdirf,
fixuns_truncrfdi2): New.
(fix_truncxfdi2_alts, fixuns_truncxfdi2_alts,
*nmaddsf4_alts, *nmadddf4_alts, *nmadddf4_truncsf_alts,
*mulxf3_alts, *mulxf3_truncsf_alts, *mulxf3_truncdf_alts,
*maddxf4_alts, *maddxf4_alts_truncsf, *maddxf4_alts_truncdf,
*nmaddxf4_alts, *nmaddxf4_truncsf_alts, *nmaddxf4_truncdf_alts,
*recip_approx): Remove.
(divsi3 modsi3, udivsi3, umodsi3, divsi3_internal, divdi3,
moddi3, udivdi3, umoddi3, divdi3_internal_lat, divdi3_internal_thr,
divsf3, sqrtsf2, divdf3, sqrtdf2, divxf3, sqrtxf2): Modify and
move to div.md.
* div.md (fix_truncrfdi2_alts, fixuns_truncrfdi2_alt,
setf_exp_rf): New.

From-SVN: r148054

15 years agoattribs.c (register_attribute): Use CONST_CAST.
Ian Lance Taylor [Mon, 1 Jun 2009 16:35:01 +0000 (16:35 +0000)]
attribs.c (register_attribute): Use CONST_CAST.

./: * attribs.c (register_attribute): Use CONST_CAST.
* collect2.c (main): Use CONST_CAST2.
(scan_prog_file): Likewise.
* gcc.c (process_command, main): Likewise.
* toplev.c (toplev_main): Likewise.

* c-typeck.c (handle_warn_cast_qual): New static function,
partially broken out of build_c_cast.
(build_c_cast): Call handle_warn_cast_qual.
* doc/invoke.texi (Warning Options): Document new effect of
-Wcast-qual.
./java: * jcf-io.c (find_class): Use CONST_CAST.
./testsuite: * gcc.dg/cast-qual-3.c: New testcase.
* g++.dg/warn/Wcast-qual2.C: New testcase.

From-SVN: r148053

15 years agodiagnostic.c (diagnostic_build_prefix): Always print columns.
Aldy Hernandez [Mon, 1 Jun 2009 16:09:33 +0000 (16:09 +0000)]
diagnostic.c (diagnostic_build_prefix): Always print columns.

gcc/
* diagnostic.c (diagnostic_build_prefix): Always print columns.
(diagnostic_report_current_module): Print columns.
* common.opt (flag_show_column): Enable by default.
gcc/testsuite/
* lib/gcc-dg.exp (dg-bogus): Override dg-bogus.
(process-message): Expect column numbers.
* gcc.dg/va-arg-2.c: Use line 0 to indicate no column.
* gcc.dg/pch/counter-2.c: Same.
* gcc.dg/pch/valid-2.c: Same.
* gcc.dg/pch/warn-1.c: Same.
* gcc.dg/pch/valid-1.c: Same.
* gcc.dg/cpp/include2a.c: Handle lack of columns.
* gcc.dg/cpp/syshdr.c: Same.
* gcc.dg/cpp/19940712-1.c: Same.
* gcc.dg/cpp/missing-header-1.c: Same.
* gcc.dg/cpp/unc4.c: Remove -fno-show-column.
* gcc.dg/cpp/tr-warn3.c: Same.
* gcc.dg/cpp/pr29612-2.c: Same.
* gcc.dg/cpp/tr-warn4.c: Same.
* gcc.dg/cpp/Wtrigraphs.c: Same.
* gcc.dg/cpp/poison.c: Same.
* gcc.dg/cpp/arith-3.c: Same.
* gcc.dg/cpp/sysmac2.c: Same.
* gcc.dg/cpp/cpp.exp: Same.
* gcc.dg/cpp/tr-warn5.c: Same.
* gcc.dg/cpp/include2.c: Same.
* gcc.dg/cpp/Wmissingdirs.c: Same.
* gcc.dg/cpp/Wmissingdirs.c: Same.
* gcc.dg/cpp/tr-warn6.c: Same.
* gcc.dg/cpp/Wtrigraphs-2.c: Same.
* gcc.dg/cpp/macspace1.c: Same.
* gcc.dg/cpp/escape-2.c: Same.
* gcc.dg/cpp/assert2.c: Same.
* gcc.dg/cpp/undef2.c: Same.
* gcc.dg/cpp/macspace2.c: Same.
* gcc.dg/cpp/tr-warn1.c: Same.
* gcc.dg/cpp/extratokens2.c: Same.
* gcc.dg/cpp/strify2.c: Same.
* gcc.dg/cpp/Wsignprom.c: Same.
* gcc.dg/cpp/redef2.c: Same.
* gcc.dg/cpp/trad/trad.exp: Same.
* gcc.dg/cpp/arith-1.c: Same.
* gcc.dg/cpp/extratokens.c: Same.
* gcc.dg/cpp/if-mpar.c: Same.
gcc/cp/
* error.c (print_instantiation_partial_context): Print column
numbers.
libcpp/
* include/line-map.h (LAST_SOURCE_COLUMN): New.

From-SVN: r148052

15 years agocpp-id-data.h: Add extern "C".
Ian Lance Taylor [Mon, 1 Jun 2009 15:37:03 +0000 (15:37 +0000)]
cpp-id-data.h: Add extern "C".

* include/cpp-id-data.h: Add extern "C".
* include/line-map.h: Likewise.
* include/mkdeps.h: Likewise.
* include/symtab.h: Likewise.
* internal.h: Likewise.

From-SVN: r148051

15 years agoutils.c (convert): When converting to the packable version of the type...
Olivier Hainque [Mon, 1 Jun 2009 15:27:59 +0000 (15:27 +0000)]
utils.c (convert): When converting to the packable version of the type...

ada/
* gcc-interface/utils.c (convert) <CONSTRUCTOR case>: When converting
to the packable version of the type, clear TREE_STATIC/TREE_CONSTANT
on the result if at least one of the input fields couldn't be output
as a static constant any more.

testsuite/
* gnat.dg/nested_float_packed.ads: New test.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r148049

15 years agoAdd missing blanks after dots in entry.
Olivier Hainque [Mon, 1 Jun 2009 15:25:19 +0000 (15:25 +0000)]
Add missing blanks after dots in entry.

From-SVN: r148048

15 years agoalias.c (find_base_term): Check for NULL term before returning.
Luis Machado [Mon, 1 Jun 2009 15:20:20 +0000 (15:20 +0000)]
alias.c (find_base_term): Check for NULL term before returning.

2009-06-01  Luis Machado  <luisgpm@br.ibm.com>

* alias.c (find_base_term): Check for NULL term before returning.

From-SVN: r148047

15 years agoRevert due to PR40320:
Maxim Kuvyrkov [Mon, 1 Jun 2009 14:45:18 +0000 (14:45 +0000)]
Revert due to PR40320:

2009-06-01  Maxim Kuvyrkov  <maxim@codesourcery.com>
* calls.c (emit_library_call_value_1): Don't force_operand for move
and push insns.

From-SVN: r148046

15 years agotree.h (CONSTRUCTOR_BITFIELD_P): True if NODE...
Olivier Hainque [Mon, 1 Jun 2009 14:42:56 +0000 (14:42 +0000)]
tree.h (CONSTRUCTOR_BITFIELD_P): True if NODE...

* tree.h (CONSTRUCTOR_BITFIELD_P): True if NODE, a FIELD_DECL, is
to be processed as a bitfield for constructor output purposes.
* output.h (initializer_constant_valid_for_bitfield_p): Declare
new function.
* varasm.c (oc_local_state): New type, output_constructor
local state to support communication with helpers.
(oc_outer_state): New type, output_constructor outer state of
relevance in recursive calls.
(output_constructor_array_range): New output_constructor helper,
extracted code for an array range element.
(output_constructor_regular_field): New output_constructor helper,
extracted code for an element that is not a bitfield.
(output_constructor_bitfield): New output_constructor helper,
extracted code for a bitfield element.  Accept an OUTER state
argument for recursive processing.  Recurse on record or array
CONSTRUCTOR values, possibly past noop conversions.
(initializer_constant_valid_for_bitfield_p): New predicate. Whether
VALUE is a valid constant-valued expression for use in a static
bit-field initializer.
(output_constructor): Rework to use helpers. Accept and honor an
OUTER state argument for recursive calls. Return total size. Be
prepared for nested constructors initializing bitfields.
(output_constant): Feed OUTER in calls to output_constructor.

ada/
* gcc-interface/utils2.c (gnat_build_constructor): Factor
out code. Use initializer_constant_valid_for_bitfield_p and
CONSTRUCTOR_BITFIELD_P for bit-fields.

testsuite/
* gnat.dg/oconst[1-6].ad[bs]: New tests. Also support for ...
* gnat.dg/test_oconst.adb: New test.

Co-Authored-By: Eric Botcazou <ebotcazou@adacore.com>
From-SVN: r148045

15 years agocalls.c (emit_library_call_value_1): Don't force_operand for move and push insns.
Maxim Kuvyrkov [Mon, 1 Jun 2009 11:18:29 +0000 (11:18 +0000)]
calls.c (emit_library_call_value_1): Don't force_operand for move and push insns.

* calls.c (emit_library_call_value_1): Don't force_operand for move
and push insns.

From-SVN: r148039

15 years ago* doc/invoke.texi (IA-64 Options): Fix typo.
Nick Clifton [Mon, 1 Jun 2009 09:01:10 +0000 (09:01 +0000)]
* doc/invoke.texi (IA-64 Options): Fix typo.

From-SVN: r148037

15 years agore PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop")
Ira Rosen [Mon, 1 Jun 2009 08:15:01 +0000 (08:15 +0000)]
re PR tree-optimization/39129 (The meaning of 'BB' in "too many BBs in loop")

PR tree-optimization/39129
* tree-vect-loop-manip.c (conservative_cost_threshold): Change the
printed message.
(vect_do_peeling_for_loop_bound): Use
LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT and
LOOP_REQUIRES_VERSIONING_FOR_ALIAS macros.
(vect_loop_versioning): Likewise.
(vect_create_cond_for_alias_checks): Fix indentation.
* tree-vectorizer.h (struct _loop_vec_info): Fix indentation of the
macros.
(LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT): Define.
(LOOP_REQUIRES_VERSIONING_FOR_ALIAS): Likewise.
* tree-vect-loop.c (vect_analyze_loop_form): Change "too many BBs" to
"control flow in loop".
(vect_estimate_min_profitable_iters): Use
LOOP_REQUIRES_VERSIONING_FOR_ALIGNMENT and
LOOP_REQUIRES_VERSIONING_FOR_ALIAS macros.
* tree-vect-data-refs.c (vect_enhance_data_refs_alignment): Likewise.
(vect_create_data_ref_ptr): Don't mention array dimension in printing.
* tree-vect-stmts.c (vectorizable_store): Replace the check that the
statement belongs to a group of strided accesses with the exact code
check.
(vectorizable_load): Likewise.
* tree-vect-slp.c (vect_analyze_slp_instance): Spell out "basic block".
(vect_slp_analyze_bb, vect_slp_transform_bb): Likewise.

From-SVN: r148036

15 years agore PR fortran/40309 (gfortran does not support static c/d-tors.)
Tobias Burnus [Mon, 1 Jun 2009 07:00:35 +0000 (09:00 +0200)]
re PR fortran/40309 (gfortran does not support static c/d-tors.)

2009-06-01  Tobias Burnus  <burnus@net-b.de>

       PR fortran/40309
       * trans-decl.c (gfc_sym_identifier): Use "MAIN__" for PROGRAM "main".
       (create_main_function): Set main_identifier_node.

From-SVN: r148035

15 years agoansidecl.h: Add extern "C" when compiling with C++.
Ian Lance Taylor [Mon, 1 Jun 2009 05:47:20 +0000 (05:47 +0000)]
ansidecl.h: Add extern "C" when compiling with C++.

* ansidecl.h: Add extern "C" when compiling with C++.  Treat C++
the way we treat an ISO C compiler.  Don't define inline as a
macdro when compiling with C++.
* dyn-string.h: Add header guard DYN_STRING_H.  Add extern "C"
when compiling with C++.
* fibheap.h: Add extern "C" when compiling with C++.

From-SVN: r148032

15 years agodecContext.h: Add extern "C" if compiling with C++.
Ian Lance Taylor [Mon, 1 Jun 2009 05:28:42 +0000 (05:28 +0000)]
decContext.h: Add extern "C" if compiling with C++.

* decContext.h: Add extern "C" if compiling with C++.
* decDPD.h: Likewise.
* decNumber.h: Likewise.
* dpd/decimal32.h: Likewise.
* dpd/decimal64.h: Likewise.
* dpd/decimal128.h: Likewise.

From-SVN: r148030

15 years agofreebsd-stdint.h: New file.
Gerald Pfeifer [Mon, 1 Jun 2009 03:03:37 +0000 (03:03 +0000)]
freebsd-stdint.h: New file.

* config/freebsd-stdint.h: New file.
* config.gcc (*-*-freebsd): Set use_gcc_stdint=wrap.
Add freebsd-stdint.h to tm_file.

From-SVN: r148027

15 years agothumb2.md (thumb2_zero_extendhidi2): New insn and split.
Richard Earnshaw [Mon, 1 Jun 2009 00:23:52 +0000 (00:23 +0000)]
thumb2.md (thumb2_zero_extendhidi2): New insn and split.

* arm/thumb2.md (thumb2_zero_extendhidi2): New insn and split.
(thumb2_extendhidi2): Likewise.

From-SVN: r148026

15 years agoDaily bump.
GCC Administrator [Mon, 1 Jun 2009 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r148025

15 years agoregstat.c (regstat_n_sets_and_refs): Remove duplicate definition.
Ian Lance Taylor [Sun, 31 May 2009 23:11:51 +0000 (23:11 +0000)]
regstat.c (regstat_n_sets_and_refs): Remove duplicate definition.

* regstat.c (regstat_n_sets_and_refs): Remove duplicate
definition.

From-SVN: r148021

15 years agoMakefile.in (except.o): Depent upon gt-except.h, not gt-$(EXCEPT_H).
Ian Lance Taylor [Sun, 31 May 2009 22:34:00 +0000 (22:34 +0000)]
Makefile.in (except.o): Depent upon gt-except.h, not gt-$(EXCEPT_H).

* Makefile.in (except.o): Depent upon gt-except.h, not
gt-$(EXCEPT_H).
(ipa-cp.o): Depend upon $(FIBHEAP_H) and $(PARAMS_H).
(ipa-reference.o): Depend upon gt-ipa-reference.h.

From-SVN: r148020

15 years agotree-pretty-print.c (print_call_name): Take the callee, not the call itself.
Jason Merrill [Sun, 31 May 2009 22:01:38 +0000 (18:01 -0400)]
tree-pretty-print.c (print_call_name): Take the callee, not the call itself.

* tree-pretty-print.c (print_call_name): Take the callee, not the
call itself.  Make non-static.  Use dump_function_name for
functions.
(dump_generic_node): Adjust.
* diagnostic.h: Declare print_call_name.
* gimple-pretty-print.c (dump_gimple_call): Use it.

From-SVN: r148019

15 years agosh.md (ashldi3_std): New define_expand.
Kaz Kojima [Sun, 31 May 2009 21:48:01 +0000 (21:48 +0000)]
sh.md (ashldi3_std): New define_expand.

* config/sh/sh.md (ashldi3_std): New define_expand.
(ashldi3): Use it.

From-SVN: r148018

15 years agore PR target/40313 (SH: ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2689)
Kaz Kojima [Sun, 31 May 2009 21:45:18 +0000 (21:45 +0000)]
re PR target/40313 (SH: ICE in dwarf2out_begin_epilogue, at dwarf2out.c:2689)

PR target/40313
* config/sh/sh.c: Include debug.h.
(sh_expand_epilogue): Emit a blockage insn before the frame
pointer adjustment also when dwarf2out_do_frame returns true.

From-SVN: r148017

15 years agoggcplug.c: moved comment.
Basile Starynkevitch [Sun, 31 May 2009 14:59:41 +0000 (14:59 +0000)]
ggcplug.c: moved comment.

2009-05-31  Basile Starynkevitch  <basile@starynkevitch.net>

* gcc/testsuite/gcc.dg/plugin/ggcplug.c: moved comment.
(plugin_init): fixed typo, declared i, returned 0 at end.

[also moved an entry from gcc/ChangeLog to gcc/testsuite/ChangeLog]

From-SVN: r148015

15 years agothumb2.md (thumb2_extendsidi2): Add a split sub-pattern.
Richard Earnshaw [Sun, 31 May 2009 14:09:12 +0000 (14:09 +0000)]
thumb2.md (thumb2_extendsidi2): Add a split sub-pattern.

* arm/thumb2.md (thumb2_extendsidi2): Add a split sub-pattern.
(thumb2_extendqidi2): New pattern.

From-SVN: r148014

15 years agotree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't mark phis for...
Ira Rosen [Sun, 31 May 2009 10:43:38 +0000 (10:43 +0000)]
tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't mark phis for renaming.

* tree-vect-loop-manip.c (slpeel_update_phi_nodes_for_guard1): Don't
mark phis for renaming.
* tree-vectorizer.c (vect_memsyms_to_rename): Remove.
(vectorize_loops): Don't allocate and free vect_memsyms_to_rename.
Call mark_sym_for_renaming.
* tree-vectorizer.h (vect_memsyms_to_rename): Remove.
* tree-vect-loop.c (vect_transform_loop): Remove vect_memsyms_to_rename
initialization and a call to mark_set_for_renaming.

From-SVN: r148013

15 years agore PR middle-end/40304 (Revision 147995 breaks stack unwind)
Jakub Jelinek [Sun, 31 May 2009 09:36:17 +0000 (11:36 +0200)]
re PR middle-end/40304 (Revision 147995 breaks stack unwind)

PR middle-end/40304
* config/i386/i386.c (pro_epilogue_adjust_stack): Mark insns
frame related even if !set_cfa && style < 0.

From-SVN: r148011

15 years agore PR testsuite/40244 (Revision 147829 caused extra failures)
Ira Rosen [Sun, 31 May 2009 06:55:37 +0000 (06:55 +0000)]
re PR testsuite/40244 (Revision 147829 caused extra failures)

PR testsuite/40244
* gcc.dg/vect/bb-slp-4.c: Change the number of data accesses to 2.
* gcc.dg/vect/bb-slp-10.c: Change the store misalignment to 1.

From-SVN: r148010

15 years agoDaily bump.
GCC Administrator [Sun, 31 May 2009 00:16:50 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r148009

15 years agoReformat.
H.J. Lu [Sat, 30 May 2009 13:35:32 +0000 (06:35 -0700)]
Reformat.

From-SVN: r148003