platform/upstream/gcc.git
15 years agoarm.c (arm_rtx_costs_1): Use power_of_two_operand where appropriate.
Kazu Hirata [Wed, 22 Apr 2009 16:52:17 +0000 (16:52 +0000)]
arm.c (arm_rtx_costs_1): Use power_of_two_operand where appropriate.

* config/arm/arm.c (arm_rtx_costs_1): Use power_of_two_operand
where appropriate.

From-SVN: r146602

15 years ago* cpplib.pot: Regenerate.
Joseph Myers [Wed, 22 Apr 2009 16:32:24 +0000 (17:32 +0100)]
* cpplib.pot: Regenerate.

From-SVN: r146599

15 years ago* gcc.pot: Regenerate.
Joseph Myers [Wed, 22 Apr 2009 16:31:16 +0000 (17:31 +0100)]
* gcc.pot: Regenerate.

From-SVN: r146598

15 years agoexgettext: Also look for */*/config-lang.in to find language subdirectories.
Joseph Myers [Wed, 22 Apr 2009 16:28:08 +0000 (17:28 +0100)]
exgettext: Also look for */*/config-lang.in to find language subdirectories.

* exgettext: Also look for */*/config-lang.in to find language
subdirectories.

From-SVN: r146596

15 years agoarm.c (arm_size_rtx_costs): Treat a PLUS with a shift the same as a PLUS without...
Kazu Hirata [Wed, 22 Apr 2009 16:09:40 +0000 (16:09 +0000)]
arm.c (arm_size_rtx_costs): Treat a PLUS with a shift the same as a PLUS without a shift.

* config/arm/arm.c (arm_size_rtx_costs): Treat a PLUS with a shift
the same as a PLUS without a shift.  Increase the cost of a
CONST_INT in MULT.

From-SVN: r146595

15 years agoMakefile.in: Update dependencies.
Manuel López-Ibáñez [Wed, 22 Apr 2009 16:01:29 +0000 (16:01 +0000)]
Makefile.in: Update dependencies.

2009-04-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

* Makefile.in: Update dependencies.
* errors.c (warning): Remove unused parameter 'opt'. Returns
'void'.
* errors.h: Remove bogus comment about compatibility.
(warning): Update declaration.
* genautomata.c: Update all calls to warning.
* gimple.c: Do not include errors.h. Include toplev.h.
* tree-ssa-structalias.c: Do not include errors.h.
* omega.c: Likewise.
* tree-ssa-reassoc.c: Likewise.
* config/spu/spu-c.c: Likewise.
* config/spu/t-spu-elf: Update dependencies.

From-SVN: r146594

15 years agore PR testsuite/39632 (Revision 145497 caused extra failures on Linux/ia64)
Steve Ellcey [Wed, 22 Apr 2009 15:53:05 +0000 (15:53 +0000)]
re PR testsuite/39632 (Revision 145497 caused extra failures on Linux/ia64)

PR testsuite/39623
* gcc.dg/vect/no-vfa-vect-43.c Fix vect_no_align check.

From-SVN: r146593

15 years agore PR middle-end/39824 (ice in fold-const.c)
Richard Guenther [Wed, 22 Apr 2009 15:41:48 +0000 (15:41 +0000)]
re PR middle-end/39824 (ice in fold-const.c)

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

PR tree-optimization/39824
* tree-ssa-ccp.c (fold_const_aggregate_ref): For INDIRECT_REFs
make sure the types are compatible.

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

From-SVN: r146592

15 years agore PR c++/14875 (When using 'or' keyword, the error message speaks of a '||' token)
Manuel López-Ibáñez [Wed, 22 Apr 2009 15:32:18 +0000 (15:32 +0000)]
re PR c++/14875 (When using 'or' keyword, the error message speaks of a '||' token)

2009-04-22  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR c++/14875
* c-common.c (c_parse_error): Take a token_flags parameter.
Use token_type for the token type instead.
Pass token_flags to cpp_type2name.
* c-common.h (c_parse_error): Update declaration.
* c-parser.c (c_parser_error): Pass 0 as token flags.
libcpp/
* lex.c (cpp_type2name): Take a flags parameter. Call
cpp_named_operator2name for named operators and cpp_digraph2name
for digraphs.
(cpp_digraph2name): New.
(cpp_spell_token): Use it.
(cpp_output_token): Likewise.
* include/cpplib.h (cpp_type2name): Update declaration.
* init.c (cpp_named_operator2name): New.
* internal.h (cpp_named_operator2name): Declare.
cp/
* parser.c (cp_parser_error): Pass token->flags to c_parse_error.
testsuite/
* g++.dg/parse/parser-pr14875.C: New.
* g++.dg/parse/parser-pr14875-2.C: New.
* g++.dg/parse/error6.C: Update match string.

From-SVN: r146589

15 years agore PR rtl-optimization/39580 (Revision 145204 caused libgomp.c++/collapse-2.C)
Andrey Belevantsev [Wed, 22 Apr 2009 15:25:58 +0000 (19:25 +0400)]
re PR rtl-optimization/39580 (Revision 145204 caused libgomp.c++/collapse-2.C)

    PR rtl-optimization/39580
    * sel-sched-ir.c (insert_in_history_vect): Remove incorrect gcc_assert.

From-SVN: r146588

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 15:14:51 +0000 (17:14 +0200)]
[multiple changes]

2009-04-22  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb: Create block around procedure call when actual is a
concatenation.

2009-04-22  Thomas Quinot  <quinot@adacore.com>

* s-soflin.ads: Fix typos

2009-04-22  Vincent Celier  <celier@adacore.com>

* prj-env.adb: Minor comment change

* prj-nmsc.adb (Check_Common): Add guard to avoid calling
Get_Name_String with No_File.

* tempdir.adb (Create_Temp_File): Output diagnostic when temp file
cannot be created even when not in verbose mode.

From-SVN: r146587

15 years agomake.adb, [...] (Create_Mapping_File): merge the two versions for Ada_Only and Multi_...
Emmanuel Briot [Wed, 22 Apr 2009 15:10:29 +0000 (15:10 +0000)]
make.adb, [...] (Create_Mapping_File): merge the two versions for Ada_Only and Multi_Language modes...

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* make.adb, prj-env.adb, prj-env.ads, prj-nmsc.adb, prj.adb,
prj.ads (Create_Mapping_File): merge the two versions for Ada_Only and
Multi_Language modes, to avoid code duplication.
(Project_Data.Include_Language): Removed.

From-SVN: r146586

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 15:06:51 +0000 (17:06 +0200)]
[multiple changes]

2009-04-22  Vincent Celier  <celier@adacore.com>

* tempdir.adb (Create_Temp_File): Add a diagnostic in verbose mode when
the temporary file cannot be created, indicating the directory when the
creation was attempted.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj-env.adb, prj-env.ads (Create_Mapping_File): we need to compare
the language names, not their indices.

From-SVN: r146585

15 years ago2009-04-22 Emmanuel Briot <briot@adacore.com>
Emmanuel Briot [Wed, 22 Apr 2009 15:03:51 +0000 (15:03 +0000)]
2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj.ads, prj-nmsc.adb, prj-env.adb, prj-env.ads
(Source_Data.Language_Name): Field removed.

From-SVN: r146584

15 years agoprj.adb, [...] (Project_Data.Unit_Based_Language_*): Two fields removed.
Emmanuel Briot [Wed, 22 Apr 2009 15:00:28 +0000 (15:00 +0000)]
prj.adb, [...] (Project_Data.Unit_Based_Language_*): Two fields removed.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj.adb, prj.ads, prj-nmsc.adb (Project_Data.Unit_Based_Language_*):
Two fields removed.

From-SVN: r146582

15 years ago* include/ext/atomicity.h
Jan Hubicka [Wed, 22 Apr 2009 13:13:55 +0000 (15:13 +0200)]
* include/ext/atomicity.h
(__exchange_and_add, __atomic_add): Mark throw ().
* config/os/aix/atomicity.h
* config/os/aix/atomicity.h
* config/os/irix/atomicity.h
* config/cpu/cris/atomicity.h
* config/cpu/m68k/atomicity.h
* config/cpu/hppa/atomicity.h
* config/cpu/sparc/atomicity.h
* config/cpu/i386/atomicity.h
* config/cpu/i486/atomicity.h
* config/cpu/sh/atomicity.h
* config/cpu/generic/atomicity_mutex/atomicity.h
* config/cpu/generic/atomicity_builtins/atomicity.h
(__exchange_and_add, __atomic_add): Mark throw ().

From-SVN: r146576

15 years agoprj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the separate_suffix to...
Emmanuel Briot [Wed, 22 Apr 2009 12:45:39 +0000 (12:45 +0000)]
prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the separate_suffix to the same value as the body_suffix.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb (Check_Naming_Ada_Only): Properly initialize the
separate_suffix to the same value as the body_suffix.

From-SVN: r146574

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 12:12:36 +0000 (14:12 +0200)]
[multiple changes]

2009-04-22  Robert Dewar  <dewar@adacore.com>

* prj.adb: Minor code reorganization
Code clean up.

* prj-proc.adb: Minor code reorganization, clean up.

* prj-nmsc.adb: Minor reformatting
Minor code reorganization

* gnat_ugn.texi: Add to doc on strict aliasing

2009-04-22  Pascal Obry  <obry@adacore.com>

* s-osinte-mingw.ads: Rename Reserved field in CRITICAL_SECTION to
SpinCount.

* s-tasini.adb: Minor reformatting.

* s-tassta.adb: Minor reformatting.

From-SVN: r146573

15 years agofunction.c (expand_function_end): Do not emit a jump to the "naked" return label...
Ulrich Weigand [Wed, 22 Apr 2009 11:31:56 +0000 (11:31 +0000)]
function.c (expand_function_end): Do not emit a jump to the "naked" return label for fall-through returns.

* function.c (expand_function_end): Do not emit a jump to the "naked"
return label for fall-through returns.
* except.c (sjlj_emit_function_exit): Always place the call to the
unregister function at the location installed by expand_function_end.

From-SVN: r146570

15 years agore PR tree-optimization/39845 (ICE: in make_decl_rtl, at varasm.c:1304)
Richard Guenther [Wed, 22 Apr 2009 11:30:04 +0000 (11:30 +0000)]
re PR tree-optimization/39845 (ICE: in make_decl_rtl, at varasm.c:1304)

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

PR tree-optimization/39845
* tree-switch-conversion.c (build_arrays): Add new referenced vars.
(gen_inbound_check): Likewise.

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

From-SVN: r146569

15 years agoprj-proc.adb, [...] (Check_Naming_Schemes): split into several smaller subprograms.
Emmanuel Briot [Wed, 22 Apr 2009 11:01:03 +0000 (11:01 +0000)]
prj-proc.adb, [...] (Check_Naming_Schemes): split into several smaller subprograms.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj-nmsc.adb (Check_Naming_Schemes): split into several
smaller subprograms.
Renamed to Check_File_Naming_Schemes to avoid confusion with the
other Check_Naming_Schemes functions that plays a totally different
role.
(Check_Unit_Based_Lang, Check_File_Based_Lang): new subprograms,
extracted from the above. These were partially rewritten to avoid
unnecessary code and temporary variables.
(Compute_Unit_Name): new subprogram, merge of Check_Unit_Based_Lang
and Get_Unit (which for now still exist since they contain mode-specific
code)

From-SVN: r146568

15 years agoprj.ads, [...] (Recursive_Process): Remove duplicated code.
Emmanuel Briot [Wed, 22 Apr 2009 10:57:10 +0000 (10:57 +0000)]
prj.ads, [...] (Recursive_Process): Remove duplicated code.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj.ads, prj.adb, prj-nmsc.adb, prj-proc.adb (Recursive_Process):
Remove duplicated code.
(Canonical_Case_File_Name): new subprogram
(Check_And_Normalize_Unit_Names): new subprogram
(Write_Attr): new subprogram
Better sharing of code
(Check_Naming_Ada_Only, Check_Naming_Multi_Lang): new subprogram, to
split Check_Naming and help find duplicated code
(Check_Common): new subprogram, sharing code between ada_only and
multi_language mode.
(Naming_Data.Dot_Repl_Loc): field removed

From-SVN: r146567

15 years agogthr-vxworks.h (struct __gthread_once_t): Add alignment and padding for PPC.
Nathan Sidwell [Wed, 22 Apr 2009 10:53:53 +0000 (10:53 +0000)]
gthr-vxworks.h (struct __gthread_once_t): Add alignment and padding for PPC.

* gthr-vxworks.h (struct __gthread_once_t): Add alignment and
padding for PPC.
(__GTHREAD_ONCE_INIT): Adjust ppc initializer.
* config/vxlib.c (__gthread_once): Add race guard for PPC.

From-SVN: r146566

15 years agoprj-proc.adb, [...] (Load_Naming_Exceptions): New subprogram.
Emmanuel Briot [Wed, 22 Apr 2009 10:51:36 +0000 (10:51 +0000)]
prj-proc.adb, [...] (Load_Naming_Exceptions): New subprogram.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj-nmsc.adb (Load_Naming_Exceptions): New subprogram.
Minor refactoring to reduce the size of
Process_Sources_In_Multi_Language_Mode.
Avoid extra copied of Source_Data, which we found in the past could be
quite slow.
(Mark_Excluded_Sources): new subprogram.
(Remove_Locally_Removed_Files_From_Units): merged into the above
  Refactors Process_Sources_In_Multi_Language_Mode to reduce its size,
  and allow better sharing of code between multi_lang and ada_only modes
(Project_Extends): removed, since exact duplicate of Prj.Is_Extending

From-SVN: r146565

15 years agoprj-proc.adb, [...] (Project_Data.First_Referred_By): Removed, since unused.
Emmanuel Briot [Wed, 22 Apr 2009 10:46:16 +0000 (10:46 +0000)]
prj-proc.adb, [...] (Project_Data.First_Referred_By): Removed, since unused.

2009-04-22  Emmanuel Briot  <briot@adacore.com>

* prj-proc.adb, prj.adb, prj.ads (Project_Data.First_Referred_By):
Removed, since unused.

From-SVN: r146564

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 10:42:35 +0000 (12:42 +0200)]
[multiple changes]

2009-04-22  Robert Dewar  <dewar@adacore.com>

* sem_aggr.adb: Minor reformatting.

* sem_type.adb: Minor reformatting

2009-04-22  Vincent Celier  <celier@adacore.com>

* prj-attr.adb: New single project level attribute
Separate_Run_Path_Options.

* prj-nmsc.adb (Process_Project_Level_Simple_Attributes): Process
attribute Seperate_Run_Path_Options.

* prj.ads: (Project_Configuration): New Boolean component
Separate_Run_Path_Options, defaulted to False.

* snames.ads-tmpl: New standard name Seperate_Run_Path_Options

From-SVN: r146563

15 years agomlib.adb: Minor reformatting
Robert Dewar [Wed, 22 Apr 2009 10:36:37 +0000 (10:36 +0000)]
mlib.adb: Minor reformatting

2009-04-22  Robert Dewar  <dewar@adacore.com>

* mlib.adb: Minor reformatting

* sem_aggr.adb: Minor reformatting. Defend against junk aggregate from
syntax error.

From-SVN: r146562

15 years agolink.c: Add flag __gnat_separate_run_path_options.
Nicolas Setton [Wed, 22 Apr 2009 10:33:15 +0000 (10:33 +0000)]
link.c: Add flag __gnat_separate_run_path_options.

2009-04-22  Nicolas Setton  <setton@adacore.com>

* link.c: Add flag __gnat_separate_run_path_options.

* mlib.adb (Separate_Run_Path_Options): New subprogram.

* mlib.ads (Separate_Run_Path_Options): Declare.

* gnatcmd.adb (Process_Link): Add support for emitting one "rpath"
switch per directory, rather than one "rpath" switch listing all
directories.

* gnatlink.adb (Process_Binder_File): Likewise.

* make.adb (Gnatmake): Likewise.

From-SVN: r146561

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 10:14:53 +0000 (12:14 +0200)]
[multiple changes]

2009-04-22  Ed Schonberg  <schonberg@adacore.com>

* gnat1drv.adb: Fix typo

2009-04-22  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch6.adb (Make_Build_In_Place_Call_In_Assignment): Code cleanup.
Add a call to Move_Final_List when the target of the assignment is a
return object that needs finalization and the expression is a
controlled build-in-place function.

2009-04-22  Vincent Celier  <celier@adacore.com>

* make.adb (Gnatmake, Bind_Step): call Set_Ada_Paths with
Including_Libraries set to True.

From-SVN: r146560

15 years agolib-load.ads, [...] (Make_Child_Decl_Unit): New subprogram...
Ed Schonberg [Wed, 22 Apr 2009 10:11:00 +0000 (10:11 +0000)]
lib-load.ads, [...] (Make_Child_Decl_Unit): New subprogram...

2009-04-22  Ed Schonberg  <schonberg@adacore.com>

* lib-load.ads, lib-load.adb (Make_Child_Decl_Unit): New subprogram, to
create a unit table entry for the subprogram declaration created for a
child suprogram body that has no separate specification.

* sem_ch10.adb (Analyze_Compilation_Unit): For a child unit that is a
subprogram body, call Make_Child_Decl_Unit.

* lib.adb (Get_Cunit_Unit_Number): Verify that an entry not yet in the
table can only be the created specification of a child subprogram body
that is the main unit, which has not been entered in the table yet.

* errout.adb  (Output_Messages): Ignore created specification of a
child subprogram body to prevent repeated listing of error messages.

* gnat1drv.adb (gnat1drv): The generated specification for a child
subprogram body does not generate code.

From-SVN: r146559

15 years ago[multiple changes]
Arnaud Charlet [Wed, 22 Apr 2009 09:57:03 +0000 (11:57 +0200)]
[multiple changes]

2009-04-22  Robert Dewar  <dewar@adacore.com>

* lib-load.adb: Minor reformatting

2009-04-22  Arnaud Charlet  <charlet@adacore.com>

* s-bitops.adb, s-bitops.ads (Raise_Error): Do not use Ada 05 syntax,
since this unit is now part of bootstrap units, so must use Ada 95
syntax only.

2009-04-22  Thomas Quinot  <quinot@adacore.com>

* a-tasatt.adb: Minor reformatting

2009-04-22  Bob Duff  <duff@adacore.com>

* s-stalib.ads: Remove "with System;" since we're inside System, so
it's unnecessary.

2009-04-22  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Add_Source): Always put the dependency file name in
the source record, as there may be a dependency file even if no object
file is created.

From-SVN: r146558

15 years agolib-load.adb: MInor reformatting
Robert Dewar [Wed, 22 Apr 2009 09:50:01 +0000 (09:50 +0000)]
lib-load.adb: MInor reformatting

2009-04-22  Robert Dewar  <dewar@adacore.com>

* lib-load.adb: MInor reformatting

* lib-load.ads: Minor reformatting

* sinfo.ads: Minor reformatting

From-SVN: r146557

15 years agoexp_pakd.adb: Minor comment fixes.
Bob Duff [Wed, 22 Apr 2009 09:46:29 +0000 (09:46 +0000)]
exp_pakd.adb: Minor comment fixes.

2009-04-22  Bob Duff  <duff@adacore.com>

* exp_pakd.adb: Minor comment fixes.

* sinfo.ads, par-load.adb, sem_ch10.adb, lib-load.ads, lib-load.adb
sem_ch12.adb: Change the meaning of the Library_Unit attribute to
include units containing instantiations, as well as units that are
generic instantiations.

* sem.adb: Include dependents and corresponding specs/bodies in the
unit walk.

* gcc-interface/Make-lang.in:
sem now depends on s-bitops, because of the packed array of Booleans.

From-SVN: r146556

15 years agore PR fortran/39735 (procedure pointer assignments: return value is not checked)
Janus Weil [Wed, 22 Apr 2009 09:05:58 +0000 (11:05 +0200)]
re PR fortran/39735 (procedure pointer assignments: return value is not checked)

2009-04-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39735
* decl.c (add_hidden_procptr_result): Bugfix for procptr results.
(match_procedure_decl): Set if_source.
* expr.c (gfc_check_pointer_assign): Bugfix: Return after error.
And: Check interface also for IFSRC_UNKNOWN (return type may be known).
* gfortran.h (typedef enum ifsrc): Remove IFSRC_USAGE,
add documentation. Rename copy_formal_args and copy_formal_args_intr.
* interface.c (gfc_compare_interfaces): Check for return types,
handle IFSRC_UNKNOWN.
(compare_intr_interfaces,compare_actual_formal_intr): Obsolete, removed.
(gfc_procedure_use): Modified handling of intrinsics.
* intrinsic.c (add_functions): Bugfix for "dim".
* resolve.c (resolve_intrinsic): New function to resolve intrinsics,
which copies the interface from isym to sym.
(resolve_procedure_expression,resolve_function): Use new function
'resolve_intrinsic'.
(resolve_symbol): Add function attribute for externals with return type
and use new function 'resolve_intrinsic'.
* symbol.c (ifsrc_types): Remove string for IFSRC_USAGE.
(copy_formal_args): Renamed to gfc_copy_formal_args.
(copy_formal_args_intr): Renamed to gfc_copy_formal_args_intr.
* trans-const.c (gfc_conv_const_charlen): Handle cl==NULL.

2009-04-22  Janus Weil  <janus@gcc.gnu.org>

PR fortran/39735
* gfortran.dg/assumed_charlen_function_5.f90: Modified.
* gfortran.dg/external_initializer.f90: Modified.
* gfortran.dg/interface_26.f90: Modified.
* gfortran.dg/intrinsic_subroutine.f90: Modified.
* gfortran.dg/proc_ptr_3.f90: Modified.
* gfortran.dg/proc_ptr_15.f90: New.
* gfortran.dg/proc_ptr_result_1.f90: Modified.

From-SVN: r146554

15 years agosh.c (shift_insns_rtx, [...]): Truncate shift counts to avoid out-of-bounds array...
Paolo Bonzini [Wed, 22 Apr 2009 09:01:43 +0000 (09:01 +0000)]
sh.c (shift_insns_rtx, [...]): Truncate shift counts to avoid out-of-bounds array accesses.

2009-04-22  Paolo Bonzini  <bonzini@gnu.org>

* config/sh/sh.c (shift_insns_rtx, shiftcosts, gen_shifty_op,
sh_dynamicalize_shift_p, shl_and_scr_length): Truncate
shift counts to avoid out-of-bounds array accesses.

From-SVN: r146553

15 years agosparc.h (POINTER_SIZE): Fix comment.
Paolo Bonzini [Wed, 22 Apr 2009 08:59:26 +0000 (08:59 +0000)]
sparc.h (POINTER_SIZE): Fix comment.

2009-04-22  Paolo Bonzini  <bonzini@gnu.org>

* config/sparc/sparc.h (POINTER_SIZE): Fix comment.
(Pmode): Move above.

From-SVN: r146552

15 years agoada-tree.def: Fix formatting nits.
Eric Botcazou [Wed, 22 Apr 2009 08:34:09 +0000 (08:34 +0000)]
ada-tree.def: Fix formatting nits.

* gcc-interface/ada-tree.def: Fix formatting nits.
(REGION_STMT): Delete.
(HANDLER_STMT): Likewise.
* gcc-interface/ada-tree.h: Fix formatting nits.
(IS_STMT): Delete.
(REGION_STMT_BODY): Likewise.
(REGION_STMT_HANDLE): Likewise.
(REGION_STMT_BLOCK): Likewise.
(HANDLER_STMT_ARG): Likewise.
(HANDLER_STMT_LIST): Likewise.
(HANDLER_STMT_BLOCK): Likewise.
* gcc-interface/gigi.h (fp_prec_to_size): Update comment.
(fp_size_to_prec): Likewise.
(largest_move_alignment): Delete.
(gnat_compute_largest_alignment): Likewise.
Fix minor nits.
* gcc-interface/decl.c (gnat_to_gnu_entity) <E_Signed_Integer_Subtype>:
Remove redundant code.
<E_Array_Type>: Remove redundant assert.
<E_Array_Subtype>: Exit early from index computation in pathological
cases.
Rewrite conditional assignment.
(make_type_from_size): Likewise.
* gcc-interface/misc.c (largest_move_alignment): Delete.
(gnat_finish_incomplete_decl): Likewise.
(LANG_HOOKS_FINISH_INCOMPLETE_DECL): Likewise.
(asm_out_file): Likewise
(gnat_print_type) <INTEGER_TYPE>: Fall through to ENUMERAL_TYPE case.
(gnat_dwarf_name): Move around.
* gcc-interface/trans.c (Attribute_to_gnu): Fix minor nits.
(gigi): Remove call to gnat_compute_largest_alignment.
* utils.c (create_field_decl): Rewrite conditional assignment.
Fix minor nits.

From-SVN: r146551

15 years agoalpha.c: Use REG_P...
Uros Bizjak [Wed, 22 Apr 2009 08:19:54 +0000 (10:19 +0200)]
alpha.c: Use REG_P...

* config/alpha/alpha.c: Use REG_P, MEM_P, CONST_INT_P, JUMP_P,
NONJUMP_INSN_P, CALL_P, LABEL_P and NOTE_P predicates instead of
GET_CODE macro.  Use IN_RANGE macro where appropriate.
* config/alpha/alpha.h: Ditto.
* config/alpha/alpha.md: Ditto.
* config/alpha/constraints.md: Ditto.
* config/alpha/predicates.md: Ditto.

From-SVN: r146550

15 years agodecl.c (gnat_to_gnu_entity): Compute is_type predicate on entry.
Eric Botcazou [Wed, 22 Apr 2009 07:57:09 +0000 (07:57 +0000)]
decl.c (gnat_to_gnu_entity): Compute is_type predicate on entry.

* gcc-interface/decl.c (gnat_to_gnu_entity): Compute is_type predicate
on entry.  Defer common processing for types.  Reorder and clean up.
Compute the equivalent GNAT node and the default size for types only.
<E_Modular_Integer_Type>: Directly use Esize for the type's precision.
<E_Access_Type>: For an unconstrained designated type, do not pretend
that a dummy type is always made.
<all> Fix nits in comments.
(validate_size): Fix formatting nits and comments.
(set_rm_size): Likewise.
* gcc-interface/utils.c (create_param_decl): Replace bogus argument
passed to TARGET_PROMOTE_PROTOTYPES hook.

From-SVN: r146549

15 years agodefaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default.
Paolo Bonzini [Wed, 22 Apr 2009 07:49:46 +0000 (07:49 +0000)]
defaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default.

2009-04-22  Paolo Bonzini  <bonzini@gnu.org>

* defaults.h (GO_IF_MODE_DEPENDENT_ADDRESS): Provide empty default.
* config/frv/frv.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/s390/s390.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/m32c/m32c.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/spu/spu.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/i386/i386.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/sh/sh.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/pdp11/pdp11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/avr/avr.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/crx/crx.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/fr30/fr30.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/m68hc11/m68hc11.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/cris/cris.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/iq2000/iq2000.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/mn10300/mn10300.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/ia64/ia64.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/m68k/m68k.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/picochip/picochip.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/arc/arc.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/mcore/mcore.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/score/score.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/arm/arm.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/pa/pa.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/mips/mips.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/v850/v850.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/mmix/mmix.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.
* config/bfin/bfin.h (GO_IF_MODE_DEPENDENT_ADDRESS): Delete.

From-SVN: r146548

15 years agofe.h (Get_External_Name): Declare.
Eric Botcazou [Wed, 22 Apr 2009 07:28:48 +0000 (07:28 +0000)]
fe.h (Get_External_Name): Declare.

* fe.h (Get_External_Name): Declare.
* gcc-interface/gigi.h (concat_id_with_name): Rename to...
(concat_name): ...this.
* gcc-interface/decl.c (gnat_to_gnu_entity): Rename gnu_entity_id to
gnu_entity_name and adjust for above renaming.
<E_Access_Type>: Use create_concat_name to get the name of the various
types associated with unconstrained array types.
(make_aligning_type): Adjust for above renaming.
(maybe_pad_type): Likewise.
(components_to_record): Likewise.  Use get_identifier_with_length for
the encoding of the variant.
(get_entity_name): Use get_identifier_with_length.
(create_concat_name): Likewise.  Use Get_External_Name if no suffix.
Do not fiddle with Name_Buffer.
(concat_id_with_name): Rename to...
(concat_name): ...this.  Use get_identifier_with_length.  Do not fiddle
with Name_Buffer.
* gcc-interface/utils.c (rest_of_record_type_compilation): Adjust for
above renaming.

From-SVN: r146547

15 years agoSplit ChangeLog
Eric Botcazou [Wed, 22 Apr 2009 06:44:39 +0000 (06:44 +0000)]
Split ChangeLog

From-SVN: r146545

15 years agocfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks references from comments.
Laurynas Biveinis [Wed, 22 Apr 2009 04:48:34 +0000 (04:48 +0000)]
cfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks references from comments.

2009-04-22  Laurynas Biveinis  <laurynas.biveinis@gmail.com>

* cfghooks.c (tidy_fallthru_edges): Remove find_basic_blocks
references from comments.
* cfgbuild.c: (count_basic_blocks): Delete.
(find_basic_blocks_1): Delete.
(find_basic_blocks): Delete.
* except.c (finish_eh_generation): Make static.  Move comment
from
except.h here.  Remove find_basic_blocks references from
comments.
* except.h (finish_eh_generation): Delete.
* basic-block.h (find_basic_blocks): Delete.
* config/sh/sh.c (sh_output_mi_thunk): Delete a "#if 0" block.

From-SVN: r146544

15 years agosdbout.c (sdbout_symbol): Pass VOIDmode to eliminate_regs.
Dave Korn [Wed, 22 Apr 2009 01:50:03 +0000 (01:50 +0000)]
sdbout.c (sdbout_symbol): Pass VOIDmode to eliminate_regs.

* sdbout.c (sdbout_symbol):  Pass VOIDmode to eliminate_regs.
(sdbout_parms):  Likewise.

From-SVN: r146543

15 years agoDaily bump.
GCC Administrator [Wed, 22 Apr 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r146542

15 years agosh.c (prepare_cbranch_operands): Use LAST_AND_UNUSED_RTX_CODE instead of CODE_FOR_not...
Kaz Kojima [Tue, 21 Apr 2009 22:18:34 +0000 (22:18 +0000)]
sh.c (prepare_cbranch_operands): Use LAST_AND_UNUSED_RTX_CODE instead of CODE_FOR_nothing.

* config/sh/sh.c (prepare_cbranch_operands): Use
LAST_AND_UNUSED_RTX_CODE instead of CODE_FOR_nothing.
(expand_cbranchdi4): Likewise.
(from_compare): Add cast to enum type.
(expand_cbranchsi4): Use add_reg_note.
(output_stack_adjust, push, pop, sh_expand_prologue): Likewise.
(sh_insn_length_adjustment): Use sh_cpu_attr instead of sh_cpu.
(sh_initialize_trampoline): Change 0 to LCT_NORMAL in function call.
(sh_expand_builtin): Change 0 to EXPAND_NORMAL in function call.
* config/sh/sh.md (cbranchsi4): Use LAST_AND_UNUSED_RTX_CODE
instead of CODE_FOR_nothing.
(cbranchdi4): Likewise.  Fix the order of arguments for
gen_rtx_fmt_ee.
(push_fpscr): Use add_reg_note.
(pop_fpscr, movdf_i4+1, reload_outdf__RnFRm+3, reload_outdf__RnFRm+4,
reload_outdf__RnFRm+5, fpu_switch+1, fpu_switch+2): Likewise.

From-SVN: r146539

15 years agore PR c++/35711 (bad text in -Wcast-qual warning (forgets volatile))
Manuel López-Ibáñez [Tue, 21 Apr 2009 19:49:23 +0000 (19:49 +0000)]
re PR c++/35711 (bad text in -Wcast-qual warning (forgets volatile))

2009-04-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR c++/35711
cp/
* typeck.c (check_for_casting_away_constness): We diagnose casting
away any qualifiers not just constness.
(casts_away_constness): Mention that it handles more than just
constness.
testsuite/
* g++.dg/warn/pr35711.C: New.
* g++.dg/conversion/ptrmem2.C: Update.

From-SVN: r146537

15 years agoABOUT-GCC-NLS, [...]: Add copyright and license notices.
Joseph Myers [Tue, 21 Apr 2009 19:03:23 +0000 (20:03 +0100)]
ABOUT-GCC-NLS, [...]: Add copyright and license notices.

* ABOUT-GCC-NLS, ChangeLog, ChangeLog-1997, ChangeLog-1998,
ChangeLog-1999, ChangeLog-2000, ChangeLog-2001, ChangeLog-2002,
ChangeLog-2003, ChangeLog-2004, ChangeLog-2005, ChangeLog-2006,
ChangeLog-2007, ChangeLog-2008, ChangeLog.dataflow, ChangeLog.lib,
ChangeLog.ptr, ChangeLog.tree-ssa, ChangeLog.tuples, FSFChangeLog,
FSFChangeLog.10, FSFChangeLog.11, LANGUAGES, ONEWS, acinclude.m4,
config/alpha/gnu.h, config/alpha/libgcc-alpha-ldbl.ver,
config/alpha/t-osf4, config/alpha/t-vms, config/alpha/va_list.h,
config/alpha/x-vms, config/arc/t-arc,
config/arm/README-interworking, config/arm/arm-c.c,
config/arm/gentune.sh, config/arm/libgcc-bpabi.ver,
config/arm/t-arm, config/arm/t-arm-elf, config/arm/t-arm-softfp,
config/arm/t-bpabi, config/arm/t-linux, config/arm/t-linux-eabi,
config/arm/t-netbsd, config/arm/t-pe, config/arm/t-strongarm-elf,
config/arm/t-symbian, config/arm/t-vxworks, config/arm/t-wince-pe,
config/avr/t-avr, config/bfin/elf.h, config/bfin/libgcc-bfin.ver,
config/bfin/linux.h, config/bfin/t-bfin, config/bfin/t-bfin-elf,
config/bfin/t-bfin-linux, config/bfin/t-bfin-uclinux,
config/bfin/uclinux.h, config/cris/mulsi3.asm, config/cris/t-cris,
config/cris/t-elfmulti, config/crx/t-crx,
config/darwin-ppc-ldouble-patch.def, config/darwin-sections.def,
config/divmod.c, config/fr30/t-fr30, config/frv/libgcc-frv.ver,
config/frv/t-frv, config/frv/t-linux, config/h8300/genmova.sh,
config/h8300/t-h8300, config/i386/athlon.md,
config/i386/darwin-libgcc.10.4.ver,
config/i386/darwin-libgcc.10.5.ver, config/i386/libgcc-glibc.ver,
config/i386/mach.h, config/i386/netbsd.h, config/i386/t-crtpc,
config/i386/t-cygming, config/i386/t-cygwin, config/i386/t-i386,
config/i386/t-linux64, config/i386/t-nwld,
config/i386/t-rtems-i386, config/i386/t-sol2-10,
config/i386/x-mingw32, config/ia64/div.md, config/ia64/elf.h,
config/ia64/ia64.opt, config/ia64/libgcc-glibc.ver,
config/ia64/libgcc-ia64.ver, config/ia64/linux.h,
config/ia64/sysv4.h, config/ia64/t-hpux, config/ia64/t-ia64,
config/iq2000/abi, config/iq2000/lib2extra-funcs.c,
config/iq2000/t-iq2000, config/libgcc-glibc.ver,
config/m32r/libgcc-glibc.ver, config/m32r/t-linux,
config/m32r/t-m32r, config/m68hc11/t-m68hc11,
config/m68k/t-floatlib, config/m68k/t-linux, config/m68k/t-mlibs,
config/m68k/t-uclinux, config/mcore/t-mcore,
config/mcore/t-mcore-pe, config/mips/20kc.md, config/mips/4130.md,
config/mips/5400.md, config/mips/5500.md, config/mips/crti.asm,
config/mips/crtn.asm, config/mips/irix-crti.asm,
config/mips/irix-crtn.asm, config/mips/libgcc-mips16.ver,
config/mips/mips-dsp.md, config/mips/mips-dspr2.md,
config/mips/mips-fixed.md, config/mips/sb1.md,
config/mips/sr71k.md, config/mips/t-elf, config/mips/t-gofast,
config/mips/t-iris6, config/mips/t-isa3264,
config/mips/t-libgcc-mips16, config/mips/t-linux64,
config/mips/t-mips, config/mips/t-r3900, config/mips/t-rtems,
config/mips/t-sb1, config/mips/t-sde, config/mips/t-sdemtk,
config/mips/t-slibgcc-irix, config/mips/t-sr71k, config/mips/t-st,
config/mips/t-vr, config/mips/t-vxworks, config/mmix/t-mmix,
config/mn10300/t-linux, config/mn10300/t-mn10300,
config/pa/pa32-regs.h, config/pa/t-hpux-shlib, config/pa/t-linux,
config/pa/t-linux64, config/pa/t-pa64, config/pdp11/t-pdp11,
config/picochip/libgccExtras/clzsi2.asm,
config/picochip/t-picochip, config/rs6000/darwin-ldouble-format,
config/rs6000/darwin-libgcc.10.4.ver,
config/rs6000/darwin-libgcc.10.5.ver,
config/rs6000/libgcc-ppc-glibc.ver, config/rs6000/ppc-asm.h,
config/rs6000/t-aix43, config/rs6000/t-aix52,
config/rs6000/t-darwin, config/rs6000/t-fprules,
config/rs6000/t-fprules-fpbit, config/rs6000/t-linux64,
config/rs6000/t-lynx, config/rs6000/t-netbsd,
config/rs6000/t-ppccomm, config/rs6000/t-ppcendian,
config/rs6000/t-ppcgas, config/rs6000/t-rs6000,
config/rs6000/t-rtems, config/rs6000/t-spe,
config/rs6000/t-vxworks, config/s390/libgcc-glibc.ver,
config/score/t-score-elf, config/sh/divcost-analysis,
config/sh/libgcc-glibc.ver, config/sh/t-netbsd, config/sh/t-sh,
config/sh/t-sh64, config/sh/t-superh, config/sh/t-symbian,
config/sparc/libgcc-sparc-glibc.ver, config/sparc/sol2-bi.h,
config/sparc/sol2-gas.h, config/sparc/sol2-gld-bi.h,
config/sparc/t-elf, config/sparc/t-linux64, config/sparc/t-sol2,
config/stormy16/stormy-abi, config/stormy16/t-stormy16,
config/t-darwin, config/t-libunwind, config/t-libunwind-elf,
config/t-linux, config/t-lynx, config/t-slibgcc-elf-ver,
config/t-slibgcc-sld, config/t-sol2, config/t-vxworks,
config/udivmod.c, config/udivmodsi4.c, config/v850/t-v850,
config/v850/t-v850e, config/xtensa/t-xtensa, diagnostic.def,
gdbinit.in, glimits.h, gstab.h, gsyms.h, java/ChangeLog,
java/ChangeLog.ptr, java/ChangeLog.tree-ssa, libgcc-std.ver,
limitx.h, version.c, xcoff.h: Add copyright and license notices.
* config/h8300/genmova.sh: Include copyright and license notices
in generated output.
* config/h8300/mova.md: Regenerate.
* doc/install.texi2html: Include word "Copyright" in copyright
notice and use name "Free Software Foundation, Inc.".
* ChangeLog, ChangeLog-2000, ChangeLog-2001, ChangeLog-2002,
ChangeLog-2003, ChangeLog-2004, ChangeLog-2005, ChangeLog-2006,
ChangeLog-2007, ChangeLog-2008: Correct dates.

ada:
* ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
license notices.

cp:
* ChangeLog, ChangeLog-1993, ChangeLog-1994, ChangeLog-1995,
ChangeLog-1996, ChangeLog-1997, ChangeLog-1998, ChangeLog-1999,
ChangeLog-2000, ChangeLog-2001, ChangeLog-2002, ChangeLog-2003,
ChangeLog-2004, ChangeLog-2005, ChangeLog-2006, ChangeLog-2007,
ChangeLog-2008, ChangeLog.ptr, ChangeLog.tree-ssa, NEWS,
cfns.gperf: Add copyright and license notices.
* cfns.h: Regenerate.
* ChangeLog, ChangeLog-2004: Correct dates.

fortran:
* ChangeLog, ChangeLog-2002, ChangeLog-2003, ChangeLog-2004,
ChangeLog-2005, ChangeLog-2006, ChangeLog-2007, ChangeLog-2008,
ChangeLog.ptr, config-lang.in, ioparm.def, mathbuiltins.def: Add
copyright and license notices.
* ChangeLog, ChangeLog-2005, ChangeLog-2006, ChangeLog-2007,
ChangeLog-2008: Correct dates.

java:
* ChangeLog, ChangeLog.ptr, ChangeLog.tree-ssa: Add copyright and
license notices.

objc:
* ChangeLog: Add copyright and license notices.

objcp:
* ChangeLog: Add copyright and license notices.

po:
* ChangeLog, EXCLUDES: Add copyright and license notices.

testsuite:
* ChangeLog, ChangeLog-1993-2007, ChangeLog-2008, ChangeLog.ptr,
ChangeLog.tree-ssa, README, README.QMTEST, README.compat,
README.gcc, g++.dg/README, g++.dg/compat/break/README,
g++.dg/gomp/gomp.exp, g++.old-deja/g++.brendan/README,
g++.old-deja/g++.oliva/ChangeLog, g++.old-deja/g++.robertl/README,
gcc.c-torture/ChangeLog.0,
gcc.c-torture/execute/builtins/builtins.exp, gcc.dg/README,
gcc.dg/gomp/gomp.exp, gcc.target/frv/frv.exp,
gcc.target/i386/math-torture/math-torture.exp,
gcc.target/mips/inter/mips16-inter.exp,
gcc.target/mips/mips-nonpic/README,
gcc.target/x86_64/abi/README.gcc,
gcc.target/xstormy16/xstormy16.exp, gcc.test-framework/README,
gfortran.dg/g77/README, gfortran.dg/gomp/gomp.exp,
gfortran.fortran-torture/ChangeLog.g95: Add copyright and license
notices.
* ChangeLog-1993-2007, ChangeLog: Correct dates.

From-SVN: r146533

15 years agoc-common.c (c_common_truthvalue_conversion): Use LOCATION to build NE_EXPR operations...
Eric Botcazou [Tue, 21 Apr 2009 17:17:13 +0000 (17:17 +0000)]
c-common.c (c_common_truthvalue_conversion): Use LOCATION to build NE_EXPR operations as well.

* c-common.c (c_common_truthvalue_conversion): Use LOCATION to build
NE_EXPR operations as well.
* c-parser.c (c_parser_condition): Do not set location information on
the condition.
(c_parser_conditional_expression): Likewise.
(c_parser_binary_expression): Set location information on operators.
* c-typeck.c (build_unary_op) <TRUTH_NOT_EXPR>: Reset the location if
TRUTH_NOT_EXPR has been folded.
* fold-const.c (fold_truth_not_expr): Copy location information from
the incoming expression to the outgoing one.
* gimplify.c (shortcut_cond_r): Add locus parameter.  Pass it to
recursive calls on the LHS of the operator but pass that of the
operator to recursive calls on the RHS of the operator.  Set it
on the COND_EXPR.
(shortcut_cond_expr): Set the locus of the operator on the second
COND_EXPR and that of the expression on the first in degenerate cases.
Pass the locus of the expression to calls to shortcut_cond_r.
Set the locus of the 'then' block on the associated jump, if any.
(gimplify_boolean_expr): Add locus parameter.  Set it on the COND_EXPR.
(gimplify_expr) <TRUTH_ANDIF_EXPR>: Pass the locus of the outer
expression to call to gimplify_boolean_expr.
ada/
* gcc-interface/trans.c (gnat_to_gnu): Do not overwrite location info.

From-SVN: r146532

15 years agoFix paths
Eric Botcazou [Tue, 21 Apr 2009 17:09:47 +0000 (17:09 +0000)]
Fix paths

From-SVN: r146531

15 years agoada-tree.h (TYPE_RM_SIZE_NUM): Delete.
Eric Botcazou [Tue, 21 Apr 2009 17:05:09 +0000 (17:05 +0000)]
ada-tree.h (TYPE_RM_SIZE_NUM): Delete.

* ada-tree.h (TYPE_RM_SIZE_NUM): Delete.
(TYPE_RM_SIZE): Access TYPE_LANG_SLOT_1 directly for integral types.
* decl.c (gnat_to_gnu_entity) <E_Modular_Integer_Type>: Remove useless
support code for packed array types and assert its uselessness.
<E_Signed_Integer_Subtype>: Reuse entity identifier in more places and
adjust for TYPE_RM_SIZE change.
<all> Fix nits in comments.  Use Original_Array_Type accessor instead
of Associated_Node_For_Itype accessor for packed array types.
(make_packable_type): Likewise.
(maybe_pad_type): Likewise.
(set_rm_size): Likewise.  Rework conditional statement.  Adjust for
TYPE_RM_SIZE change.
(make_type_from_size): Adjust for TYPE_RM_SIZE change.
(rm_size): Fix nits in comments.  Rework conditional statements.
* misc.c (gnat_print_type): Adjust for TYPE_RM_SIZE change.
* trans.c (Attribute_to_gnu): Fix nits in comments.
* utils.c (gnat_init_decl_processing): Use more appropriate function
to initialize the size_type_node.  Adjust for TYPE_RM_SIZE change.

From-SVN: r146530

15 years agoconfig.gcc: Add additional configuration for i686-w64-mingw* and x86_64-w64-mingw...
Kai Tietz [Tue, 21 Apr 2009 16:41:14 +0000 (16:41 +0000)]
config.gcc: Add additional configuration for i686-w64-mingw* and x86_64-w64-mingw* triplet.

2009-04-21  Kai Tietz  <kai.tietz@onevision.com>

        * config.gcc: Add additional configuration for
        i686-w64-mingw* and x86_64-w64-mingw* triplet.
        * config/i386/mingw-w64.h: New mingw-w64 specific header.
        (CPP_SPEC): Redefine for allowing -municode option.
        (STARTFILE_SPEC): Likewise.
        * config/i386/t-mingw-w64: New.
        * config/i386/mingw-w64.opt: New.
        (municode): Add new target option.
        * doc/invoke.texi (municode): Add documentation for new option.

From-SVN: r146529

15 years agors6000-c.c (altivec_resolve_overloaded_builtin): Correct test for number of arguments.
Ian Lance Taylor [Tue, 21 Apr 2009 13:59:28 +0000 (13:59 +0000)]
rs6000-c.c (altivec_resolve_overloaded_builtin): Correct test for number of arguments.

* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Correct test for number of arguments.
* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Likewise.

From-SVN: r146526

15 years agolinux.h (FINALIZE_TRAMPOLINE): Use enum for second argument of emit_library_call.
Andreas Schwab [Tue, 21 Apr 2009 13:50:36 +0000 (13:50 +0000)]
linux.h (FINALIZE_TRAMPOLINE): Use enum for second argument of emit_library_call.

* config/m68k/linux.h (FINALIZE_TRAMPOLINE): Use enum for second
argument of emit_library_call.

From-SVN: r146525

15 years agore PR tree-optimization/39829 (ICE with some code that produces VCE)
Richard Guenther [Tue, 21 Apr 2009 12:42:24 +0000 (12:42 +0000)]
re PR tree-optimization/39829 (ICE with some code that produces VCE)

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

PR middle-end/39829
* gimple.c (walk_stmt_load_store_addr_ops): Catch addresses
inside VIEW_CONVERT_EXPRs.

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

From-SVN: r146521

15 years agotree-switch-conversion.c (build_constructors): Split a long line.
Martin Jambor [Tue, 21 Apr 2009 11:55:41 +0000 (13:55 +0200)]
tree-switch-conversion.c (build_constructors): Split a long line.

2009-04-21  Martin Jambor  <mjambor@suse.cz>

* tree-switch-conversion.c (build_constructors): Split a long line.
(constructor_contains_same_values_p): New function.
(build_one_array): Create assigns of constants if possible, do not call
mark_sym_for_renaming, call update_stmt.
(build_arrays): Call make_ssa_name (create_tmp_var ()) instead of
make_rename_temp.  Do not call mark_symbols_for_renaming, call
update_stmt.
(gen_def_assigns): Do not call mark_symbols_for_renaming or
find_new_referenced_vars, call update_stmt.
(gen_inbound_check): Use create_tmp_var and create ssa names manually
instead of calling make_rename_temp.  Do not call
find_new_referenced_vars or mark_symbols_for_renaming, call
update_stmt.

* testsuite/gcc.dg/tree-ssa/cswtch-2.c: New test.

From-SVN: r146517

15 years agore PR libstdc++/39835 (Bootstrap failure: libstdc++-v3/include/bits/random.h:3630...
Paolo Carlini [Tue, 21 Apr 2009 11:42:51 +0000 (11:42 +0000)]
re PR libstdc++/39835 (Bootstrap failure: libstdc++-v3/include/bits/random.h:3630: error: expected â,â or â...â before numeric constant)

2009-04-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/39835
* include/bits/random.h: Avoid the badname __alpha (and, for
consistency, __beta too).
* include/bits/random.tcc: Likewise.

From-SVN: r146516

15 years agore PR middle-end/39827 (ICE (segfault) when compiling gcc/varasm.c (in notice_global_...
Richard Guenther [Tue, 21 Apr 2009 09:58:38 +0000 (09:58 +0000)]
re PR middle-end/39827 (ICE (segfault) when compiling gcc/varasm.c (in notice_global_symbol))

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

PR tree-optimization/39827
* tree-ssa-phiprop.c (propagate_with_phi): Check SSA_NAME
is in range.
(tree_ssa_phiprop): Pass the correct array size.

From-SVN: r146515

15 years agoalpha.md (tune): Add cast to enum attr_tune.
Uros Bizjak [Tue, 21 Apr 2009 08:44:25 +0000 (10:44 +0200)]
alpha.md (tune): Add cast to enum attr_tune.

* config/alpha/alpha.md (tune): Add cast to enum attr_tune.

From-SVN: r146484

15 years agore PR c/16202 (The -Wsequence-point warning misses many important instances)
Manuel López-Ibáñez [Tue, 21 Apr 2009 07:47:13 +0000 (07:47 +0000)]
re PR c/16202 (The -Wsequence-point warning misses many important instances)

2009-04-21  Manuel López-Ibáñez  <manu@gcc.gnu.org>

PR 16202
* c-typeck.c (lvalue_p): Move declaration ...
* c-common.h (lvalue_p): ... to here.
* c-common.c (candidate_equal_p): New.
(add_tlist): Use it.
(merge_tlist): Use it.
(warn_for_collisions_1): Likewise.
(warning_candidate_p): Accept more candidates.
(verify_tree): A warning candidate can be an expression. Use
candidate_equal_p.
cp/
* tree.c (lvalue_p_1): Use const_tree.
Use CONST_CAST_TREE to avoid warning.
(lvalue_p): Returns bool, receives const_tree.
testsuite/
* gcc.dg/sequence-pt-1.c: Remove XFAILs.
* gcc.dg/sequence-pt-2.c: New.
* gcc.dg/sequence-pt-3.c: New.
* g++.dg/warn/sequence-pt-1.C: Remove XFAILs.
* g++.dg/warn/sequence-pt-2.c: New.
* g++.dg/warn/sequence-pt-3.c: New.

From-SVN: r146472

15 years ago* gcc.dg/torture/pr39678.c (struct X): Make c field signed char.
Jakub Jelinek [Tue, 21 Apr 2009 07:39:17 +0000 (09:39 +0200)]
* gcc.dg/torture/pr39678.c (struct X): Make c field signed char.

From-SVN: r146470

15 years agodecl.c (gnat_to_gnu_entity): Do not set force_global for imported subprograms.
Eric Botcazou [Tue, 21 Apr 2009 07:27:26 +0000 (07:27 +0000)]
decl.c (gnat_to_gnu_entity): Do not set force_global for imported subprograms.

* gcc-interface/decl.c (gnat_to_gnu_entity): Do not set force_global
for imported subprograms.

From-SVN: r146469

15 years agodecl.c (gnat_to_gnu_entity): Do not make constant objects covered by 13.3(19) volatile.
Eric Botcazou [Tue, 21 Apr 2009 07:10:01 +0000 (07:10 +0000)]
decl.c (gnat_to_gnu_entity): Do not make constant objects covered by 13.3(19) volatile.

* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Do not make
constant objects covered by 13.3(19) volatile.

From-SVN: r146468

15 years agoutils.c (create_type_decl): Do not pass declarations of dummy fat pointer types to...
Eric Botcazou [Tue, 21 Apr 2009 07:00:44 +0000 (07:00 +0000)]
utils.c (create_type_decl): Do not pass declarations of dummy fat pointer types to the debug back-end.

* gcc-interface/utils.c (create_type_decl): Do not pass declarations
of dummy fat pointer types to the debug back-end.

From-SVN: r146467

15 years agoDaily bump.
GCC Administrator [Tue, 21 Apr 2009 00:16:54 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r146466

15 years agore PR target/5267 (invoke.texi "RS/6000 and PowerPC Options" list needs cleanup)
Ben Elliston [Mon, 20 Apr 2009 23:55:53 +0000 (23:55 +0000)]
re PR target/5267 (invoke.texi "RS/6000 and PowerPC Options" list needs cleanup)

PR target/5267
* doc/invoke.texi (RS/6000 and PowerPC Options): Add documentation
for -mcall-eabi, -mcall-aixdesc, -mcall-freebsd and -mcall-openbsd
options.  Remove -mcall-solaris documentation.

From-SVN: r146463

15 years agoFix misspelling of process_init_element.
Andrew Pinski [Mon, 20 Apr 2009 23:13:17 +0000 (16:13 -0700)]
Fix misspelling of process_init_element.

From-SVN: r146462

15 years agohandler-1.m: For the NeXT runtime, just return 0.
Andrew Pinski [Mon, 20 Apr 2009 22:23:55 +0000 (22:23 +0000)]
handler-1.m: For the NeXT runtime, just return 0.

2009-04-20  Andrew Pinski  <andrew_pinski@playstation.sony.com>

        * objc/execute/exceptions/handler-1.m: For the NeXT runtime, just return 0.

From-SVN: r146461

15 years agore PR fortran/39811 (Bogus warning for valid continuation lines)
Tobias Burnus [Mon, 20 Apr 2009 22:19:25 +0000 (00:19 +0200)]
re PR fortran/39811 (Bogus warning for valid continuation lines)

2009-04-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39811
        * scanner.c (load_line): Fix bogus "&" compile-time diagnostic.

2009-04-20  Tobias Burnus  <burnus@net-b.de>

        PR fortran/39811
        * gfortran.dg/continuation_11.f90: New test.

From-SVN: r146460

15 years agore PR c++/13358 (long long and C++ do not mix well)
Manuel López-Ibáñez [Mon, 20 Apr 2009 22:12:52 +0000 (22:12 +0000)]
re PR c++/13358 (long long and C++ do not mix well)

2009-04-21  Manuel Lopez-Ibanez  <manu@gcc.gnu.org>

PR c++/13358
* doc/invoke.texi (-Wlong-long): Update description.
* c-lex (interpret_integer): Only warn if there was no previous
overflow and -Wlong-long is enabled.
* c-decl.c (declspecs_add_type): Drop redundant flags.
* c.opt (Wlong-long): Init to -1.
* c-opts.c (sanitize_cpp_opts): Synchronize cpp's warn_long_long
and front-end warn_long_long. Wlong-long only depends on other
flags if it is uninitialized.
* c-parser.c (disable_extension_diagnostics): warn_long_long is
the same for CPP and FE.
(restore_extension_diagnostics): Likewise.
libcpp/
* init.c (cpp_create_reader): Wlong_long is disabled by default.
* expr.c (cpp_classify_number): Give different messages for C and
C++ front-ends.
cp/
* parser.c (cp_parser_check_decl_spec): Drop redundant flags.
* error.c (pedwarn_cxx98): New.
* cp-tree.h (pedwarn_cxx98): Declare.
testsuite/
* gcc.dg/wtr-int-type-1.c: Use two dg-warning to match two
messages. Test for "long long" in system headers.
* gcc.dg/c99-longlong-2.c: New.
* g++.dg/warn/pr13358.C: New.
* g++.dg/warn/pr13358-2.C: New.
* g++.dg/warn/pr13358-3.C: New.
* g++.dg/warn/pr13358-4.C: New.

From-SVN: r146459

15 years agoframework-2.c: Fix up for non existent includes being fatal errors now.
Andrew Pinski [Mon, 20 Apr 2009 21:59:38 +0000 (21:59 +0000)]
framework-2.c: Fix up for non existent includes being fatal errors now.

2009-04-20  Andrew Pinski <andrew_pinski@playstation.sony.com>

        * gcc.dg/framework-2.c: Fix up for non existent includes
        being fatal errors now.

From-SVN: r146458

15 years agore PR fortran/39800 (Rejects PRIVATE TYPE as compont of local type declaration)
Paul Thomas [Mon, 20 Apr 2009 21:55:26 +0000 (21:55 +0000)]
re PR fortran/39800 (Rejects PRIVATE TYPE as compont of local type declaration)

2009-04-20  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39800
* resolve.c (is_sym_host_assoc): New function.
(resolve_fl_derived): Call it when checking PRIVATE components
of PUBLIC derived types.  Change gfc_error to a gfc_notify_std
with std=f2003.
(resolve_fl_namelist): Call it twice to check for host
association.

2009-04-20  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39800
* gfortran.dg/private_type_13.f90: New test.
* gfortran.dg/private_type_2.f90: Add option -std=f95.

From-SVN: r146457

15 years agore PR c++/39803 (Bogus 'unused value' warning on declarations of non-POD arrays)
Le-Chun Wu [Mon, 20 Apr 2009 21:13:08 +0000 (21:13 +0000)]
re PR c++/39803 (Bogus 'unused value' warning on declarations of non-POD arrays)

        PR c++/39803
* gcc/cp/init.c (build_vec_init): Set TREE_NO_WARNING on the
compiler-generated INDIRECT_REF expression.
* gcc/testsuite/g++.dg/warn/Wunused-14.C: New test.

From-SVN: r146454

15 years agodecl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
Eric Botcazou [Mon, 20 Apr 2009 19:56:48 +0000 (19:56 +0000)]
decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.

* gcc-interface/decl.c (gnat_to_gnu_entity): Rewrite Esize calculation.
<E_Signed_Integer_Subtype>: Set the RM size on the integer type
before wrapping it up in the record type.  Do not overwrite the
Ada size of the record type with the Esize.

From-SVN: r146452

15 years agoFix enum conversions which are invalid in C++:
Ian Lance Taylor [Mon, 20 Apr 2009 19:35:00 +0000 (19:35 +0000)]
Fix enum conversions which are invalid in C++:

gcc/:
Fix enum conversions which are invalid in C++:
* auto-inc-dec.c (attempt_change): Change 0 to SET in function
call.
* calls.c (store_one_arg): Change 0 to EXPAND_NORMAL in function
call.
* cse.c (hash_rtx_cb): Change 0 to VOIDmode in function call.
* dbgcnt.c (dbg_cnt_set_limit_by_name): Add cast to enum type.
* dbxout.c (dbxout_symbol): Change 0 to VOIDmode in function
call.
(dbxout_parms): Likewise.
* df-core.c (df_set_flags): Change changeable_flags parameter to
int.
(df_clear_flags): Likewise.
* df-problems.c (df_rd_bb_local_compute_process_def): Change
top_flag parameter to int.
(df_chain_create_bb_process_use): Likewise.
(df_chain_add_problem): Change chain_flags parameter to unsigned
int.  Remove cast.
* df-scan.c (df_ref_create): Change ref_flags parameter to int.
(df_ref_create_structure, df_def_record_1): Likewise.
(df_defs_record, df_uses_record, df_get_call_refs): Likewise.
(df_notes_rescan): Change 0 to VOIDmode in function call.
(df_get_call_refs, df_insn_refs_collect): Likewise.
(df_bb_regs_collect): Likewise.
(df_entry_block_defs_collect): Likewise.
(df_exit_block_uses_collect): Likewise.
* df.h: Update declarations.
* double-int.c (double_int_divmod): Add cast to enum type.
* dse.c (replace_inc_dec): Reverse parameters to gen_int_mode.
* dwarf2out.c (new_reg_loc_descr): Add casts to enum type.
(based_loc_descr): Likewise.
(loc_descriptor_from_tree_1): Change first_op and second_op to
enum dwarf_location_atom.  Add cast to enum type.
* expmed.c (init_expmed): Change 0 to SET in function call.
* expr.c (init_expr_target): Change 0 to VOIDmode in function
call.
(expand_expr_real_1): Change 0 to EXPAND_NORMAL in function call.
(do_store_flag): Likewise.
* fixed-value.h (struct fixed_value): Change mode to enum
machine_mode.
* function.c (assign_parms): Change 0 to VOIDmode in function
call.
* genautomata.c (insert_automaton_decl): Change 1 to INSERT in
function call.
(insert_insn_decl, insert_decl, insert_state): Likewise.
(automata_list_finish): Likewise.
* genrecog.c (process_define_predicate): Add cast to enum type.
* gensupport.c (init_predicate_table): Add cast to enum type.
* gimple.c (gimple_build_return): Change 0 to ERROR_MARK in
function call.
(gimple_build_call_1, gimple_build_label): Likewise.
(gimple_build_goto, gimple_build_asm_1): Likewise.
(gimple_build_switch_1, gimple_build_cdt): Likewise.
* gimple.h (GIMPLE_CHECK): Change 0 to ERROR_MARK in function
call.
(enum fallback): Rename from enum fallback_t.
(fallback_t): Typedef as int.
* gimple-low.c (lower_builtin_setjmp): Change TSI_SAME_STMT to
GSI_SAME_STMT in function call.
* ira.c (setup_class_subset_and_memory_move_costs): Add casts to
enum type.
(setup_reg_class_relations): Likewise.
(setup_reg_class_nregs): Change cl to int.  Add casts to enum
type.
(setup_prohibited_class_mode_regs): Add cast to enum type.
(setup_prohibited_mode_move_regs): Likewise.
* ira-costs.c (record_reg_classes): Change rclass to enum
reg_class.
(record_address_regs): Change i to enum reg_class.
* lists.c (alloc_EXPR_LIST): Add cast to enum type.
* machmode.h (GET_MODE_CLASS): Cast value to enum mode_class.
(GET_MODE_WIDER_MODE): Cast value to enum machine_mode.
(GET_MODE_2XWIDER_MODE): Likewise.
(GET_CLASS_NARROWEST_MODE): Likewise.
* omp-low.c (expand_omp_for): Add cast to enum type.
* optabs.c (debug_optab_libfuncs): Add casts to enum type.
* opts.c (enable_warning_as_error): Change kind to diagostic_t.
* postreload.c (reload_cse_simplify_operands): Change rclass local
to enum reg_class.
* predict.c (combine_predictions_for_insn): Change best_predictor
and predictor to enum br_predictor.
(combine_predictions_for_bb): Likewise.
(build_predict_expr): Change assignment to PREDICT_EXPR_OUTCOME to
use SET_PREDICT_EXPR_OUTCOME.
* real.c (real_arithmetic): Change icode to code in function
call.
* reginfo.c (init_move_cost): Add casts to enum type.
(init_reg_sets_1, init_fake_stack_mems): Likewise.
* regmove.c (regclass_compatible_p): Change class0 and class1 to
enum reg_class.
* reload.c (find_valid_class): Add casts to enum type.
(push_reload): Change 0 to NO_REGS in function call.
(find_reloads): Change this_alternative to array of enum
reg_class.  Remove some now-unnecessary casts.
(make_memloc): Change 0 to VOIDmode in function call.
* reload1.c (reload): Change 0 to VOIDmode in function call.
(eliminate_regs_1, elimination_effects): Likewise.
(eliminate_regs_in_insn): Likewise.
(emit_input_reload_insns): Add cast to enum type.
(delete_output_reload): Change 0 to VOIDmode in function call.
* reorg.c (insn_sets_resource_p): Convert include_delayed_effects
to enum type in function call.
* tree.h (PREDICT_EXPR_OUTCOME): Add cast to enum type.
(SET_PREDICT_EXPR_OUTCOME): Define.
* tree-dump.c (get_dump_file_info): Change phase parameter to
int.
(get_dump_file_name, dump_begin, dump_enabled_p): Likewise.
(dump_initialized_p, dump_flag_name, dump_end): Likewise.
(dump_function): Likewise.
* tree-dump.h: Update declarations.
* tree-pass.h: Update declarations.
* varasm.c (assemble_integer): Change mclass to enum mode_class.
* config/arm/arm.c (thumb_legitimize_reload_address): Add cast to
enum type.
(arm_rtx_costs_1): Correct parenthesization.
(arm_rtx_costs): Add casts to enum type.
(adjacent_mem_locations): Reverse arguments to const_ok_for_op.
(vfp_emit_fstmd): Use add_rg_note.
(emit_multi_reg_push, emit_sfm): Likewise.
(thumb_set_frame_pointer): Likewise.
(arm_expand_prologue): Likewise.
(arm_regno_class): Change return type to enum reg_class.
(thumb1_expand_prologue): Use add_reg_note.
* config/arm/arm-protos.h (arm_regno_class): Update declaration.
* config/arm/arm.h (INITIALIZE_TRAMPOLINE): Change 0 to LCT_NORMAL
in function call.
* config/arm/gentune.sh: Add cast to enum type.
* config/arm/arm-tune.md: Rebuild.
* config/i386/i386.c (ix86_expand_prologue): Use add_reg_note.
(ix86_split_fp_branch, predict_jump): Likewise.
(ix86_expand_multi_arg_builtin): Change sub_code from enum
insn_code to enum rtx_code.
(ix86_builtin_vectorized_function): Add cast to enum type.
* config/i386/i386.md (truncdfsf2): Change slot to enum
ix86_stack_slot.
(truncxf<mode>2, isinf<mode>2): Likewise.
* config/i386/i386-c.c (ix86_pragma_target_parse): Add cast to
enum type.
* config/ia64/ia64.c (ia64_split_tmode_move): Use add_reg_note.
(spill_restore_mem, do_spill, ia64_expand_prologue): Likewise.
(insert_bundle_state): Change 1 to INSERT in function call.
(ia64_add_bundle_selector_before): Likewise.
* config/ia64/ia64.md (cpu attr): Add cast to enum type.
(save_stack_nonlocal): Change 0 to LCT_NORMAL in function call.
(restore_stack_nonlocal): Likewise.
* config/mips/mips.h (MIPS_ICACHE_SYNC): Change 0 to LCT_NORMAL in
function call.
* config/mips/mips.c (mips_binary_cost): Change 0 to SET in
function call.
(mips_rtx_costs): Likewise.
(mips_override_options): Add casts to enum type.
* config/mips/sdemtk.h (MIPS_ICACHE_SYNC): Change 0 to LCT_NORMAL
in function call.
* config/pa/pa.c (legitimize_pic_address): Use add_reg_note.
(store_reg, set_reg_plus_d): Likewise.
(hppa_expand_prologue, hppa_profile_hook): Likewise.
* config/rs6000/rs6000.c (rs6000_init_hard_regno_mode_ok): Add
cast to enum type.
(altivec_expand_vec_set_builtin): Change 0 to EXPAND_NORMAL in
function call.
(emit_unlikely_jump): Use add_reg_note.
(rs6000_emit_allocate_stack): Likewise.
(rs6000_frame_related, rs6000_emit_prologue): Likewise.
(output_toc): Change 1 to INSERT in function call.
(output_profile_hook): Change 0 to LCT_NORMAL in function call.
(rs6000_initialize_trampoline): Likewise.
(rs6000_init_dwarf_reg_sizes_extra): Change 0 to EXPAND_NORMAL in
function call.
* config/s390/s390.c (s390_rtx_costs): Add cast to enum type.
(s390_expand_movmem): Change 0 to OPTAB_DIRECT in function call.
(s390_expand_setmem, s390_expand_cmpmem): Likewise.
(save_gprs): Use add_reg_note.
(s390_emit_prologue): Likewise.
(s390_expand_builtin): Change 0 to EXPAND_NORMAL in function
call.
* config/sparc/sparc.c (sparc_expand_prologue): Use add_reg_note.
(sparc_fold_builtin): Add cast to enum type.
* config/spu/spu.c (spu_emit_branch_or_set): Change ior_code to
enum insn_code.
(spu_expand_prologue): Use add_reg_note.
(expand_builtin_args): Change 0 to EXPAND_NORMAL in function
call.

* c-parser.c (c_parser_attributes): Change VEC back to tree list.
(c_parser_postfix_expression_after_primary): Get VEC for list of
arguments.  Get original types of arguments.  Call
build_function_call_vec.
(cached_expr_list_1, cached_expr_list_2): New static variables.
(c_parser_expr_list): Change return type to VEC *.  Add
p_orig_types parameter.  Change all callers.
(c_parser_release_expr): New static function.
(c_parser_vec_to_tree_list): New static function.
* c-typeck.c (build_function_call): Rewrite to build a VEC and
call build_function_call_vec.
(build_function_call_vec): New function, based on old
build_function_call.
(convert_arguments): Remove nargs and argarray parameters.  Change
values to a VEC.  Add origtypes parameter.
(build_modify_expr): Add rhs_origtype parameter.  Change all
callers.
(convert_for_assignment): Add origtype parameter.  Change all
callers.  If warn_cxx_compat, check for conversion to an enum
type when calling a function.
(store_init_value): Add origtype parameter.  Change all callers.
(digest_init): Likewise.
(struct init_node): Add origtype field.
(add_pending_init): Add origtype parameter.  Change all callers.
(output_init_element): Likewise.
(output_pending_init_elements): Pass origtype from init_node to
output_init_element.
(process_init_elemnt): Pass origtype from c_expr to
output_init_element.
(c_finish_return): Add origtype parameter.  Change all callers.
* c-common.c (sync_resolve_size): Change params to VEC *.  Change
caller.
(sync_resolve_params): Likewise.
(sync_resolve_return): Change params to first_param.  Change
caller.
(resolve_overloaded_builtins): Change params to VEC *.  Change
callers.   Save first parameter around call to
build_function_call_vec.
* c-decl.c (finish_decl): Add origtype parameter.  Change all
callers.  Call build_function_call_vec rather than
build_function_call for cleanup.
* c-tree.h: Update declarations.
* c-common.h: Update declarations.
* stub-objc.c (objc_rewrite_function_call): Change parameter from
params to first_param.
* target.h (struct gcc_target): Change resolve_overloaded_builtin
params parameter from tree to void *.
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin):
Change arglist parameter to have type void *, and to be a pointer
to a VEC.
* config/rs6000/rs6000-protos.h
(altivec_resolve_overloaded_builtin): Update declaration.
* config/spu/spu-c.c (spu_resolved_overloaded_builtin): Change
fnargs parameter to have type void *, and to be a pointer to a
VEC.  Call build_function_call_vec instead of
build_function_call.
* config/spu/spu-protos.h (spu_expand_builtin): Update
declaration.

gcc/cp/:
* typeck.c (build_function_call_vec): New function.
(cp_build_function_call): Only pass first parameter to
objc_rewrite_function_call.
(build_modify_expr): Add rhs_origtype parameter.  Change all
callers.
* decl.c (finish_decl): Add origtype parameter.  Change all
callers.
* semantics.c (finish_call_expr): Pass VEC to
resolve_overloaded_builtin.

gcc/objc:
* objc-act.c (objc_rewrite_function_call): Change parameter from
params to first_param.  Change all callers.

gcc/testsuite:
* gcc.dg/Wcxx-compat-3.c: New testcase.

From-SVN: r146451

15 years agotrans.c (unchecked_conversion_lhs_nop): New predicate.
Eric Botcazou [Mon, 20 Apr 2009 19:30:55 +0000 (19:30 +0000)]
trans.c (unchecked_conversion_lhs_nop): New predicate.

* gcc-interface/trans.c (unchecked_conversion_lhs_nop): New predicate.
(gnat_to_gnu) <N_Unchecked_Type_Conversion>: Return the expression
if the conversion is on the LHS of an assignment and a no-op.
<all> Do not convert the result to the result type if the Parent
node is such a conversion.

From-SVN: r146450

15 years agocp-tree.h (base_access): Change typedef to int.
Ian Lance Taylor [Mon, 20 Apr 2009 17:45:15 +0000 (17:45 +0000)]
cp-tree.h (base_access): Change typedef to int.

* cp-tree.h (base_access): Change typedef to int.
* parser.c (cp_parser_omp_flush): Change 0 to OMP_CLAUSE_ERROR.
(cp_parser_omp_threadprivate): Likewise.
* pt.c (unify_pack_expansion): Add casts to enum type.

From-SVN: r146448

15 years agoada-tree.h (DECL_HAS_REP_P): Delete.
Eric Botcazou [Mon, 20 Apr 2009 17:41:33 +0000 (17:41 +0000)]
ada-tree.h (DECL_HAS_REP_P): Delete.

* gcc-interface/ada-tree.h (DECL_HAS_REP_P): Delete.
* gcc-interface/decl.c (gnat_to_gnu_entity): Add support for extension
of types with unknown discriminants.
(substitute_in_type): Rewrite and restrict to formal substitutions.
* gcc-interface/utils.c (create_field_decl): Do not set DECL_HAS_REP_P.
(update_pointer_to): Update comment.

From-SVN: r146447

15 years ago* verify-impl.c (verify_instructions_0): Add cast to enum type.
Ian Lance Taylor [Mon, 20 Apr 2009 17:38:23 +0000 (17:38 +0000)]
* verify-impl.c (verify_instructions_0): Add cast to enum type.

From-SVN: r146446

15 years agomodule.c (import_iso_c_binding_module): Add casts to enum type.
Ian Lance Taylor [Mon, 20 Apr 2009 17:37:49 +0000 (17:37 +0000)]
module.c (import_iso_c_binding_module): Add casts to enum type.

* module.c (import_iso_c_binding_module): Add casts to enum type.
* trans-intrinsic.c (gfc_conv_intrinsic_minmax): Change op to enum
tree_code.
(gfc_conv_intrinsic_anyall): Likewise.
(gfc_conv_intrinsic_arith): Likewise.
(gfc_conv_intrinsic_minmaxloc): Likewise.
(gfc_conv_intrinsic_minmaxval): Likewise.
(gfc_conv_intrinsic_bitop): Likewise.
(gfc_conv_intrinsic_singlebitop): Likewise.
(gfc_conv_intrinsic_strcmp): Likewise.

From-SVN: r146445

15 years agoatom.md: Add bypasses with ix86_dep_by_shift_count.
Joey Ye [Mon, 20 Apr 2009 17:09:25 +0000 (17:09 +0000)]
atom.md: Add bypasses with ix86_dep_by_shift_count.

2009-04-20  Joey Ye  <joey.ye@intel.com>
    Xuepeng Guo <xuepeng.guo@intel.com>
    H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/atom.md: Add bypasses with ix86_dep_by_shift_count.

* config/i386/i386.c (LEA_SEARCH_THRESHOLD): New macro.
(IX86_LEA_PRIORITY): Likewise.
(distance_non_agu_define): New function.
(distance_agu_use): Likewise.
(ix86_lea_for_add_ok): Likewise.
(ix86_dep_by_shift_count): Likewise.

* config/i386/i386.md: Call ix86_lea_for_add_ok to decide we
should split for LEA.

* config/i386/i386-protos.h (ix86_lea_for_add_ok): Declare new
function.
(ix86_dep_by_shift_count): Likewise.

Co-Authored-By: H.J. Lu <hongjiu.lu@intel.com>
Co-Authored-By: Xuepeng Guo <xuepeng.guo@intel.com>
From-SVN: r146443

15 years agoexpr.c (handled_component_p): Move ...
Richard Guenther [Mon, 20 Apr 2009 14:11:34 +0000 (14:11 +0000)]
expr.c (handled_component_p): Move ...

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

* expr.c (handled_component_p): Move ...
* tree.h (handled_component_p): ... here.
* tree.def: Re-order BIT_FIELD_REF, COMPONENT_REF,
ARRAY_REF, ARRAY_RANGE_REF, VIEW_CONVERT_EXPR, IMAGPART_EXPR
and REALPART_EXPR to be in one group.

From-SVN: r146427

15 years agobasic-block.h (get_all_dominated_blocks): Declare.
Richard Guenther [Mon, 20 Apr 2009 14:01:52 +0000 (14:01 +0000)]
basic-block.h (get_all_dominated_blocks): Declare.

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

* basic-block.h (get_all_dominated_blocks): Declare.
* dominance.c (get_all_dominated_blocks): New function.
* tree-cfg.c (get_all_dominated_blocks): Remove.
(remove_edge_and_dominated_blocks): Adjust.
* tree-ssa-phiprop.c (tree_ssa_phiprop_1): Fold in ...
(tree_ssa_phiprop): ... here.  Use get_all_dominated_blocks
instead of recursing.

From-SVN: r146425

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:47:53 +0000 (15:47 +0200)]
[multiple changes]

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Use_One_Package): In an instance, if two
potentially_use_visible and non-overloadable homonyms are available
from  the actuals of distinct formal packages, retain the current one,
which was visible in the generic, to prevent spurious visibility
errors.
(End_Use_Package): Restore use_visibility when needed.

2009-04-20  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi, vms_data.ads: Update doc.

From-SVN: r146424

15 years agoMake-lang.in: Update dependencies
Arnaud Charlet [Mon, 20 Apr 2009 13:45:37 +0000 (13:45 +0000)]
Make-lang.in: Update dependencies

2009-04-20  Arnaud Charlet  <charlet@adacore.com>

* gcc-interface/Make-lang.in: Update dependencies

* gcc-interface/Makefile.in: Link run-time against winsock2 lib under
Windows.

From-SVN: r146423

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:32:11 +0000 (15:32 +0200)]
[multiple changes]

2009-04-20  Robert Dewar  <dewar@adacore.com>

* checks.ads: Fix documentation of range check handling

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Use_One_Type): Use proper entity on warning message for
a redundant use_type clause.

From-SVN: r146422

15 years agosem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization, for better handling...
Arnaud Charlet [Mon, 20 Apr 2009 13:29:13 +0000 (15:29 +0200)]
sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization, for better handling of null procedures.

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analye_Subprogram_Declaration): Code reorganization,
for better handling of null procedures.
(Check_Overriding_Indicator): Do not emit a warning on a missing
overriding indicator on an operator when the type of which the operator
is a primitive is private.

From-SVN: r146421

15 years agosem_attr.adb (Eval_Attribute, [...]): Catch more cases where this attribute can be...
Robert Dewar [Mon, 20 Apr 2009 13:28:50 +0000 (15:28 +0200)]
sem_attr.adb (Eval_Attribute, [...]): Catch more cases where this attribute can be evaluated at compile time.

2009-04-20  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb (Eval_Attribute, case Length): Catch more cases where
this attribute can be evaluated at compile time.
(Eval_Attribute, case Range_Length): Same improvement

* sem_eval.ads, sem_eval.adb (Compile_Time_Compare): New procedure

From-SVN: r146420

15 years agocgraph.h (cgraph_node_ptr): New type for vector functions.
Doug Kwan [Mon, 20 Apr 2009 13:27:15 +0000 (13:27 +0000)]
cgraph.h (cgraph_node_ptr): New type for vector functions.

* cgraph.h (cgraph_node_ptr): New type for vector functions.
(struct cgraph_node_set_def): New type.
(cgraph_node_set) New type. Also declare vector functions.
(struct cgraph_node_set_element_def): New type.
(cgraph_node_set_element): Ditto.
(cgraph_node_set_iterator): New iterator type.
(cgraph_node_set_new, cgraph_node_set_find, cgraph_node_set_add,
cgraph_node_set_remove, dump_cgraph_node_set,
debug_cgraph_node_set): New prototypes.
(csi_end_p, csi_next, csi_node, csi_start, cgraph_node_in_set_p,
cgraph_node_set_size): New inlines.
* tree-pass.h (struct cgraph_node_set_def): New decl to avoid
including cgraph.h.
(struct ipa_opt_pass): Add struct cgraph_node_set_def
argument to function 'write_summary'.
* ipa.c: Include ggc.h.
(hash_cgraph_node_set_element,
eq_cgraph_node_set_element, cgraph_node_set_new,
cgraph_node_set_add, cgraph_node_set_remove,
cgraph_node_set_find, dump_cgraph_node_set,
debug_cgraph_node_set): New functions.
* Makefile.in (ipa.o): Add dependency on GGC_H.

From-SVN: r146418

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:24:27 +0000 (15:24 +0200)]
[multiple changes]

2009-04-20  Bob Duff  <duff@adacore.com>

* sem.adb, gnat1drv.adb, debug.adb: Use the -gnatd.W switch to control
debugging output.

2009-04-20  Robert Dewar  <dewar@adacore.com>

* sem_attr.adb: Minor reformatting

* gnatcmd.adb: Minor reformatting

From-SVN: r146417

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:18:56 +0000 (15:18 +0200)]
[multiple changes]

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Analyze_User_Defined_Binary_Op): If left operand is
overloaded and one interpretation matches the context, label the
operand with the type of first formal.

2009-04-20  Bob Duff  <duff@adacore.com>

* debug.ads: Minor comment fix.

* debug.adb: Minor comment fixes.

2009-04-20  Javier Miranda  <miranda@adacore.com>

* rtsfind.ads (RE_Null_Id): New entity of package Ada.Exceptions

* exp_ch6.adb (Expand_Inlined_Call): Undo previous patch.

* exp_ch11.adb (Expand_N_Raise_Statement): When the raise stmt
is expanded into a call to Raise_Exception, avoid passing the
exception-name'identity in runtimes in which this argument
is not used.

From-SVN: r146416

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:14:40 +0000 (15:14 +0200)]
[multiple changes]

2009-04-20  Jerome Lambourg  <lambourg@adacore.com>

* impunit.adb: Add i-cil and i-cilobj packages, now needed by the
generated bindings for cil.

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_aggr.adb (Resolve_Record_Aggregate): If the type has unknown
discriminants, collect components from the Underlying_Record_View,
which will be used in the expansion of the aggregate into assignments.

* sem_ch3.adb: Do not label derived type with unknown discriminants as
having a private declaration.

From-SVN: r146415

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:11:19 +0000 (15:11 +0200)]
[multiple changes]

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* exp_util.adb (Expand_Subtype_From_Expr): use the
underlying_record_view when available, to create the proper constrained
subtype for an object of a derived type with unknown discriminants.

2009-04-20  Javier Miranda  <miranda@adacore.com>

* exp_ch6.ad (Expand_Inlined_Call): Avoid generation of temporaries for
formals that have pragma unreferenced.

From-SVN: r146414

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 13:05:53 +0000 (15:05 +0200)]
[multiple changes]

2009-04-20  Pascal Obry  <obry@adacore.com>

* a-direct.adb (To_Lower_If_Case_Insensitive): Removed.
Remove all calls to To_Lower_If_Case_Insensitive to preserve
the pathname original casing.

2009-04-20  Robert Dewar  <dewar@adacore.com>

* g-trasym.adb: Minor reformatting

* s-os_lib.adb: Minor reformatting

* sem.adb: Minor reformatting
Minor code reorganization

* sem_ch3.adb: Minor reformatting

* sem_ch4.adb: Minor reformatting

* sem_ch8.adb: Minor reformatting

* sem_type.adb: Minor reformatting

From-SVN: r146412

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 12:59:51 +0000 (14:59 +0200)]
[multiple changes]

2009-04-20  Javier Miranda  <miranda@adacore.com>

* sem_disp.adb (Find_Dispatching_Type): For subprograms internally
generated by derivations of tagged types use the aliased subprogram a
reference to locate their controlling type.

2009-04-20  Tristan Gingold  <gingold@adacore.com>

* g-trasym.adb: Set size of result buffer before calling
convert_address.

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Valid_Candidate): When checking whether a prefixed call
to a function returning an array can be interpreted as a call with
defaulted parameters whose result is indexed, take into account the
types of all the indices of the array result type.

2009-04-20  Pascal Obry  <obry@adacore.com>

* a-direct.adb, s-os_lib.adb: Minor reformatting.

From-SVN: r146411

15 years ago[multiple changes]
Arnaud Charlet [Mon, 20 Apr 2009 12:54:27 +0000 (14:54 +0200)]
[multiple changes]

2009-04-20  Nicolas Roche  <roche@adacore.com>

* sysdep.c (__gnat_localtime_tzoff): on Windows, manipulated times are
unsigned long long. So compare local_time and utc_time before computing
the difference.

2009-04-20  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch3.adb (Build_Derived_Private_Type): Insert the declaration
of the Underlying_Record_View before that of the derived type.

* exp_ch3.adb (Expand_Record_Extension): Do not special-case types
with unknown discriminants with regard to the parent subtype.

From-SVN: r146410

15 years agosem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect null exclusion...
Ed Schonberg [Mon, 20 Apr 2009 12:54:05 +0000 (14:54 +0200)]
sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect null exclusion qualifiers for object renaming...

2009-04-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch8.adb (Analyze_Object_Renaming): Proper checks on incorrect
null exclusion qualifiers for object renaming declarations.

From-SVN: r146409

15 years agosem.adb (Semantics, [...]): Include dependents of bodies that are not included.
Bob Duff [Mon, 20 Apr 2009 12:42:34 +0000 (12:42 +0000)]
sem.adb (Semantics, [...]): Include dependents of bodies that are not included.

2009-04-20  Bob Duff  <duff@adacore.com>

* sem.adb (Semantics, Walk_Library_Items): Include dependents of bodies
that are not included. This is necessary if the main unit is a generic
instantiation.

* gnat1drv.adb (Gnat1drv): Comment out the call to Check_Library_Items,
because it doesn't work if -gnatn is used.

From-SVN: r146408

15 years agoexp_ch3.adb (Make_Predefined_Primitive_Specs, [...]): Do not create the declarations...
Hristian Kirtchev [Mon, 20 Apr 2009 12:35:50 +0000 (14:35 +0200)]
exp_ch3.adb (Make_Predefined_Primitive_Specs, [...]): Do not create the declarations and bodies of the primitive subprograms...

        * exp_ch3.adb (Make_Predefined_Primitive_Specs,
        Predefined_Primitive_Bodies): Do not create the declarations and bodies
        of the primitive subprograms associated with dispatching select
        statements when the runtime is in configurable mode.

From-SVN: r146407

15 years agosem_ch3.adb, [...]: Minor reformatting
Arnaud Charlet [Mon, 20 Apr 2009 12:34:24 +0000 (14:34 +0200)]
sem_ch3.adb, [...]: Minor reformatting

        * sem_ch3.adb, sem_ch6.adb: Minor reformatting

        * adaint.c (__gnat_is_readable_file): Check for file existence
        when not using ACL (always the case on remote drives).

From-SVN: r146406