platform/upstream/gcc.git
16 years agos-taprop-lynxos.adb, [...] (Stop_Task): New function, dummy implementation.
Jerome Guitton [Wed, 26 Sep 2007 10:41:47 +0000 (12:41 +0200)]
s-taprop-lynxos.adb, [...] (Stop_Task): New function, dummy implementation.

2007-09-26  Jerome Guitton  <guitton@adacore.com>

* s-taprop-lynxos.adb, s-taprop-tru64.adb, s-taprop-irix.adb,
s-taprop-hpux-dce.adb, s-taprop-linux.adb, s-taprop-dummy.adb,
 s-taprop-solaris.adb, s-taprop-vms.adb, s-taprop-mingw.adb,
s-taprop-posix.adb (Stop_Task): New function, dummy implementation.

* s-taprop.ads, s-taprop-vxworks.adb (Stop_Task): New function.

* s-tasdeb.adb (Stop_All_Tasks): New function, implementing a run-time
function which can be called by the debugger to interrupt the tasks of
an Ada application asynchronously, as needed on VxWorks.
(Stop_All_Tasks_Handler): Renamed from Stop_All_Tasks.

* s-tasdeb.ads (Stop_All_Tasks_Handler): New function declaration,
renamed from Stop_All_Tasks. Update comments.
(Stop_All_tasks): New function declaration.

From-SVN: r128781

16 years agoa-calend-vms.adb, [...]: Add a section on leap seconds control along with two entitie...
Hristian Kirtchev [Wed, 26 Sep 2007 10:41:35 +0000 (12:41 +0200)]
a-calend-vms.adb, [...]: Add a section on leap seconds control along with two entities used to enable...

2007-09-26  Hristian Kirtchev  <kirtchev@adacore.com>

* a-calend-vms.adb, a-calend.adb:
Add a section on leap seconds control along with two entities used to
enable and disable leap seconds support. The array Leap_Second_Times is
now constant and contains hard time values pre-generated. Remove
all elaboration code used to populate the table of leap seconds.

* bindgen.adb:
Add entity Leap_Seconds_Support to the list of global run-time variables
along with a comment on its usage and values.
(Gen_Adainit_Ada): Add code to generate the declaration and import of
Integer variable Leap_Seconds_Support. Set its value to zero (disabled)
or one (enabled) depending on the presence of binder switch "-y".
(Gen_Adainit_C): Add code to generate the declaration of external int
__gl_leap_seconds_support. Set is value to zero (disabled) or one
(enabled) depending on the presence of binder switch "-y".

* init.c: Add __gl_leap_seconds_support to the list of global values
computed by the binder.

From-SVN: r128780

16 years agosem_ch8.adb (Analyze_Use_Type): Code cleanup.
Hristian Kirtchev [Wed, 26 Sep 2007 10:41:24 +0000 (12:41 +0200)]
sem_ch8.adb (Analyze_Use_Type): Code cleanup.

2007-09-26  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch8.adb (Analyze_Use_Type): Code cleanup.
(Applicable_Use): Emit a warning when a package tries to use itself.
(Use_One_Type): Add variable Is_Known_Used. Emit a warning when a type
is already in use or the package where it is declared is in use or is
declared in the current package.
(Spec_Reloaded_For_Body): New subsidiary routine for Use_One_Type.

* a-tasatt.adb, s-osprim-vxworks.adb, g-socthi-mingw.adb,
s-intman-vms.adb, g-socket.adb, g-thread.adb, s-tarest.adb,
s-tassta.adb, s-tporft.adb: Remove redundant 'use type' clause.

From-SVN: r128779

16 years agoUpdate test.
Arnaud Charlet [Wed, 26 Sep 2007 10:41:08 +0000 (12:41 +0200)]
Update test.

From-SVN: r128778

16 years agoDaily bump.
GCC Administrator [Wed, 26 Sep 2007 00:17:07 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128776

16 years agore PR target/33551 (ICE: RTL check: expected elt 0 type 'i' or 'n', have 'w' (rtx...
DJ Delorie [Wed, 26 Sep 2007 00:03:07 +0000 (20:03 -0400)]
re PR target/33551 (ICE: RTL check: expected elt 0 type 'i' or 'n', have 'w' (rtx const_int) in m32c_immd_dbl_mov, at config/m32c/m32c.c:3010)

PR target/33551
* config/m32c/m32c.c (m32c_immd_dbl_mov): Use INTVAL instead of
XINT.

From-SVN: r128773

16 years agolibstdc++.exp (check_v3_target_fileio): Test lseek.
Richard Sandiford [Tue, 25 Sep 2007 21:18:11 +0000 (21:18 +0000)]
libstdc++.exp (check_v3_target_fileio): Test lseek.

libstdc++-v3/
* testsuite/lib/libstdc++.exp (check_v3_target_fileio): Test lseek.

From-SVN: r128772

16 years agotrans.c: Fix misplaced #define.
Eric Botcazou [Tue, 25 Sep 2007 19:29:23 +0000 (19:29 +0000)]
trans.c: Fix misplaced #define.

* trans.c: Fix misplaced #define.

From-SVN: r128771

16 years agore PR c++/33207 (ICE redeclaring namespace as struct)
Simon Martin [Tue, 25 Sep 2007 18:34:05 +0000 (18:34 +0000)]
re PR c++/33207 (ICE redeclaring namespace as struct)

gcc/cp/

2007-09-25  Simon Martin  <simartin@users.sourceforge.net>

PR c++/33207
* name-lookup.c (pushtag): Do not create an implicit typedef before
the associated type declaration is known to be valid.

gcc/testsuite/

2007-09-25  Simon Martin  <simartin@users.sourceforge.net>

PR c++/33207
* g++.dg/parse/crash38.C: New test.

From-SVN: r128769

16 years agoFix 33524; SSE5 vectorized int->long conversions are broken
Michael Meissner [Tue, 25 Sep 2007 15:54:00 +0000 (15:54 +0000)]
Fix 33524; SSE5 vectorized int->long conversions are broken

From-SVN: r128768

16 years agoAdd missing built-in support for 750CL ps_sel instruction
Revital Eres [Tue, 25 Sep 2007 15:34:48 +0000 (15:34 +0000)]
Add missing built-in support for 750CL ps_sel instruction

From-SVN: r128767

16 years agore PR c/32295 (An invalid c code causes an ICE in create_tmp_var, at gimplify.c:489)
Joseph Myers [Tue, 25 Sep 2007 15:04:58 +0000 (16:04 +0100)]
re PR c/32295 (An invalid c code causes an ICE in create_tmp_var, at gimplify.c:489)

PR c/32295
* c-typeck.c (default_conversion): Call require_complete_type
before perform_integral_promotions.
(build_unary_op): Call require_complete_type except for ADDR_EXPR.
(build_c_cast): Call require_complete_type except for casts to
void types.
(convert_for_assignment): Call require_complete_type.

testsuite:
* gcc.dg/enum-incomplete-1.c: New test.

From-SVN: r128765

16 years agoFix doloop pattern in spu.md
Revital Eres [Tue, 25 Sep 2007 13:17:18 +0000 (13:17 +0000)]
Fix doloop pattern in spu.md

From-SVN: r128764

16 years ago20070919-1.c: New test.
Bernd Schmidt [Tue, 25 Sep 2007 13:02:54 +0000 (13:02 +0000)]
20070919-1.c: New test.

* gcc.c-torture/compile/20070919-1.c: New test.

From-SVN: r128763

16 years agobfin.c (expand_prologue_reg_save, [...]): Code to save and restore I/M/B/L regs and...
Bernd Schmidt [Tue, 25 Sep 2007 12:59:32 +0000 (12:59 +0000)]
bfin.c (expand_prologue_reg_save, [...]): Code to save and restore I/M/B/L regs and ASTAT moved here...

* config/bfin/bfin.c (expand_prologue_reg_save,
expand_epilogue_reg_restore): Code to save and restore I/M/B/L regs and
ASTAT moved here...
(expand_interrupt_handler_prologue, expand_interrupt_handler_epilogue):
... from here.  New argument ALL; callers changed.
(n_regs_saved_by_prologue): Count ASTAT for plain saveall functions.
(bfin_expand_prologue, bfin_expand_epilogue): Deal with functions that
have the "saveall" attribute.

From-SVN: r128762

16 years agotree.c (cxx_printable_name): Compare FUNCTION_DECL uids rather than pointers.
Jakub Jelinek [Tue, 25 Sep 2007 10:30:21 +0000 (12:30 +0200)]
tree.c (cxx_printable_name): Compare FUNCTION_DECL uids rather than pointers.

* tree.c (cxx_printable_name): Compare FUNCTION_DECL uids
rather than pointers.

From-SVN: r128761

16 years agoinit_flag_3.f90: Add -mieee for sh.
Kaz Kojima [Tue, 25 Sep 2007 08:01:42 +0000 (08:01 +0000)]
init_flag_3.f90: Add -mieee for sh.

* gfortran.dg/init_flag_3.f90: Add -mieee for sh.

From-SVN: r128745

16 years agommix.h (FUNCTION_INCOMING_ARG_REGNO_P): Don't define bogus target macro.
Hans-Peter Nilsson [Tue, 25 Sep 2007 02:18:37 +0000 (02:18 +0000)]
mmix.h (FUNCTION_INCOMING_ARG_REGNO_P): Don't define bogus target macro.

* config/mmix/mmix.h (FUNCTION_INCOMING_ARG_REGNO_P): Don't define
bogus target macro.
(INCOMING_REGNO, OUTGOING_REGNO): Define.
* config/mmix/mmix.c (mmix_opposite_regno): New function.
* config/mmix/mmix-protos.h (mmix_opposite_regno): Prototype.

From-SVN: r128744

16 years agommix.md ("*cmpcc_folded"): In condition, gate with REG_P tests before REGNO access.
Hans-Peter Nilsson [Tue, 25 Sep 2007 02:01:24 +0000 (02:01 +0000)]
mmix.md ("*cmpcc_folded"): In condition, gate with REG_P tests before REGNO access.

* config/mmix/mmix.md ("*cmpcc_folded"): In condition, gate
with REG_P tests before REGNO access.

From-SVN: r128743

16 years agore PR target/31482 (error: could not split insn, internal compiler error: in final_sc...
DJ Delorie [Tue, 25 Sep 2007 01:42:34 +0000 (21:42 -0400)]
re PR target/31482 (error: could not split insn, internal compiler error: in final_scan_insn)

PR target/31482
* config/m32c/cond.md (stzx_reversed_<mode>): Add an output
constraint.
(movqicc_<code>_<mode>): Likewise.
(movhicc_<code>_<mode>): Likewise.

From-SVN: r128742

16 years agore PR target/33184 (m32c: ostream.tcc:92: error: unable to find a register to spill...
Rask Ingemann Lambertsen [Tue, 25 Sep 2007 01:40:30 +0000 (03:40 +0200)]
re PR target/33184 (m32c: ostream.tcc:92: error: unable to find a register to spill in class 'A_REGS')

2007-08-26  Rask Ingemann Lambertsen  <rask@sygehus.dk>
PR target/33184
* config/m32c/m32c.c (m32c_eh_return_data_regno): Leave an address
register for reload.

From-SVN: r128741

16 years agore PR c++/14688 (Mis-matched calling convention on virtual functions accepted without...
Danny Smith [Tue, 25 Sep 2007 00:29:42 +0000 (00:29 +0000)]
re PR c++/14688 (Mis-matched calling convention on virtual functions accepted without error)

PR c++/14688
* config/i386/i386.c (ix86_comp_type_attributes): Check
METHOD_TYPE too.

cp
* search.c (check_final_overrider): Fail if
targetm.comp_type_attributes returns 0.

testsuite
* g++.dg/inherit/override_attribs.C: New file.

From-SVN: r128740

16 years agoDaily bump.
GCC Administrator [Tue, 25 Sep 2007 00:17:13 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128738

16 years agore PR fortran/33269 (Diagnose missing "(" in "PRINT ('a'),")
Tobias Schlüter [Mon, 24 Sep 2007 21:15:00 +0000 (23:15 +0200)]
re PR fortran/33269 (Diagnose missing "(" in  "PRINT ('a'),")

PR fortran/33269
fortran/
* io.c (check_format_string): Move NULL and constant checks into
this function.
(check_io_constraints): Call gfc_simplify_expr() before calling
check_format_string().  Remove NULL and constant checks.
testsuite/
* gfortran.dg/fmt_error_2.f90: New.

From-SVN: r128732

16 years agoloop-2f.x: New.
Roman Zippel [Mon, 24 Sep 2007 21:10:14 +0000 (21:10 +0000)]
loop-2f.x: New.

* gcc.c-torture/execute/loop-2f.x: New. Disable test for m68k-linux.
* gcc.c-torture/execute/loop-2g.x: Likewise.

From-SVN: r128731

16 years agom68k.h (ASM_OUTPUT_ALIGN_WITH_NOP): New, use "move.l %a4,%a4" to produce nops.
Roman Zippel [Mon, 24 Sep 2007 21:07:08 +0000 (21:07 +0000)]
m68k.h (ASM_OUTPUT_ALIGN_WITH_NOP): New, use "move.l %a4,%a4" to produce nops.

* config/m68k/m68k.h (ASM_OUTPUT_ALIGN_WITH_NOP): New, use
"move.l %a4,%a4" to produce nops.
* config/m68k/m68k.c (override_options): Reset align options,
if neccessary align macro isn't avaible.

From-SVN: r128730

16 years agoconfig/m68k/linux.h (PREFERRED_STACK_BOUNDARY): New.
Roman Zippel [Mon, 24 Sep 2007 21:05:07 +0000 (21:05 +0000)]
config/m68k/linux.h (PREFERRED_STACK_BOUNDARY): New.

From-SVN: r128729

16 years agom68k.c (strict_low_part_peephole_ok): Don't leave the basic block.
Roman Zippel [Mon, 24 Sep 2007 21:02:40 +0000 (21:02 +0000)]
m68k.c (strict_low_part_peephole_ok): Don't leave the basic block.

* config/m68k/m68k.c (strict_low_part_peephole_ok): Don't leave
the basic block.
* config/m68k/m68k.md (movsi_m68k): Allow certain constant when
reload is completed.
(peephole pattern): Convert most of them to RTL peephole pattern.

From-SVN: r128728

16 years agom68k.c (notice_update_cc): Recognize fp compare (moved from fp compare patterns).
Roman Zippel [Mon, 24 Sep 2007 21:00:22 +0000 (21:00 +0000)]
m68k.c (notice_update_cc): Recognize fp compare (moved from fp compare patterns).

* config/m68k/m68k.c (notice_update_cc): Recognize fp compare
(moved from fp compare patterns).
* config/m68k/m68k.md (cmp<mode>, cmp<mode>_68881, cmp<mode>_cf):
Cleanup predicates to relieve reload.
(conditional_trap): Reject conditional trap with fp condition.
* gcc/config/m68k/predicates.md (fp_src_operand): New, reject
certain constants early.

From-SVN: r128727

16 years ago* gcc/final.c (final_scan_insn): Remove accidentally duplicated code.
Roman Zippel [Mon, 24 Sep 2007 20:57:06 +0000 (20:57 +0000)]
* gcc/final.c (final_scan_insn): Remove accidentally duplicated code.

From-SVN: r128726

16 years agore PR c++/33239 (internal compiler error in instantiate_class_template, at cp/pt...
Jason Merrill [Mon, 24 Sep 2007 20:54:34 +0000 (16:54 -0400)]
re PR c++/33239 (internal compiler error in instantiate_class_template, at cp/pt.c:5666)

        PR c++/33239
        * pt.c (resolve_typename_type): Don't look things up in the original
        template if it would mean losing template arguments.

From-SVN: r128725

16 years agore PR fortran/33538 (bootstrap break in fortran on *-apple-darwin r128671)
Francois-Xavier Coudert [Mon, 24 Sep 2007 20:24:11 +0000 (20:24 +0000)]
re PR fortran/33538 (bootstrap break in fortran on *-apple-darwin r128671)

PR fortran/33538
* scanner.c, parse.c, gfortran.h: Revert revision 128671.

From-SVN: r128724

16 years agotarget-supports.exp (check_effective_target_mips16_attribute): Reject hard-float...
Richard Sandiford [Mon, 24 Sep 2007 19:57:29 +0000 (19:57 +0000)]
target-supports.exp (check_effective_target_mips16_attribute): Reject hard-float modes unless the ABI is o32 or o64.

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_mips16_attribute):
Reject hard-float modes unless the ABI is o32 or o64.
* gcc.target/mips/inter/mips16-inter.exp: Load gcc-dg.exp instead
of gcc.exp.  Skip the tests when mips16 code generation is not
supported.
* gcc.target/mips/mips16-attributes.c: Require mips16_attribute
and use dg-add-options mips16_attribute.

From-SVN: r128723

16 years agoconfig.gcc (powerpc*-*-*): --with-cpu=cell is a 64bit CPU.
Andrew Pinski [Mon, 24 Sep 2007 17:15:50 +0000 (17:15 +0000)]
config.gcc (powerpc*-*-*): --with-cpu=cell is a 64bit CPU.

2007-09-24  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * config.gcc (powerpc*-*-*): --with-cpu=cell is a 64bit CPU.
        Allow --with-tune=cell and --with-cpu=cell.

From-SVN: r128721

16 years ago* MAINTAINERS (Register allocation reviewer): Add myself.
Peter Bergner [Mon, 24 Sep 2007 16:55:40 +0000 (11:55 -0500)]
* MAINTAINERS (Register allocation reviewer): Add myself.

From-SVN: r128720

16 years agors6000-protos.h (rs6000_emit_swrsqrtsf): Declare.
David Edelsohn [Mon, 24 Sep 2007 15:39:18 +0000 (15:39 +0000)]
rs6000-protos.h (rs6000_emit_swrsqrtsf): Declare.

* config/rs6000/rs6000-protos.h (rs6000_emit_swrsqrtsf): Declare.
* config/rs6000/rs6000.opt (swdiv): Change option to ...
(recip): this.
* config/rs6000/rs6000.c (rs6000_builtin_reciprocal): New
function.
(TARGET_BUILTIN_RECIPROCAL): Use it.
(rs6000_builtin_expand): Expand recip, recipf, and rsqrtf.
(rs6000_init_builtins): Initialize recip, recipf, and rsqrtf.
(rs6000_emit_swrsqrtsf): New.
* config/rs6000/rs6000.h (rs6000_builtins): Add recip, recipf, and
rsqrtf.
* config/rs6000/rs6000.md (UNSPEC_RSQRT): Define.
(divsf3): Remove swdiv support.
(recipsf3): New.
(rsqrtsf2): New.
(rsqrt_internal1): New.
(divdf3): Remove swdiv support.
(reciptdf3): New.

From-SVN: r128719

16 years agore PR c++/33506 (TYPE_RAISES_EXCEPTIONS dumped with attributes)
Jakub Jelinek [Mon, 24 Sep 2007 15:16:23 +0000 (17:16 +0200)]
re PR c++/33506 (TYPE_RAISES_EXCEPTIONS dumped with attributes)

PR c++/33506
* langhooks.h (struct lang_hooks_for_types): Add type_hash_eq
field.
* langhooks-def.h (LANG_HOOKS_TYPE_HASH_EQ): Define.
(LANG_HOOKS_FOR_TYPES_INITIALIZER): Add LANG_HOOKS_TYPE_HASH_EQ.
* tree.c (type_hash_eq): For FUNCTION_TYPE use
lang_hooks.type.type_hash_eq in addition to generic tests.

* cp-tree.h (cxx_type_hash_eq): New prototype.
* cp-objcp-common.h (LANG_HOOKS_TYPE_HASH_EQ): Redefine.
* tree.c (cxx_type_hash_eq): New function.

* g++.dg/ext/attrib29.C: New test.

From-SVN: r128718

16 years agore PR c++/33185 (ICE: canonical types differ for identical types T [] and T [])
Douglas Gregor [Mon, 24 Sep 2007 13:46:40 +0000 (13:46 +0000)]
re PR c++/33185 (ICE: canonical types differ for identical types T [] and T [])

2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/33185
* tree.c (cp_build_qualified_type_real): Build a canonical
ARRAY_TYPE if the original ARRAY_TYPE was not a canonical type.

From-SVN: r128717

16 years agoMAINTAINERS (Register allocation reviewer): Add myself.
Kenneth Zadeck [Mon, 24 Sep 2007 13:42:39 +0000 (13:42 +0000)]
MAINTAINERS (Register allocation reviewer): Add myself.

2006-09-24  Kenneth Zadeck <zadeck@naturalbridge.com>

    * MAINTAINERS (Register allocation reviewer): Add myself.

From-SVN: r128716

16 years agotree-inline.h (eni_weights): Add field target_builtin_cost to reflect the cost per...
Pranav Bhandarkar [Mon, 24 Sep 2007 13:31:25 +0000 (13:31 +0000)]
tree-inline.h (eni_weights): Add field target_builtin_cost to reflect the cost per call to a target specific...

2007-09-24  Pranav Bhandarkar  <pranav.bhandarkar@celunite.com>
        Ramana Radhakrishnan  <ramana@hercules.pun.celunite.com>

        * tree-inline.h (eni_weights): Add field target_builtin_cost to
        reflect the cost per call to a target specific builtin.
        * tree-inline.c (estimate_num_insns_1): If it is a CALL_EXPR for
        * a
        call to a target specific builtin, then use
target_builtin_call_cost.
        (init_inline_once): Initialize target_builtin_call_cost field.

Co-Authored-By: Ramana Radhakrishnan <ramana@hercules.pun.celunite.com>
From-SVN: r128714

16 years ago* testsuite/ChangeLog: Fix whitespace.
Uros Bizjak [Mon, 24 Sep 2007 12:36:57 +0000 (14:36 +0200)]
* testsuite/ChangeLog: Fix whitespace.

From-SVN: r128713

16 years ago* ChangeLog: Fix whitespace.
Uros Bizjak [Mon, 24 Sep 2007 12:35:14 +0000 (14:35 +0200)]
* ChangeLog: Fix whitespace.

From-SVN: r128712

16 years agore PR c++/33112 (ICE : canonical types differ for identical types const _CharT* ...
Douglas Gregor [Mon, 24 Sep 2007 12:14:57 +0000 (12:14 +0000)]
re PR c++/33112 (ICE : canonical types differ for identical types const _CharT* [14] and const _CharT* [14])

2007-09-24  Douglas Gregor  <doug.gregor@gmail.com>

PR c++/33112
PR c++/33185
* tree.c (cplus_array_compare): Compare pointers, not types.
(build_cplus_array_type_1): Store new array type into the hash
table before building the canonical type; build the canonical type
correctly.
(cp_build_qualified_type_real): Put all of the array types with
cv-qualified element types into the C++ array hash table, built as
variants of the unqualified versions.

From-SVN: r128711

16 years ago[patch][Bug middle-end/33472] ICE and invalid rtl sharing with complex on
Kai Tietz [Mon, 24 Sep 2007 09:20:34 +0000 (09:20 +0000)]
[patch][Bug middle-end/33472] ICE and invalid rtl sharing with complex on
x86_64-mingw.

2007-09-24  Kai Tietz  <kai.tietz@onevision.com>

* i386.c: (return_in_memory_ms_64): Handle return types for complex types.

From-SVN: r128710

16 years agoDaily bump.
GCC Administrator [Mon, 24 Sep 2007 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128707

16 years agoconfigure.ac (ld_vers): Support GNU linker version xx.xx.*
H.J. Lu [Sun, 23 Sep 2007 21:07:27 +0000 (21:07 +0000)]
configure.ac (ld_vers): Support GNU linker version xx.xx.*

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

* configure.ac (ld_vers): Support GNU linker version xx.xx.*
* configure: Regenerated.

From-SVN: r128702

16 years agofold-const.c (fold_binary): Fold BIT_AND_EXPR's with a pointer operand.
Ollie Wild [Sun, 23 Sep 2007 20:05:40 +0000 (20:05 +0000)]
fold-const.c (fold_binary): Fold BIT_AND_EXPR's with a pointer operand.

gcc/
fold-const.c (fold_binary): Fold BIT_AND_EXPR's with a pointer operand.
(get_pointer_modulus_and_residue): New function.

gcc/testsuite/
gcc.dg/fold-bitand-1.c: New test.
gcc.dg/fold-bitand-2.c: New test.
gcc.dg/fold-bitand-3.c: New test.
gcc.dg/fold-bitand-4.c: New test.

From-SVN: r128701

16 years agomips.c (build_mips16_call_stub): On 64-bit targets, combine an SC return value into...
Richard Sandiford [Sun, 23 Sep 2007 19:20:01 +0000 (19:20 +0000)]
mips.c (build_mips16_call_stub): On 64-bit targets, combine an SC return value into a single register.

gcc/
* config/mips/mips.c (build_mips16_call_stub): On 64-bit targets,
combine an SC return value into a single register.

From-SVN: r128700

16 years agoopth-gen.awk (target_flags_explicit): Declare.
Richard Sandiford [Sun, 23 Sep 2007 19:18:27 +0000 (19:18 +0000)]
opth-gen.awk (target_flags_explicit): Declare.

gcc/
* opth-gen.awk (target_flags_explicit): Declare.
* toplev.h (target_flags_explicit): Delete declaration.
* toplev.c (target_flags): Likewise.
* config/mips/mips.h (mips_llsc_setting, mips_llsc): Delete.
(GENERATE_SYNC, GENERATE_LL_SC): Redefine using target_explicit_flags.
Never return true for TARGET_MIPS16.
* config/mips/mips.c (mips_llsc): Delete.
(mips_handle_option): Remove -mllsc handling.
(mips_strip_unspec_address): Tweak comment.
* config/mips/mips.opt (mllsc): Use a target mask.

gcc/testsuite/
* gcc.target/mips/gcc-have-sync-compare-and-swap-1.c: Don't expect
any of the macros to be defined for __mips16.
* gcc.target/mips/gcc-have-sync-compare-and-swap-2.c: Likewise.

From-SVN: r128699

16 years agotm.texi (POINTERS_EXTEND_UNSIGNED): Document extensions to word_mode as well as Pmode.
Richard Sandiford [Sun, 23 Sep 2007 19:11:50 +0000 (19:11 +0000)]
tm.texi (POINTERS_EXTEND_UNSIGNED): Document extensions to word_mode as well as Pmode.

gcc/
* doc/tm.texi (POINTERS_EXTEND_UNSIGNED): Document extensions to
word_mode as well as Pmode.

From-SVN: r128698

16 years agopr21591.c: Require vect_int.
Richard Sandiford [Sun, 23 Sep 2007 19:09:56 +0000 (19:09 +0000)]
pr21591.c: Require vect_int.

gcc/testsuite/
* gcc.dg/vect/pr21591.c: Require vect_int.
* gcc.dg/vect/vect-outer-2.c: Require vect_intfloat_cvt.
* gcc.dg/vect/vect-outer-2a.c: Likewise.
* gcc.dg/vect/vect-outer-2c.c: Likewise.

From-SVN: r128697

16 years agofunction.c (assign_parm_setup_block): Explicitly convert BLKmode parameters from...
Richard Sandiford [Sun, 23 Sep 2007 19:08:56 +0000 (19:08 +0000)]
function.c (assign_parm_setup_block): Explicitly convert BLKmode parameters from word_mode to the subword type if...

gcc/
* function.c (assign_parm_setup_block): Explicitly convert BLKmode
parameters from word_mode to the subword type if such a truncation
is not a no-op.

From-SVN: r128696

16 years agoconfigure.ac (MAKEINFO): Handle makeinfo version 4.10 and above.
Jakub Jelinek [Sun, 23 Sep 2007 17:42:31 +0000 (19:42 +0200)]
configure.ac (MAKEINFO): Handle makeinfo version 4.10 and above.

* configure.ac (MAKEINFO): Handle makeinfo version 4.10 and above.
* configure: Regenerated.

From-SVN: r128693

16 years agoparams.def (INLINE_CALL_COST): Set to 12.
Jan Hubicka [Sun, 23 Sep 2007 15:42:06 +0000 (17:42 +0200)]
params.def (INLINE_CALL_COST): Set to 12.

* params.def (INLINE_CALL_COST): Set to 12.
* invoke.texi (inline-call-cost): Update default value.

From-SVN: r128692

16 years agore PR c++/16370 (__attribute__((deprecated)) not useful on classes, and ugly function...
Jason Merrill [Sun, 23 Sep 2007 15:27:10 +0000 (11:27 -0400)]
re PR c++/16370 (__attribute__((deprecated)) not useful on classes, and ugly function name listed for deperecation warnings on constructor)

        PR c++/16370
        * decl.c (grokdeclarator): Look through implicit TYPE_DECLs
        for deprecation warnings.

From-SVN: r128691

16 years agoalpha.md (movti): Use operand_subword for the split.
Eric Botcazou [Sun, 23 Sep 2007 14:53:06 +0000 (14:53 +0000)]
alpha.md (movti): Use operand_subword for the split.

* config/alpha/alpha.md (movti): Use operand_subword for the split.

From-SVN: r128690

16 years agoMinor cosmetic change
Ayal Zaks [Sun, 23 Sep 2007 11:58:19 +0000 (11:58 +0000)]
Minor cosmetic change

Co-Authored-By: Revital Eres <eres@il.ibm.com>
From-SVN: r128689

16 years agore PR tree-optimization/32772 (error: found real variable when subvariables should...
Jakub Jelinek [Sun, 23 Sep 2007 09:44:23 +0000 (11:44 +0200)]
re PR tree-optimization/32772 (error: found real variable when subvariables should have appeared)

PR tree-optimization/32772
* gcc.c-torture/compile/20070905-1.c: New test.

PR tree-optimization/32975
* gcc.dg/pr32975.c: New test.

From-SVN: r128688

16 years agoexpr.c (expand_expr_real_1): Use get_callee_fndecl instead of checking CALL_EXPR_FN...
Jakub Jelinek [Sun, 23 Sep 2007 09:39:39 +0000 (11:39 +0200)]
expr.c (expand_expr_real_1): Use get_callee_fndecl instead of checking CALL_EXPR_FN directly to test for...

* expr.c (expand_expr_real_1) <case CALL_EXPR>: Use get_callee_fndecl
instead of checking CALL_EXPR_FN directly to test for builtins.
If error or warning attributes are present, print
error resp. warning.
* c-common.c (handle_error_attribute): New function.
(c_common_attribute_table): Add error and warning
attributes.
* doc/extend.texi: Document error and warning attributes.

* gcc.dg/va-arg-pack-len-1.c: Use error and warning
attributes.
* gcc.dg/va-arg-pack-len-2.c: New test.
* g++.dg/ext/va-arg-pack-len-1.C: Use error and warning
attributes.
* g++.dg/ext/va-arg-pack-len-2.C: New test.

From-SVN: r128687

16 years agotree.h (block_nonartificial_location): New prototype.
Jakub Jelinek [Sun, 23 Sep 2007 09:36:01 +0000 (11:36 +0200)]
tree.h (block_nonartificial_location): New prototype.

* tree.h (block_nonartificial_location): New prototype.
* tree.c (block_nonartificial_location): New function.
* dwarf2out.c (gen_subprogram_die): Add DW_AT_artificial
if artificial attribute is present on abstract inline decl.
* c-common.c (handle_artificial_attribute): New function.
(c_common_attribute_table): Add artificial attribute.
* final.c (override_filename, override_linenum): New variables.
(final_scan_insn): For DBX_DEBUG or SDB_DEBUG, set override_filename
and override_linenum if inside of a block inlined from
__attribute__((__artificial__)) function.
(notice_source_line): Honor override_filename and override_linenum.
* doc/extend.texi: Document __attribute__((__artificial__)).
* config/i386/emmintrin.h: Add __artificial__ attribute to
all __always_inline__ functions.
* config/i386/mmintrin.h: Likewise.
* config/i386/tmmintrin.h: Likewise.
* config/i386/mm3dnow.h: Likewise.
* config/i386/pmmintrin.h: Likewise.
* config/i386/ammintrin.h: Likewise.
* config/i386/xmmintrin.h: Likewise.
* config/i386/smmintrin.h: Likewise.
* config/i386/bmmintrin.h: Likewise.
* config/i386/mmintrin-common.h: Likewise.

From-SVN: r128686

16 years agore PR middle-end/28755 (duplicate members of arrays)
Jakub Jelinek [Sun, 23 Sep 2007 09:34:28 +0000 (11:34 +0200)]
re PR middle-end/28755 (duplicate members of arrays)

PR middle-end/28755
* expr.c (expand_constructor): New function.
(expand_expr_real_1) <case CONSTRUCTOR>: Call it.
(expand_expr_real_1) <case ARRAY_REF>: Call it if VALUE is
CONSTRUCTOR.

* gcc.dg/pr28755.c: New test.

From-SVN: r128685

16 years agomips.c (dump_constants_1): Generalize to include fractional and accumulator modes.
Richard Sandiford [Sun, 23 Sep 2007 09:29:02 +0000 (09:29 +0000)]
mips.c (dump_constants_1): Generalize to include fractional and accumulator modes.

gcc/
* config/mips/mips.c (dump_constants_1): Generalize to include
fractional and accumulator modes.

From-SVN: r128684

16 years agomips.h (ISA_HAS_DSP, [...]): New macros.
Richard Sandiford [Sun, 23 Sep 2007 09:24:21 +0000 (09:24 +0000)]
mips.h (ISA_HAS_DSP, [...]): New macros.

gcc/
* config/mips/mips.h (ISA_HAS_DSP, ISA_HAS_DSPR2): New macros.
* config/mips/mips.c (mips_set_mips16_mode): Don't clear the DSP
flags for MIPS16.
(override_options): Check TARGET_HARD_FLOAT_ABI instead of
TARGET_HARD_FLOAT when testing whether -mpaired-single is
supported.
(mips_conditional_register_usage): Check ISA_HAS_DSP instead of
TARGET_DSP.
* config/mips/constraints.md (ka): Check ISA_HAS_DSPR2 instead of
TARGET_DSPR2.
* config/mips/mips.md (ANYF): Require TARGET_HARD_FLOAT for V2SF.
(mulv2sf3, movv2sf, movv2sf_hardfloat_64bit): Require
TARGET_HARD_FLOAT.
(<u>mulsidi3_32bit_internal, <u>msubsidi4, <u>maddsidi4): Check
ISA_HAS_DSPR2 instead of TARGET_HAS_DSPR2.
* config/mips/mips-dsp.md: Use ISA_HAS_DSP instead of TARGET_HAS_DSP
throughout.
* config/mips/mips-dspr2.md: Likewise ISA_HAS_DSPR2 and
TARGET_HAS_DSPR2.
* config/mips/mips-fixed.md: Use ISA_HAS_DSP and ISA_HAS_DSPR2
instead of TARGET_HAS_DSP and TARGET_HAS_DSPR2.
* config/mips/mips-ps-3d.md: Add TARGET_HARD_FLOAT to V2SF patterns.

gcc/testsuite/
* lib/target-supports.exp (check_effective_target_nomips16): New
procedure.
* lib/fortran-torture.exp: Check nomips16 as well as mpaired_single
for mipsisa64*-*-*.
* gcc.dg/vect/vect.exp: Likewise.
* g++.dg/vect/vect.exp: Likewise.
* gcc.target/mips/mips.exp (setup_mips_tests): Don't set mips_mips16.
(dg-mips-options): Don't skip -march* and -mips* tests for -mips16.
* gcc.target/mips/branch-cost-1.c (foo): Add NOMIPS16.
* gcc.target/mips/branch-cost-2.c (foo): Likewise.
* gcc.target/mips/clear-cache-1.c (f): Likewise.
* gcc.target/mips/dpaq_sa_l_w.c (f1, f2, f3): Likewise.
* gcc.target/mips/dpsq_sa_l_w.c (f1, f2, f3): Likewise.
* gcc.target/mips/fix-vr4130-1.c (foo): Likewise.
* gcc.target/mips/fix-vr4130-2.c (foo): Likewise.
* gcc.target/mips/fix-vr4130-3.c (foo): Likewise.
* gcc.target/mips/fix-vr4130-4.c (foo): Likewise.
* gcc.target/mips/fixed-scalar-type.c (test1, test2, test3, test4)
(test5, test6, test7, test8, test9, test10, test11, test12, test13)
(test14, test15, test16, test17, test18): Likewise.
* gcc.target/mips/fixed-vector-type.c (test1, test2, test3, test4)
(test5, test6, test7, test8, test9, test10, test11, test12, test13)
(test14, test15, test16, test17, test18, test19, test20, test21)
(test22): Likewise.
* gcc.target/mips/madd-1.c (f1, f2, f3): Likewise.
* gcc.target/mips/madd-2.c (f1, f2, f3): Likewise.
* gcc.target/mips/madd-4.c (f1, f2, f3): Likewise.
* gcc.target/mips/maddu-1.c (f1, f2, f3): Likewise.
* gcc.target/mips/maddu-2.c (f1, f2, f3): Likewise.
* gcc.target/mips/maddu-4.c (f1, f2, f3): Likewise.
* gcc.target/mips/mips-3d-1.c (main): Likewise.
* gcc.target/mips/mips-3d-2.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-3d-3.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31, test32, test33, test34, test35, test36)
(test37, test38, test39, test40, test41, test42, test43, test44)
(test45, test46, test47, test48, test49, test50, test51, test52)
(test53, test54, test55, test56, test57, test58, test59, test60)
(test61, test62, test63): Likewise.
* gcc.target/mips/mips-3d-4.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-3d-5.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-3d-6.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15): Likewise.
* gcc.target/mips/mips-3d-7.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15): Likewise.
* gcc.target/mips/mips-3d-8.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-3d-9.c (matrix_multiply2, matrix_multiply3)
(matrix_multiply4: Likewise.
* gcc.target/mips/mips-ps-1.c (main): Likewise.
* gcc.target/mips/mips-ps-2.c (main): Likewise.
* gcc.target/mips/mips-ps-3.c (main): Likewise.
* gcc.target/mips/mips-ps-4.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-ps-5.c (main, test0, test1, test2, test3)
(test4, test5, test6, test7, test8, test9, test10, test11, test12)
(test13, test14, test15, test16, test17, test18, test19, test20)
(test21, test22, test23, test24, test25, test26, test27, test28)
(test29, test30, test31): Likewise.
* gcc.target/mips/mips-ps-5.c (main): Likewise.
* gcc.target/mips/mips-ps-6.c (main): Likewise.
* gcc.target/mips/mips-ps-type.c (init, move, load, store, add, sub)
(neg, mul, madd, msub, nmadd, nmsub, cond_move1, cond_move2): Likewise.
* gcc.target/mips/mips32-dsp-type.c (add_v2hi,add_v4qi, sub_v2hi)
(sub_v4qi): Likewise.
* gcc.target/mips/mips32-dsp.c (test_MIPS_DSP, add_v2q15, add_v4i8)
(sub_v2q15, sub_v4i8, test_MIPS_DSP): Likewise.
* gcc.target/mips/movcc-1.c (sub1, sub2): Likewise.
* gcc.target/mips/movcc-2.c (sub4, sub5): Likewise.
* gcc.target/mips/movcc-3.c (sub3, sub6, sub7, sub8, sub9, suba)
(subb, subc): Likewise.
* gcc.target/mips/msub-1.c (f1, f2): Likewise.
* gcc.target/mips/msub-2.c (f1, f2): Likewise.
* gcc.target/mips/msub-4.c (f1, f2): Likewise.
* gcc.target/mips/msubu-1.c (f1, f2): Likewise.
* gcc.target/mips/msubu-2.c (f1, f2): Likewise.
* gcc.target/mips/msubu-4.c (f1, f2): Likewise.
* gcc.target/mips/nmadd-1.c (sub1, sub2, sub3, sub4): Likewise.
* gcc.target/mips/nmadd-2.c (sub1, sub2, sub3, sub4): Likewise.
* gcc.target/mips/rsqrt-1.c (foo, bar): Likewise.
* gcc.target/mips/rsqrt-2.c (foo, bar): Likewise.
* gcc.target/mips/sb1-1.c (divide, recip, squareroot, rsqrt): Likewise.
* gcc.target/mips/vr-mult-1.c (f1, f2): Likewise.
* gcc.target/mips/vr-mult-2.c (f1, f2): Likewise.

From-SVN: r128683

16 years agore PR c++/15269 (__attribute__((deprecated)) broken with inline, ignored with pure...
Jason Merrill [Sun, 23 Sep 2007 04:37:26 +0000 (00:37 -0400)]
re PR c++/15269 (__attribute__((deprecated)) broken with inline, ignored with pure virtual, misreported after definition)

        PR c++/15269
        * call.c (build_over_call): Warn about deprecated virtuals.

From-SVN: r128682

16 years agore PR c++/19407 (vector keyword in typedef inside template struct ignored)
Jason Merrill [Sun, 23 Sep 2007 02:36:34 +0000 (22:36 -0400)]
re PR c++/19407 (vector keyword in typedef inside template struct ignored)

        PR c++/19407
        * cp/cp-tree.h (ATTR_IS_DEPENDENT): New macro.
        (MAYBE_TAGGED_TYPE_P): Remove.
        * cp/pt.c (apply_late_template_attributes): Check ATTR_IS_DEPENDENT
        instead of calling is_late_template_attribute again.
        (tsubst_decl) [TYPE_DECL]: Just check if the name is the tag.
        (tsubst): A typedef is a TYPE_NAME != TYPE_MAIN_DECL.
        Don't crash on typedefs from non-template classes.
        * cp/decl2.c (grokfield): Don't sorry about attrs on template parms.
        (is_late_template_attribute): All attributes applied to template
        parms or typename types are dependent.  Static, take decl.
        (splice_template_attributes): Pass decl through.
        (save_template_attributes): Likewise.
        * attribs.c (lookup_attribute_spec): Split out...
        (decl_attributes): From here.
        * tree.h: Declare it.

From-SVN: r128681

16 years agoDaily bump.
GCC Administrator [Sun, 23 Sep 2007 00:17:14 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128679

16 years agore PR fortran/33528 (Wrong locations emitted with mapped locations and included files)
Francois-Xavier Coudert [Sat, 22 Sep 2007 23:48:02 +0000 (23:48 +0000)]
re PR fortran/33528 (Wrong locations emitted with mapped locations and included files)

PR fortran/33528
* scanner.c (preprocessor_line): Call linemap_add when exiting
a file.
(gfc_new_file): Adjust debug code for USE_MAPPED_LOCATION.

From-SVN: r128676

16 years agore PR c++/33496 (ICE with sizeof for invalid argument pack)
Jakub Jelinek [Sat, 22 Sep 2007 21:19:17 +0000 (23:19 +0200)]
re PR c++/33496 (ICE with sizeof for invalid argument pack)

PR c++/33496
* pt.c (tsubst_copy) <case SIZEOF_EXPR>: Handle error_mark_node
returned from tsubst_pack_expansion.
(tsubst_copy_and_build) <case SIZEOF_EXPR>: Likewise.
(tsubst_copy_and_build) <case CONSTRUCTOR>: Likewise.

* g++.dg/cpp0x/variadic76.C: New test.
* g++.dg/cpp0x/variadic77.C: New test.
* g++.dg/cpp0x/variadic78.C: New test.

From-SVN: r128675

16 years agosourcebuild.texi: Document dg-add-options mips16_attribute.
Richard Sandiford [Sat, 22 Sep 2007 20:10:52 +0000 (20:10 +0000)]
sourcebuild.texi: Document dg-add-options mips16_attribute.

gcc/
* doc/sourcebuild.texi: Document dg-add-options mips16_attribute.

gcc/testsuite/
* lib/target-supports.exp (add_options_for_mips16_attribute)
(check_effective_target_mips16_attribute): New functions.
* gcc.target/mips/mips.exp: Define MIPS16 and NOMIPS16 on the
command line.
(dg-mips-options) Remove -mno-mips16 handling.  Add options to
extra_test_flags.
* gcc.target/mips/asm-1.c (NOMIPS16): Delete.
* gcc.target/mips/atomic-memory-1.c (NOMIPS16): Likewise.
* gcc.target/mips/atomic-memory-2.c (NOMIPS16): Likewise.
* gcc.target/mips/branch-1.c (NOMIPS16): Likewise.
* gcc.target/mips/dspr2-MULT.c (NOMIPS16): Likewise.
* gcc.target/mips/dspr2-MULTU.c (NOMIPS16): Likewise.
* gcc.target/mips/fpcmp-1.c (NOMIPS16): Likewise.
* gcc.target/mips/fpcmp-2.c (NOMIPS16): Likewise.
* gcc.target/mips/ins-1.c (NOMIPS16): Likewise.
* gcc.target/mips/madd-3.c (NOMIPS16): Likewise.
* gcc.target/mips/maddu-3.c (NOMIPS16): Likewise.
* gcc.target/mips/mips32-dsp-run.c (NOMIPS16): Likewise.
* gcc.target/mips/mips32-dspr2-type.c (NOMIPS16): Likewise.
* gcc.target/mips/msub-3.c (NOMIPS16): Likewise.
* gcc.target/mips/msubu-3.c (NOMIPS16): Likewise.
* gcc.target/mips/near-far-3.c (NOMIPS16): Likewise.
* gcc.target/mips/near-far-4.c (NOMIPS16): Likewise.
* gcc.target/mips/neg-abs-1.c (NOMIPS16): Likewise.
* gcc.target/mips/smartmips-lwxs.c (NOMIPS16): Likewise.
* gcc.target/mips/smartmips-ror-1.c (NOMIPS16): Likewise.
* gcc.target/mips/smartmips-ror-2.c (NOMIPS16): Likewise.
* gcc.target/mips/smartmips-ror-3.c (NOMIPS16): Likewise.
* gcc.target/mips/smartmips-ror-4.c (NOMIPS16): Likewise.
* gcc.target/mips/pr26765.c: Use dg-mips-options instead of dg-options.
(NOMIPS16): Delete.
* gcc.target/mips/20020620-1.c: Use dg-mips-options instead
of dg-options.
* gcc.target/mips/call-saved-1.c: Remove -mips16 and -mno-abicalls
options.  Require { target mips16_attribute } and use dg-add-options
to add the associated options.
(foo): Use MIPS16.
* gcc.target/mips/call-saved-2.c: As for call-saved-1.c.
* gcc.target/mips/call-saved-3.c: Likewise.
* gcc.target/mips/code-readable-1.c: Require { target
mips16_attribute } and use dg-add-options to add the associated
options.  Remove trailing whitespace.
(NOMIPS16): Delete.
* gcc.target/mips/code-readable-2.c: Likewise.
* gcc.target/mips/code-readable-3.c: Likewise.
* gcc.target/mips/mips16-attributes-2.c: Likewise.
* gcc.target/mips/mips16e-extends.c: Remove -mips16 option.
Require { target mips16_attribute } and use dg-add-options to
add the associated options.
(cksum16, cksum8): Use MIPS16.
* gcc.target/mips/save-restore-1.c: Remove -mips16 option.
Require { target mips16_attribute } and use dg-add-options to
add the associated options.
(foo): Use MIPS16.
* gcc.target/mips/save-restore-2.c: Likewise.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
* gcc.target/mips/save-restore-5.c: Likewise.  Also remove
-mno-abicalls.
* gcc.target/mips/mips-sched-madd.c: Remove -mno-mips16.
(foo): Use NOMIPS16.

From-SVN: r128674

16 years agore PR fortran/33522 (Incorrect warning messages about uninitialized variables)
Francois-Xavier Coudert [Sat, 22 Sep 2007 16:54:56 +0000 (16:54 +0000)]
re PR fortran/33522 (Incorrect warning messages about uninitialized variables)

PR fortran/33522
* trans-types.c (gfc_get_desc_dim_type): Mark artificial
variables with TREE_NO_WARNING.
(gfc_get_array_descriptor_base): Likewise.

From-SVN: r128673

16 years agore PR fortran/33337 (ICE in gfc_finish_var_decl, at fortran/trans-decl.c:510)
Paul Thomas [Sat, 22 Sep 2007 15:46:41 +0000 (15:46 +0000)]
re PR fortran/33337 (ICE in gfc_finish_var_decl, at fortran/trans-decl.c:510)

2007-09-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33337
PR fortran/33376
* trans-decl.c (gfc_create_module_variable): Output
derived type parameters.
* arith.c (gfc_parentheses): Return the argument if
it is a constant expression.
* primary.c (gfc_match_rvalue): Remove the clearing of
the module name and the use_assoc attribute for derived
type parameter expressions.

2007-09-22  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/33337
* gfortran.dg/derived_comp_array_ref_3.f90: New test.

PR fortran/33376
* gfortran.dg/derived_comp_array_ref_4.f90: New test.

From-SVN: r128672

16 years agore PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor...
Francois-Xavier Coudert [Sat, 22 Sep 2007 15:03:24 +0000 (15:03 +0000)]
re PR fortran/33502 (gfortran with .F suffix and -g3 option chokes on preprocessor syntax)

PR fortran/33502
* scanner.c (gfc_advance_line): Call debug_hooks->start_source_file
and debug_hooks->end_source_file when entering and exiting
included files.
(gfc_define_undef_line): New function.
(load_file): Ignore #define and #undef preprocessor lines
while reading source files.
* parse.c (next_statement): Handle #define and #undef
preprocessor lines.
(gfc_parse_file): Call debug_hooks->start_source_file and
debug_hooks->end_source_file for the main source file if
requested by the debug format.
* gfortran.h (gfc_define_undef_line): Add prototype.

From-SVN: r128671

16 years agore PR fortran/33445 (Diagnose "!$OMP&" as an error in free format unless it is a...
Tobias Burnus [Sat, 22 Sep 2007 14:20:57 +0000 (16:20 +0200)]
re PR fortran/33445 (Diagnose "!$OMP&" as an error in free format unless it is a continuation line)

2007-09-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33445
        * scanner.c (skip_free_comments): Warn if !$OMP& is used
        if no OpenMP directive is to be continued.

2007-09-22  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33445
        * gfortran.dg/gomp/free-2.f90: New.
        * gfortran.dg/gomp/appendix-a/a.31.1.f90: Add missing &.
        * gfortran.dg/gomp/omp_parse1.f90: Add dg-warning.

From-SVN: r128670

16 years agoutils2.c (build_unary_op): Propagate the TYPE_REF_CAN_ALIAS_ALL flag to the result.
Eric Botcazou [Sat, 22 Sep 2007 13:04:20 +0000 (13:04 +0000)]
utils2.c (build_unary_op): Propagate the TYPE_REF_CAN_ALIAS_ALL flag to the result.

* utils2.c (build_unary_op) <ADDR_EXPR> [INDIRECT_REF]: Propagate
the TYPE_REF_CAN_ALIAS_ALL flag to the result.

From-SVN: r128669

16 years agotree-inline.c (remap_type_1): Correctly chain variants.
Eric Botcazou [Sat, 22 Sep 2007 12:31:22 +0000 (12:31 +0000)]
tree-inline.c (remap_type_1): Correctly chain variants.

* tree-inline.c (remap_type_1): Correctly chain variants.

From-SVN: r128668

16 years agosse5-hadduX.c: Remove target selector.
Uros Bizjak [Sat, 22 Sep 2007 10:16:07 +0000 (12:16 +0200)]
sse5-hadduX.c: Remove target selector.

        * gcc.target/i386/sse5-hadduX.c: Remove target selector.
        * gcc.target/i386/sse5-haddX.c: Ditto.
        * gcc.target/i386/sse5-hsubX.c: Ditto.
        * gcc.target/i386/sse5-maccXX.c: Ditto.
        * gcc.target/i386/sse5-msubXX.c: Ditto.
        * gcc.target/i386/sse5-nmaccXX.c: Ditto.
        * gcc.target/i386/sse5-nmsubXX.c: Ditto.
        * gcc.target/i386/sse5-permpX.c: Ditto.
        * gcc.target/i386/sse5-fma.c: Remove target selector. Require lp64
        effective target.
        * gcc.target/i386/sse5-fma-vector.c: Ditto.
        * gcc.target/i386/sse5-ima-vector.c: Ditto.
        * gcc.target/i386/sse5-pcmov.c: Ditto.
        * gcc.target/i386/sse5-pcmov2.c: Ditto.

From-SVN: r128667

16 years agore PR tree-optimization/33146 (ICE in build_polynomial_chrec, at tree-chrec.h:136)
Richard Guenther [Sat, 22 Sep 2007 09:39:41 +0000 (09:39 +0000)]
re PR tree-optimization/33146 (ICE in build_polynomial_chrec, at tree-chrec.h:136)

2007-09-22  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/33146
* fold-const.c (fold_binary): Use the original tree
for negating.
* tree.h (STRIP_SIGN_NOPS): Converting from or to pointer
also changes "sign".

* gcc.c-torture/compile/pr33146.c: New testcase.

From-SVN: r128666

16 years agore PR target/32325 (cc1plus ICE configuring libstdc++ on Tru64 UNIX V5.1B: SEGV in...
Eric Botcazou [Sat, 22 Sep 2007 08:42:57 +0000 (08:42 +0000)]
re PR target/32325 (cc1plus ICE configuring libstdc++ on Tru64 UNIX V5.1B: SEGV in rtl_verify_flow_info)

PR target/32325
* except.c (finish_eh_generation): Call commit_edge_insertions if
there are insns queued on the entry edge.
* config/alpha/alpha.c (alpha_gp_save_rtx): Insert the insns on
the entry edge.

From-SVN: r128665

16 years agotarget-supports.exp (check_cached_effective_target): New procedure.
Richard Sandiford [Sat, 22 Sep 2007 08:26:50 +0000 (08:26 +0000)]
target-supports.exp (check_cached_effective_target): New procedure.

gcc/testsuite/
* lib/target-supports.exp (check_cached_effective_target): New
procedure.
(check_no_compiler_messages, check_no_messages_and_pattern): Use it.
(check_effective_target_c99_runtime): New procedure.
* gcc.dg/builtins-20.c (test3f): Wrap cargf check in HAVE_C99_RUNTIME.
(test3l): Likewise cargl.
* gcc.dg/builtins-59.c: Require c99_runtime.
* gcc.dg/builtins-61.c: Likewise.
* gcc.dg/builtins-62.c: Likewise.

From-SVN: r128664

16 years agosourcebuild.texi (dg-add-c99-runtime-options): Document.
Richard Sandiford [Sat, 22 Sep 2007 08:25:43 +0000 (08:25 +0000)]
sourcebuild.texi (dg-add-c99-runtime-options): Document.

gcc/
* doc/sourcebuild.texi (dg-add-c99-runtime-options): Document.

gcc/testsuite/
* lib/target-supports.exp (add_options_for_c99_runtime): New procedure.
* lib/target-supports-dg.exp (dg-add-options): Likewise.
* gcc.dg/builtins-18.c: Use { dg-add-options c99_runtime } instead of
target-specific dg-options.
* gcc.dg/builtins-20.c: Likewise.
* gcc.dg/builtins-53.c: Likewise.
* gcc.dg/builtins-55.c: Likewise.
* gcc.dg/single-precision-constant.c: Likewise.
* gcc.dg/torture/builtin-convert-1.c: Likewise.
* gcc.dg/torture/builtin-convert-2.c: Likewise.
* gcc.dg/torture/builtin-convert-3.c: Likewise.
* gcc.dg/torture/builtin-convert-4.c: Likewise.
* gcc.dg/torture/builtin-power-1.c: Likewise.

From-SVN: r128663

16 years agowarn_summary (srcdirFilter): Add fixincludes, sim, newlib and mpfr.
Hans-Peter Nilsson [Sat, 22 Sep 2007 01:19:10 +0000 (01:19 +0000)]
warn_summary (srcdirFilter): Add fixincludes, sim, newlib and mpfr.

* warn_summary (srcdirFilter): Add fixincludes, sim,
newlib and mpfr.

From-SVN: r128662

16 years agotarget-supports.exp (check_effective_target_fixed_point): New to check if targets...
Chao-ying Fu [Sat, 22 Sep 2007 00:27:56 +0000 (00:27 +0000)]
target-supports.exp (check_effective_target_fixed_point): New to check if targets have fixed-point supports.

* lib/target-supports.exp (check_effective_target_fixed_point): New to
check if targets have fixed-point supports.
* gcc.dg/fixed-point/fixed-point.exp: New file.
* gcc.dg/fixed-point/addsub.c, gcc.dg/fixed-point/allconv.c,
* gcc.dg/fixed-point/allop.c, gcc.dg/fixed-point/call-by-value.c,
* gcc.dg/fixed-point/cast-bad.c, gcc.dg/fixed-point/composite-type.c,
* gcc.dg/fixed-point/const-1.c, gcc.dg/fixed-point/constant.c,
* gcc.dg/fixed-point/constants-pedantic.c,
* gcc.dg/fixed-point/convert.c, gcc.dg/fixed-point/define.c,
* gcc.dg/fixed-point/keywords-c89.c, gcc.dg/fixed-point/keywords-c99.c,
* gcc.dg/fixed-point/keywords-ignored-c99.c,
* gcc.dg/fixed-point/keywords-pedantic.c,
* gcc.dg/fixed-point/keywords-reserved.c, gcc.dg/fixed-point/binary.c,
* gcc.dg/fixed-point/modes.c, gcc.dg/fixed-point/noassoc.c,
* gcc.dg/fixed-point/types.c, gcc.dg/fixed-point/typespec.c,
* gcc.dg/fixed-point/unary.c, gcc.dg/fixed-point/func-array.c,
* gcc.dg/fixed-point/func-scalar.c, gcc.dg/fixed-point/func-struct.c,
* gcc.dg/fixed-point/func-vararg-mixed.c,
* gcc.dg/fixed-point/operator-logical.c,
* gcc.dg/fixed-point/struct-union.c,
* gcc.dg/fixed-point/bit-complement.c,
* gcc.dg/fixed-point/operator-bitwise.c,
* gcc.dg/fixed-point/operator-comma.c,
* gcc.dg/fixed-point/struct-layout-1.c,
* gcc.dg/fixed-point/union-init.c,
* gcc.dg/fixed-point/Wbad-function-cast-1.c,
* gcc.dg/fixed-point/func-mixed.c,
* gcc.dg/fixed-point/func-vararg-size0.c,
* gcc.dg/fixed-point/func-vararg.c, gcc.dg/fixed-point/int-warning.c,
* gcc.dg/fixed-point/loop-index.c, gcc.dg/fixed-point/operator-cond.c,
* gcc.dg/fixed-point/operator-unary.c,
* gcc.dg/fixed-point/allop-const.c,
* gcc.dg/fixed-point/muldiv-warning.c,
* gcc.dg/nofixed-point-1.c,
* gcc.target/mips/dpaq_sa_l_w.c, gcc.target/mips/dpsq_sa_l_w.c,
* gcc.target/mips/fixed-vector-type.c,
* gcc.target/mips/fixed-scalar-type.c: New tests.

From-SVN: r128661

16 years agoDaily bump.
GCC Administrator [Sat, 22 Sep 2007 00:17:10 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128659

16 years agoMAINTAINERS (Write After Approval): Fix typo.
Seongbae Park [Fri, 21 Sep 2007 20:08:22 +0000 (20:08 +0000)]
MAINTAINERS (Write After Approval): Fix typo.

2007-09-21  Seongbae Park  <seongbae.park@gmail.com>

* MAINTAINERS (Write After Approval): Fix typo.

From-SVN: r128655

16 years agore PR libfortran/31546 (add --enable-intermodule)
Bernhard Fischer [Fri, 21 Sep 2007 19:49:34 +0000 (19:49 +0000)]
re PR libfortran/31546 (add --enable-intermodule)

PR fortran/31546
* (configure.ac): Add --enable-intermodule for onestep build.
* (Makefile.am): Handle onestep build.
* (configure, Makefile.in): Regenerate.

From-SVN: r128654

16 years agoCommit forgotten ChangeLog entry
Michael Meissner [Fri, 21 Sep 2007 17:55:33 +0000 (17:55 +0000)]
Commit forgotten ChangeLog entry

From-SVN: r128652

16 years agotrans-expr.c (gfc_trans_pointer_assignment): Convert array descriptor for subref...
Paul Thomas [Fri, 21 Sep 2007 15:02:44 +0000 (15:02 +0000)]
trans-expr.c (gfc_trans_pointer_assignment): Convert array descriptor for subref pointer assignements...

2007-09-21  Paul Thomas  <pault@gcc.gnu.org>

*trans-expr.c (gfc_trans_pointer_assignment): Convert array
descriptor for subref pointer assignements, rather than using
the loop info version.

From-SVN: r128651

16 years agoutils.c (type_for_nonaliased_component_p): Return false for all AGGREGATE_TYPEs.
Olivier Hainque [Fri, 21 Sep 2007 14:14:45 +0000 (14:14 +0000)]
utils.c (type_for_nonaliased_component_p): Return false for all AGGREGATE_TYPEs.

2007-09-21  Olivier Hainque  <hainque@adacore.com>

ada/
        * utils.c (type_for_nonaliased_component_p): Return false for
        all AGGREGATE_TYPEs.

testsuite/
        * gnat.dg/nested_subtype_byref.ad[bs]: Part of new test.
        * gnat.dg/test_nested_subtype_byref.adb: New test.

From-SVN: r128650

16 years agore PR fortran/33439 (OpenMP: Incorrect error message for chunksize variable)
Jakub Jelinek [Fri, 21 Sep 2007 11:17:13 +0000 (13:17 +0200)]
re PR fortran/33439 (OpenMP: Incorrect error message for chunksize variable)

PR fortran/33439
* gfortran.dg/gomp/pr33439.f90: New test.

From-SVN: r128649

16 years agore PR libfortran/26253 (fallback scalbn doesn't handle denormals correctly)
Francois-Xavier Coudert [Fri, 21 Sep 2007 10:54:20 +0000 (10:54 +0000)]
re PR libfortran/26253 (fallback scalbn doesn't handle denormals correctly)

PR libfortran/26253
* intrinsics/c99_functions.c (scalbn): Use ldexp if appopriate.

From-SVN: r128648

16 years agore PR fortran/33455 (MERGE intrinsic: Check for same string lengths)
Tobias Burnus [Fri, 21 Sep 2007 10:44:20 +0000 (12:44 +0200)]
re PR fortran/33455 (MERGE intrinsic: Check for same string lengths)

2007-09-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33455
        * check.c (check_same_strlen): New function.
        (gfc_check_merge): Use it.

2007-09-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33455
        * gfortran.dg/merge_char_3.f90: New.

From-SVN: r128647

16 years agore PR fortran/33037 (TRANSFER should warn on mismatched sizes)
Tobias Burnus [Fri, 21 Sep 2007 10:21:29 +0000 (12:21 +0200)]
re PR fortran/33037 (TRANSFER should warn on mismatched sizes)

2007-09-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33037
        * simplify.c (gfc_simplify_transfer): Warn if source size
        is smaller than result size.

2007-09-21  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33037
        * gfortran.dg/transfer_check_1.f90: New.

From-SVN: r128646

16 years agore PR tree-optimization/33508 (tree struct aliasing goes into a loop marking call...
Richard Guenther [Fri, 21 Sep 2007 09:36:52 +0000 (09:36 +0000)]
re PR tree-optimization/33508 (tree struct aliasing goes into a loop marking call clobbers.)

2007-09-21  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/33508
* tree-ssa-alias.c (mark_aliases_call_clobbered): Avoid
quadratic loop by keeping a bitmap of variables we have
to clobber all subvariables for.
(set_initial_properties): Likewise.

From-SVN: r128645

16 years agomt-sde (CFLAGS_FOR_TARGET): Replace -fno-optimize-sibling-calls with -minterlink...
Richard Sandiford [Fri, 21 Sep 2007 07:33:31 +0000 (07:33 +0000)]
mt-sde (CFLAGS_FOR_TARGET): Replace -fno-optimize-sibling-calls with -minterlink-mips16.

config/
* mt-sde (CFLAGS_FOR_TARGET): Replace -fno-optimize-sibling-calls
with -minterlink-mips16.
(CXXFLAGS_FOR_TARGET): Likewise.

gcc/
* config/mips/t-sde (TARGET_LIBGCC2_CFLAGS): Delete.

From-SVN: r128644

16 years agore PR fortran/20441 (-finit-local-zero is missing from gfortran)
Asher Langton [Fri, 21 Sep 2007 02:34:14 +0000 (02:34 +0000)]
re PR fortran/20441 (-finit-local-zero is missing from gfortran)

PR fortran/20441
        * gfortran.h : Add init_local_* enums and init_flag_* flags to
gfc_option_t.
* lang.opt: Add -finit-local-zero, -finit-real, -finit-integer,
-finit-character, and -finit-logical flags.
* invoke.texi: Document new options.
* resolve.c (build_init_assign): New function.
(apply_init_assign): Move part of function into build_init_assign.
(build_default_init_expr): Build local initializer (-finit-*).
(apply_default_init_local): Apply local initializer (-finit-*).
(resolve_fl_variable): Try to add local initializer (-finit-*).
* options.c (gfc_init_options, gfc_handle_option,
gfc_post_options): Handle -finit-local-zero, -finit-real,
-finit-integer, -finit-character, and -finit-logical flags.

PR fortran/20441
* gfortran.dg/init_flag_1.f90: New.
* gfortran.dg/init_flag_2.f90: New.
* gfortran.dg/init_flag_3.f90: New.
* gfortran.dg/init_flag_4.f90: New.
* gfortran.dg/init_flag_5.f90: New.
* gfortran.dg/init_flag_6.f90: New.
* gfortran.dg/init_flag_7.f90: New.

From-SVN: r128643

16 years agoc-decl.c (finish_declspecs): When _Sat is used without _Fract or _Accum, set the...
Nigel Stephens [Fri, 21 Sep 2007 00:50:37 +0000 (00:50 +0000)]
c-decl.c (finish_declspecs): When _Sat is used without _Fract or _Accum, set the default type to cts_fract.

* c-decl.c (finish_declspecs): When _Sat is used without
_Fract or _Accum, set the default type to cts_fract.
This avoids a warning of "type defaults to int".

Co-Authored-By: Chao-ying Fu <fu@mips.com>
From-SVN: r128642

16 years agoDaily bump.
GCC Administrator [Fri, 21 Sep 2007 00:17:19 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r128640

16 years agore PR c++/33460 (ICE with static member in anonymous union)
Paolo Carlini [Thu, 20 Sep 2007 23:05:38 +0000 (23:05 +0000)]
re PR c++/33460 (ICE with static member in anonymous union)

cp/
2007-09-20  Paolo Carlini  <pcarlini@suse.de>

PR c++/33460
* semantics.c (finish_id_expression): Use consistently
context_for_name_lookup.
* decl.c (fixup_anonymous_aggr): Fix error message for
anonymous struct (vs union).

testsuite/
2007-09-20  Paolo Carlini  <pcarlini@suse.de>

PR c++/33460
* g++.dg/ext/anon-struct6.C: New.

From-SVN: r128637

16 years agore PR libfortran/23272 ([mingw32] inquire via filename fails)
Francois-Xavier Coudert [Thu, 20 Sep 2007 22:56:48 +0000 (22:56 +0000)]
re PR libfortran/23272 ([mingw32] inquire via filename fails)

PR libfortran/23272

* io/unix.c (id_from_handle, id_from_path, id_from_fd): New
functions.
(compare_file_filename, find_file, find_file0): Use the new
functions above.

* gfortran.dg/inquire_10.f90: New test.

From-SVN: r128636

16 years agoacinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
Francois-Xavier Coudert [Thu, 20 Sep 2007 22:43:39 +0000 (22:43 +0000)]
acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.

* acinclude.m4 (LIBGFOR_TARGET_ILP32): Remove test.
* configure.ac: Don't call LIBGFOR_TARGET_ILP32.
* configure: Regenerate.
* config.h.in: Regenerate.

From-SVN: r128635