gcc.git
16 years agochecks.adb, [...]: Improve warnings for address overlays.
Robert Dewar [Wed, 26 Sep 2007 10:42:29 +0000 (12:42 +0200)]
checks.adb, [...]: Improve warnings for address overlays.

2007-09-26  Robert Dewar  <dewar@adacore.com>

* checks.adb, gnat1drv.adb, sem_util.ads: Improve warnings for address
overlays.

* sem_ch13.ads, sem_ch13.adb: Improve warnings for address overlays
(Analyze_Record_Representation_Clause): Suppress junk warning for
missing component clause.
(Analyze_Attribute_Definition_Clause, case Address): Apply the special
tests for controlled type overlay to composites with controlled
components.
(Analyze_Record_Representation_Clause): Add reference for component name

From-SVN: r128785

16 years agoa-tags.adb:
Javier Miranda [Wed, 26 Sep 2007 10:42:20 +0000 (12:42 +0200)]
a-tags.adb:

2007-09-26  Javier Miranda  <miranda@adacore.com>
    Eric Botcazou  <ebotcazou@adacore.com>

* a-tags.adb:
(Get_HT_Link/Set_HT_Link): Updated to handle the additional level of
 indirection added to the HT_Link component of the TSD. This is required
 to statically allocate the TSD.

* a-tags.ads:
Minor reordering of the declarations in the private part. Required to
add a level of indirection to the contents of the TSD component HT_Link.
This is required to statically allocate the TSD.

* decl.c (gnat_to_gnu_entity) <object>: Do not exclude objects with
Is_Statically_Allocated set from constant objects.
Do not make exported constants created by the compiler volatile.
(gnat_to_gnu_param): Do not treat an IN parameter whose address is taken
as read-only.

* trans.c (Identifier_to_gnu): For constants, unshare initializers
before returning them.

* exp_disp.ads, exp_disp.adb (Building_Static_DT): Spec moved to the
public part of the package.
(Make_DT): Move HT_Link component out of the TSD record. For this
purpose Make_DT now declares a separate object that stores the
HT_Link value, and initializes the TSD component with the address
of this new object. The addition of this level of indirection is
required to statically allocate the TSD because the TSD cannot
have variable components.
(Expand_Interface_Conversion): Improve the expanded code.
(Expand_Interface_Thunk): Set Is_Thunk in the thunk entity.

* sem_disp.adb (Check_Dispatching_Operation): In case of a body
declaring a primitive operation ---allowed by RM 3.9.2 (13.e/2)---,
if we are building static dispatch tables then we must not generate
extra code to register the primitive because the dispatch table will
be built at the end of the library package; otherwise we notify that
we cannot build the static dispatch table.

From-SVN: r128784

16 years agognatvsn.ads (PCS_Version_Number, [...]): Removed.
Thomas Quinot [Wed, 26 Sep 2007 10:42:09 +0000 (12:42 +0200)]
gnatvsn.ads (PCS_Version_Number, [...]): Removed.

2007-09-26  Thomas Quinot  <quinot@adacore.com>
    Sergey Rybin  <rybin@adacore.com>

* gnatvsn.ads (PCS_Version_Number, ASIS_Version_Number): Removed.

* exp_dist.ads (PCS_Version_Number): Move from Gnatvsn to Exp_Dist,
where it belongs.

* opt.ads: Move ASIS_Version_Number from Gnatvsn into Tree_IO.

* rtsfind.adb (PCS_Version_Number): Move from Gnatvsn to Exp_Dist,
where it belongs.

* sem_dist.ads: Minor comment fix

* tree_io.ads: Move ASIS_Version_Number from Gnatvsn into Tree_IO.

From-SVN: r128783

16 years agoadaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around #include <utime...
Olivier Hainque [Wed, 26 Sep 2007 10:41:58 +0000 (12:41 +0200)]
adaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around #include <utime.h> and #define GCC_RESOURCE_H...

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

* adaint.c (if defined (__Lynx__)): Wrap #def/#undef VMOS_DEV around
#include <utime.h> and #define GCC_RESOURCE_H before
#include <sys/wait.h>.
Add more protections in __gnat_translate_vms.

* expect.c (if defined (__Lynx__)): #define GCC_RESOURCE_H before
#include <sys/wait.h>.

From-SVN: r128782

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