gcc.git
15 years agotree-parloops.c (loop_parallel_p): Call vect_is_simple_reduction with additional...
Ira Rosen [Sun, 12 Jul 2009 07:09:07 +0000 (07:09 +0000)]
tree-parloops.c (loop_parallel_p): Call vect_is_simple_reduction with additional argument.

* tree-parloops.c (loop_parallel_p): Call vect_is_simple_reduction
with additional argument.
* tree-vectorizer.h (enum vect_def_type): Add
vect_double_reduction_def.
(vect_is_simple_reduction): Add argument.
* tree-vect-loop.c (vect_determine_vectorization_factor): Fix
indentation.
(vect_analyze_scalar_cycles_1): Detect double reduction. Call
vect_is_simple_reduction with additional argument.
(vect_analyze_loop_operations): Handle exit phi nodes in case of
double reduction.
(reduction_code_for_scalar_code): Handle additional codes by
returning ERROR_MARK for them. Fix comment and indentation.
(vect_is_simple_reduction): Fix comment, add argument to specify
double reduction. Detect double reduction.
(get_initial_def_for_induction): Fix indentation.
(get_initial_def_for_reduction): Fix comment and indentation.
Handle double reduction. Create initial definitions that do not
require adjustment if ADJUSTMENT_DEF is NULL. Handle additional cases.
(vect_create_epilog_for_reduction): Fix comment, add argument to
handle double reduction. Use PLUS_EXPR in case of MINUS_EXPR in
epilogue result extraction. Create double reduction phi node and
replace relevant uses.
(vectorizable_reduction): Call vect_is_simple_reduction with
additional argument. Fix indentation. Update epilogue code treatment
according to the changes in reduction_code_for_scalar_code. Check
for double reduction. Call vect_create_epilog_for_reduction with
additional argument.
* tree-vect-stmts.c (process_use): Handle double reduction, update
documentation.
(vect_mark_stmts_to_be_vectorized): Handle double reduction.
(vect_get_vec_def_for_operand): Likewise.

From-SVN: r149526

15 years agowinnt.c (i386_pe_determine_dllexport_p): Don't dllexport if !TREE_PUBLIC.
Danny Smith [Sun, 12 Jul 2009 06:09:39 +0000 (06:09 +0000)]
winnt.c (i386_pe_determine_dllexport_p): Don't dllexport if !TREE_PUBLIC.

* config/i386/winnt.c (i386_pe_determine_dllexport_p): Don't
dllexport if !TREE_PUBLIC.
(i386_pe_maybe_record_exported_symbol): Assert TREE_PUBLIC.

From-SVN: r149525

15 years agof2003_io_4.f03, [...]: Gate test on effective_target fd_truncate.
Hans-Peter Nilsson [Sun, 12 Jul 2009 02:44:22 +0000 (02:44 +0000)]
f2003_io_4.f03, [...]: Gate test on effective_target fd_truncate.

* gfortran.dg/f2003_io_4.f03, gfortran.dg/read_size_noadvance.f90,
gfortran.dg/namelist_39.f90, gfortran.dg/read_repeat.f90,
gfortran.dg/fmt_exhaust.f90, gfortran.dg/fseek.f90,
gfortran.dg/fmt_t_7.f, gfortran.dg/read_x_past.f,
gfortran.dg/read_bad_advance.f90, gfortran.dg/backslash_3.f,
gfortran.dg/namelist_56.f90, gfortran.dg/list_read_5.f90,
gfortran.dg/fmt_cache_1.f, gfortran.dg/fmt_t_4.f90: Gate test on
effective_target fd_truncate.

From-SVN: r149524

15 years agoDaily bump.
GCC Administrator [Sun, 12 Jul 2009 00:16:40 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149523

15 years agochecks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output local variable...
Eric Botcazou [Sat, 11 Jul 2009 20:52:28 +0000 (20:52 +0000)]
checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output local variable and do not test it in...

* checks.adb (Apply_Address_Clause_Check): Remove Size_Warning_Output
local variable and do not test it in Compile_Time_Bad_Alignment.
Do not issue size or alignment warnings for the X'Address form.
* sem_util.ads (Find_Overlaid_Object): Delete.
(Find_Overlaid_Entity): New procedure.
* sem_util.adb (Find_Overlaid_Object): Rename to...
(Find_Overlaid_Entity): ...this and turn into a procedure.  Report
whether the address is offseted within the overlaid entity.
(Has_Compatible_Alignment): Track the offset globally instead of
passing it to Check_Offset.  For an indexed component, compute the
full offset when possible.  If the resulting offset is zero, only
check the prefix.
(Check_Offset): Delete.
* sem_ch13.adb (Address_Clause_Check_Record): Add Off field.
(Address_Aliased_Entity): Delete.
(Analyze_Attribute_Definition_Clause) <Attribute_Address>: Call
Find_Overlaid_Entity to find the overlaid entity and the offset.
Adjust throughout for above change.
(Validate_Address_Clauses): Always use attributes of entities, not of
their type.  Tweak message for warning.  Call Has_Compatible_Alignment
if the address is offseted to warn about incompatible alignments.
* gcc-interface/gigi.h (annotate_object): Declare.
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: Annotate renaming
entity.  Call annotate_object instead of annotating manually objects.
(annotate_object): New function.
* gcc-interface/trans.c (Subprogram_Body_to_gnu): Annotate parameters
at the end.

From-SVN: r149520

15 years agoavr.h (TARGET_CPU_CPP_BUILTINS): Redefine.
Anatoly Sokolov [Sat, 11 Jul 2009 20:26:54 +0000 (00:26 +0400)]
avr.h (TARGET_CPU_CPP_BUILTINS): Redefine.

* config/avr/avr.h (TARGET_CPU_CPP_BUILTINS): Redefine.
(avr_extra_arch_macro) Remove declatation.
* config/avr/avr.c (avr_cpu_cpp_builtins): New function.
(avr_extra_arch_macro) Declare as static.
* config/avr/avr-protos.h (avr_cpu_cpp_builtins): Dclare.

From-SVN: r149519

15 years agoada-tree.h: Minor reorganization.
Eric Botcazou [Sat, 11 Jul 2009 19:33:14 +0000 (19:33 +0000)]
ada-tree.h: Minor reorganization.

* gcc-interface/ada-tree.h: Minor reorganization.
* gcc-interface/misc.c (gnat_print_decl): Minor tweaks.
(gnat_print_type): Likewise.

From-SVN: r149518

15 years agore PR middle-end/40388 (another null pointer in remove_unreachable_regions)
Jan Hubicka [Sat, 11 Jul 2009 19:03:52 +0000 (21:03 +0200)]
re PR middle-end/40388 (another null pointer in remove_unreachable_regions)

PR middle-end/48388
* except.c (can_be_reached_by_runtime): Test for NULL aka bitmap.
* g++.dg/torture/pr40388.C: New testcase.

From-SVN: r149516

15 years ago[multiple changes]
Arnaud Charlet [Sat, 11 Jul 2009 17:46:23 +0000 (19:46 +0200)]
[multiple changes]

2009-07-11  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb, sem_res.adb, sem_warn.adb: Minor comment editing:
Lvalue -> lvalue

* exp_ch6.adb: Minor reformatting

2009-07-11  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Expand_Atomic_Aggregate): Clean up code, take into
account possible type qualification to determine whether aggregate
needs a target temporary to respect atomic type or object.

* exp_aggr.adb (Expand_Record_Aggregate): Use new version of
Expand_Atomic_Aggregate.

2009-07-11  Emmanuel Briot  <briot@adacore.com>

* prj.adb, prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Speed up
algorithm.
(Excluded_Sources_Htable): No longer a global table.
Change error message to indicate which files are illegal in the list
of excluded files, as opposed to only the location in the project
file.
(Find_Source): New subprogram.

From-SVN: r149515

15 years agore PR debug/40713 (Overlapping .debug_ranges (C++))
Jakub Jelinek [Sat, 11 Jul 2009 17:41:59 +0000 (19:41 +0200)]
re PR debug/40713 (Overlapping .debug_ranges (C++))

PR debug/40713
* dwarf2out.c (dw_fde_struct): Add in_std_section and
cold_in_std_section bits.
(dwarf2out_begin_prologue): Initialize them.
(dwarf2out_finish): Don't emit FDE range into .debug_ranges
if already covered by text_section or cold_text_section range.

From-SVN: r149514

15 years agore PR target/40667 (stack frames are generated even with -fomit-frame-pointer)
Jakub Jelinek [Sat, 11 Jul 2009 17:40:29 +0000 (19:40 +0200)]
re PR target/40667 (stack frames are generated even with -fomit-frame-pointer)

PR rtl-optimization/40667
* defaults.h (MINIMUM_ALIGNMENT): Define if not defined.
* doc/tm.texi (MINIMUM_ALIGNMENT): Document it.
* config/i386/i386.h (MINIMUM_ALIGNMENT): Define.
* config/i386/i386.c (ix86_minimum_alignment): New function.
* config/i386/i386-protos.h (ix86_minimum_alignment): New prototype.
* cfgexpand.c (expand_one_var): Use MINIMIM_ALIGNMENT.
* emit-rtl.c (gen_reg_rtx): Likewise.
* function.c (assign_parms): Likewise.  If nominal_type needs
bigger alignment than FUNCTION_ARG_BOUNDARY, use its alignment
rather than passed_type's alignment.

From-SVN: r149513

15 years agore PR target/40668 (64-bit sparc miscompiles memcpy of argument inside switch)
Jakub Jelinek [Sat, 11 Jul 2009 09:23:32 +0000 (11:23 +0200)]
re PR target/40668 (64-bit sparc miscompiles memcpy of argument inside switch)

PR target/40668
* function.c (assign_parm_setup_stack): Adjust
MEM_OFFSET (data->stack_parm) if promoted_mode is different
from nominal_mode on big endian.

* gcc.c-torture/execute/pr40668.c: New test.

From-SVN: r149511

15 years agoexpmed.c (emit_store_flag_1): Fix choice of zero vs.
Paolo Bonzini [Sat, 11 Jul 2009 08:28:34 +0000 (08:28 +0000)]
expmed.c (emit_store_flag_1): Fix choice of zero vs.

2009-07-11  Paolo Bonzini  <bonzini@gnu.org>

* expmed.c (emit_store_flag_1): Fix choice of zero vs. sign extension.

2009-07-11  Paolo Bonzini  <bonzini@gnu.org>

* gcc.c-torture/execute/20090711-1.c: New test.

From-SVN: r149509

15 years agore PR testsuite/40699 (All sparcv9 libjava execution tests fail on Solaris 11/SPARC)
Richard Sandiford [Sat, 11 Jul 2009 06:10:49 +0000 (06:10 +0000)]
re PR testsuite/40699 (All sparcv9 libjava execution tests fail on Solaris 11/SPARC)

gcc/testsuite/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* lib/gcc-defs.exp, lib/target-libpath.exp, lib/objc.exp,
lib/gfortran.exp, lib/g++.exp, lib/obj-c++.exp, lib/c-torture.exp,
lib/gcc-dg.exp, lib/gnat.exp, g++.dg/compat/compat.exp,
g++.dg/compat/struct-layout-1.exp: Revert 2009-06-30 commit.

libstdc++-v3/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* testsuite/lib/libstdc++.exp: Revert 2009-06-30 commit.

libjava/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* testsuite/lib/libjava.exp: Revert 2009-06-30 commit.

libgomp/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* testsuite/lib/libgomp.exp: Revert 2009-07-02 and 2009-06-30 commits.
* testsuite/libgomp.c/c.exp, testsuite/libgomp.c++/c++.exp,
testsuite/libgomp.fortran/fortran.exp: Revert 2009-06-30 commits.

libffi/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* testsuite/lib/libffi-dg.exp: Revert 2009-07-02, 2009-07-01 and
2009-06-30 commits.

libmudflap/
PR testsuite/40699
PR testsuite/40707
PR testsuite/40709
* testsuite/lib/libmudflap.exp: Revert 2009-06-30 commit.

From-SVN: r149508

15 years ago* config/mep/mep.c (mep_can_inline_p): Correct logic, and simplify.
DJ Delorie [Sat, 11 Jul 2009 03:45:51 +0000 (23:45 -0400)]
* config/mep/mep.c (mep_can_inline_p): Correct logic, and simplify.

From-SVN: r149507

15 years agoDaily bump.
GCC Administrator [Sat, 11 Jul 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149506

15 years agore PR fortran/33197 (Fortran 2008: math functions)
Tobias Burnus [Sat, 11 Jul 2009 00:03:07 +0000 (02:03 +0200)]
re PR fortran/33197 (Fortran 2008: math functions)

2009-07-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33197
        * check.c (gfc_check_fn_rc2008): New function.
        * intrinsic.h (gfc_check_fn_rc2008): New prototype.
        * intrinsic.c (add_functions): Add complex tan, cosh, sinh,
        and tanh.

2009-07-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/33197
        * gfortran.dg/complex_intrinsic_3.f90: New test.
        * gfortran.dg/complex_intrinsic_4.f90: New test.

From-SVN: r149503

15 years agothumb2.md (thumb2_cbz): Correct computation of length attribute.
Mark Mitchell [Fri, 10 Jul 2009 23:16:31 +0000 (23:16 +0000)]
thumb2.md (thumb2_cbz): Correct computation of length attribute.

* config/arm/thumb2.md (thumb2_cbz): Correct computation of length
attribute.
(thumb2_cbnz): Likewise.

From-SVN: r149501

15 years agore PR target/39079 (MIPS: __builtin___clear_cache() broken on SMP ISA_HAS_SYNCI systems.)
David Daney [Fri, 10 Jul 2009 22:49:52 +0000 (22:49 +0000)]
re PR target/39079 (MIPS: __builtin___clear_cache() broken on SMP ISA_HAS_SYNCI systems.)

2009-07-10  David Daney  <ddaney@caviumnetworks.com>

PR target/39079
* testsuite/gcc.target/mips/mips.exp: Make -msynci a known option.
* gcc.target/mips/clear-cache-1.c (dg-options): Add -msynci.

2009-07-10  David Daney  <ddaney@caviumnetworks.com>

PR target/39079
* config.gcc (supported_defaults): Add synci.
(with_synci): Add validation.
(all_defaults): Add synci.
* config/mips/mips.md (clear_cache): Use TARGET_SYNCI instead of
ISA_HAS_SYNCI.
(synci): Same.
* config/mips/mips.opt (msynci): New option.
* config/mips/mips.c (mips_override_options): Warn on use of
-msynci for targets that do now support it.
* gcc/config/mips/mips.h (OPTION_DEFAULT_SPECS): Add a default for
msynci.
* gcc/doc/invoke.texi (-msynci): Document the new option.
* doc/install.texi (--with-synci): Document the new option.

From-SVN: r149500

15 years agoc99_functions.c (ccoshf, [...]): Fix errant minus.
Steven G. Kargl [Fri, 10 Jul 2009 15:25:31 +0000 (15:25 +0000)]
c99_functions.c (ccoshf, [...]): Fix errant minus.

2009-07-10  Steven G. Kargl  <kargl@gcc.gnu.org>

* c99_functions.c (ccoshf, ccosh, ccoshl, ctanhf, ctanh, ctanl):
Fix errant minus.

From-SVN: r149479

15 years agoMinor reformatting.
Arnaud Charlet [Fri, 10 Jul 2009 13:20:49 +0000 (15:20 +0200)]
Minor reformatting.

From-SVN: r149475

15 years ago[multiple changes]
Arnaud Charlet [Fri, 10 Jul 2009 13:18:49 +0000 (15:18 +0200)]
[multiple changes]

2009-07-10  Thomas Quinot  <quinot@adacore.com>

* exp_ch7.adb: Update comments.

2009-07-10  Arnaud Charlet  <charlet@adacore.com>

* exp_ch13.adb (Expand_N_Record_Representation_Clause): Ignore mod
clause if -gnatI is set instead of crashing.

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* sem_ch11.adb (Same_Expression): Null is always equal to itself.
Additional work to remove redundant successive raise statements, in
this case access checks.

2009-07-10  Vincent Celier  <celier@adacore.com>

* make.adb (Compile): Always create a deep copy of the mapping file
argument (-gnatem=...) as it may be deallocate/reallocate by
Normalize_Arguments.

2009-07-10  Javier Miranda  <miranda@adacore.com>

* einfo.adb (Directly_Designated_Type): Add assertion.

* sem_res.adb (Check_Fully_Declared_Prefix): Add missing check on
access types before using attribute Directly_Designated_Type.

2009-07-10  Emmanuel Briot  <briot@adacore.com>

* prj.ads: Minor typo fix

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Add_Extra_Formal): Protected operations do no need
special treatment.

* exp_ch6.adb (Expand_Protected_Subprogram_Call): If rewritten
subprogram is a function call, resolve properly, to ensure that extra
actuals are added as needed.

From-SVN: r149474

15 years agosem_aggr.adb: Minor comments editing
Thomas Quinot [Fri, 10 Jul 2009 13:12:10 +0000 (13:12 +0000)]
sem_aggr.adb: Minor comments editing

2009-07-10  Thomas Quinot  <quinot@adacore.com>

* sem_aggr.adb: Minor comments editing

* exp_tss.adb, exp_ch3.adb: Minor reformatting

From-SVN: r149473

15 years agore PR middle-end/40502 (crash in cp_diagnostic_starter)
Jakub Jelinek [Fri, 10 Jul 2009 11:56:55 +0000 (13:56 +0200)]
re PR middle-end/40502 (crash in cp_diagnostic_starter)

PR c++/40502
* error.c (cp_print_error_function): Check for NULL block.

* g++.dg/ext/strncpy-chk1.C: New test.

From-SVN: r149470

15 years agore PR tree-optimization/40496 (ICE in verify_stmts with -fprefetch-loop-arrays)
Richard Guenther [Fri, 10 Jul 2009 11:45:40 +0000 (11:45 +0000)]
re PR tree-optimization/40496 (ICE in verify_stmts with -fprefetch-loop-arrays)

2009-07-10  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/40496
* tree-ssa-loop-manip.c (tree_transform_and_unroll_loop): Create
the PHI result with a compatible type.

* g++.dg/opt/pr40496.C: New testcase.

From-SVN: r149469

15 years agoexp_util.adb: Minor code reorganization (use N_Short_Circuit)
Robert Dewar [Fri, 10 Jul 2009 09:43:01 +0000 (09:43 +0000)]
exp_util.adb: Minor code reorganization (use N_Short_Circuit)

2009-07-10  Robert Dewar  <dewar@adacore.com>

* exp_util.adb: Minor code reorganization (use N_Short_Circuit)

* exp_ch4.adb: Add ??? comment for conditional expressions on limited
types.

* checks.adb (In_Declarative_Region_Of_Subprogram_Body): New procedure,
replaces Safe_To_Capture_In_Parameter_Value, and properly handles the
case of conditional expressions that may not be elaborated.

* sem_util.adb (Safe_To_Capture_Value): Properly handle case of
conditional expression where we may not execute then then or else
branches.

From-SVN: r149468

15 years ago[multiple changes]
Arnaud Charlet [Fri, 10 Jul 2009 09:36:00 +0000 (11:36 +0200)]
[multiple changes]

2009-07-10  Arnaud Charlet  <charlet@adacore.com>

* i-cexten.ads (bool): New type.

2009-07-10  Robert Dewar  <dewar@adacore.com>

* sinfo.ads (N_Short_Circuit): New definition

* sem_ch13.adb, sem_ch6.adb, sem_eval.adb, sem_res.adb,
treepr.adb: Minor code reorganization (use N_Short_Circuit)

From-SVN: r149467

15 years agoexp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of non-tagged record...
Javier Miranda [Fri, 10 Jul 2009 09:30:44 +0000 (09:30 +0000)]
exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of non-tagged record types.

2009-07-10  Javier Miranda  <miranda@adacore.com>

* exp_ch3.adb (Expand_Freeze_Record_Type): Handle constructors of
non-tagged record types.

* sem_prag.adb
(Process_Import_Or_Interface): Allow the use of "pragma Import (CPP,..)"
with non-tagged types. Required to import C++ classes that have no
virtual primitives.
(Analyze_Pragma): For pragma CPP_Constructor. Allow the use of functions
returning non-tagged types. For backward compatibility, if the
constructor returns a class wide type we internally change the
returned type to the corresponding non class-wide type.

* sem_aggr.adb
(Valid_Ancestor_Type): CPP_Constructors code cleanup.
(Resolve_Extension_Aggregate): CPP_Constructors code cleanup.
(Resolve_Aggr_Expr): CPP_Constructors code cleanup.
(Resolve_Record_Aggregate): CPP_Constructors code cleanup.

* sem_ch3.adb
(Analyze_Object_Declaration): CPP_Constructors code cleanup.

* sem_ch5.adb (Analyze_Assignment): CPP_Constructors code cleanup.

* sem_util.adb (Is_CPP_Constructor_Call): Code cleanup.

* sem_res.adb (Resolve_Allocator): CPP_Constructors code cleanup.

* exp_ch4.adb (Expand_Allocator_Expression): CPP_Constructors code
cleanup.

* exp_aggr.adb (Build_Record_Aggr_Code): CPP_Constructors code clean up.

* gnat_rm.texi
(pragma CPP_Class): Document that it can be used now with non-tagged
record types.
(pragma CPP_Constructor): Document that it can be used now with
functions returning specific types. For backward compatibility
we also support functions returning class-wide types.

* gnat_ugn.texi
(Interfacing with C++ constructors): Update the examples to incorporate
the new syntax in which the functions used to import C++ constructors
return specific types.
(Interfacing with C++ at the Class Level): Update the examples to
incorporate the new syntax in which the functions used to import
C++ constructors return specific types.

From-SVN: r149466

15 years ago[multiple changes]
Arnaud Charlet [Fri, 10 Jul 2009 09:21:34 +0000 (11:21 +0200)]
[multiple changes]

2009-07-10  Thomas Quinot  <quinot@adacore.com>

* exp_disp.adb (Make_Disp_Asynchronous_Select_Body,
Make_Disp_Conditional_Select_Body,
Make_Disp_Timed_Select_Body): For the case of a type that is neither an
interface nor a concurrent type, the primitive body is empty. Generate
a null statement so that it remains well formed.

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* exp_aggr.adb (Build_Record_Aggr_Code): If the type has discriminants,
replace references to them in defaulted component expressions with
references to the values of the discriminants of the target object.

From-SVN: r149465

15 years ago[multiple changes]
Arnaud Charlet [Fri, 10 Jul 2009 09:13:36 +0000 (11:13 +0200)]
[multiple changes]

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* exp_ch7.adb (Build_Final_List): If the list is being built for a
Taft-Amendment type, place the finalization list in the package body,
to ensure that the tree for the spec is identical whenever it is
compiled.

2009-07-10  Javier Miranda  <miranda@adacore.com>

* sem_ch3.adb (Build_Derived_Record_Type): Use the full-view when
inheriting attributes from a private Parent_Base.

From-SVN: r149464

15 years agoexp_ch4.adb (Raise_Accessibility_Error): New procedure
Robert Dewar [Fri, 10 Jul 2009 09:11:16 +0000 (11:11 +0200)]
exp_ch4.adb (Raise_Accessibility_Error): New procedure

2009-07-10  Robert Dewar  <dewar@adacore.com>

* exp_ch4.adb (Raise_Accessibility_Error): New procedure

From-SVN: r149463

15 years agosem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise statements with...
Ed Schonberg [Fri, 10 Jul 2009 09:10:57 +0000 (11:10 +0200)]
sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise statements with the same condition.

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* sem_ch11.adb (analyze_raise_xxx_error): Remove consecutive raise
statements with the same condition.

From-SVN: r149462

15 years agoexp_util.adb (Find_Interface_Tag): Reorder processing of incoming Typ argument to...
Javier Miranda [Fri, 10 Jul 2009 09:10:43 +0000 (11:10 +0200)]
exp_util.adb (Find_Interface_Tag): Reorder processing of incoming Typ argument to ensure proper management of...

2009-07-10  Javier Miranda  <miranda@adacore.com>

* exp_util.adb (Find_Interface_Tag): Reorder processing of incoming
Typ argument to ensure proper management of access types.

From-SVN: r149461

15 years agomake.adb: Do not include object directories or library ALI directories of library...
Vincent Celier [Fri, 10 Jul 2009 09:10:20 +0000 (11:10 +0200)]
make.adb: Do not include object directories or library ALI directories of library...

2009-07-10  Vincent Celier  <celier@adacore.com>

* make.adb: Do not include object directories or library ALI
directories of library projects in the object path.

From-SVN: r149460

15 years agosem_prag.adb (Analyze pragma, [...]): Analyze argument of pragma, to capture global...
Ed Schonberg [Fri, 10 Jul 2009 09:09:59 +0000 (11:09 +0200)]
sem_prag.adb (Analyze pragma, [...]): Analyze argument of pragma, to capture global references if the context is generic.

2009-07-10  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze pragma, case Task_Name): Analyze argument of
pragma, to capture global references if the context is generic.

* exp_ch2.adb (Expand_Discriminant): If a task type discriminant
appears within the initialization procedure for the corresponding
record, replace it with the proper discriminal.

From-SVN: r149459

15 years agore PR c/25509 (can't disable __attribute__((warn_unused_result)))
Manuel López-Ibáñez [Fri, 10 Jul 2009 07:27:32 +0000 (07:27 +0000)]
re PR c/25509 (can't disable __attribute__((warn_unused_result)))

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

PR 25509
PR 40614
* c.opt (Wunused-result): New.
* doc/invoke.texi: Document it.
* c-common.c (c_warn_unused_result): Use it.
testsuite/
* g++.dg/warn/unused-result1-Werror.c: New.

From-SVN: r149458

15 years agotarghooks.c (default_target_can_inline_p): Rename from default_target_option_can_inli...
DJ Delorie [Fri, 10 Jul 2009 05:03:01 +0000 (01:03 -0400)]
targhooks.c (default_target_can_inline_p): Rename from default_target_option_can_inline_p.

* targhooks.c (default_target_can_inline_p): Rename from
default_target_option_can_inline_p.
* targhooks.h (default_target_can_inline_p): Likewise.
* target-def.h (TARGET_CAN_INLINE_P): Rename from
TARGET_OPTION_CAN_INLINE_P.
* config/i386/i386.c (TARGET_CAN_INLINE_P): Likewise.
* config/mep/mep.c (TARGET_CAN_INLINE_P): Likewise.
(mep_target_can_inline_p): Rename from
mep_target_option_can_inline_p.

From-SVN: r149457

15 years agore PR fortran/39334 (Recusive parameter kind produces segfault)
Paul Thomas [Fri, 10 Jul 2009 04:37:19 +0000 (04:37 +0000)]
re PR fortran/39334 (Recusive parameter kind produces segfault)

2009-07-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39334
* primary.c (match_kind_param): Return MATCH_NO if the symbol
has no value.

2009-07-10  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/39334
* gfortran.dg/recursive_parameter_1.f90: New test.

From-SVN: r149456

15 years agomep.h (FUNCTION_ARG_REGNO_P): Add coprocessor registers used to pass vectors.
DJ Delorie [Fri, 10 Jul 2009 01:31:45 +0000 (21:31 -0400)]
mep.h (FUNCTION_ARG_REGNO_P): Add coprocessor registers used to pass vectors.

* config/mep/mep.h (FUNCTION_ARG_REGNO_P): Add coprocessor
registers used to pass vectors.

From-SVN: r149455

15 years agoc_kind_tests_2.f03: clean-up leftover module(s).
Steven G. Kargl [Fri, 10 Jul 2009 00:36:20 +0000 (00:36 +0000)]
c_kind_tests_2.f03: clean-up leftover module(s).

2009-07-09  Steven G. Kargl  <kargl@gcc.gnu.org>

* gfortran.dg/c_kind_tests_2.f03: clean-up leftover module(s).
* gfortran.dg/module_equivalence_6.f90: Ditto.
* gfortran.dg/alloc_comp_auto_array_2.f90: Ditto.
* gfortran.dg/nan_2.f90: Ditto.
* gfortran.dg/inquire_11.f90: Ditto.
* gfortran.dg/abstract_type_3.f03: Ditto.
* gfortran.dg/abstract_type_1.f90: Ditto.
* gfortran.dg/private_type_9.f90: Ditto.
* gfortran.dg/abstract_type_5.f03: Ditto.
* gfortran.dg/elemental_subroutine_6.f90: Ditto.
* gfortran.dg/derived_comp_array_ref_3.f90: Ditto.
* gfortran.dg/derived_sub.f90: Ditto.
* gfortran.dg/missing_optional_dummy_5.f90: Ditto.
* gfortran.dg/bounds_check_fail_2.f90: Ditto.
* gfortran.dg/maxloc_bounds_6.f90: Ditto.
* gfortran.dg/mvbits_6.f90: Ditto.
* gfortran.dg/abstract_type_2.f03: Ditto.
* gfortran.dg/abstract_type_4.f03: Ditto.
* gfortran.dg/bounds_check_9.f90: Ditto.
* gfortran.dg/optional_dim_3.f90: Ditto.
* gfortran.dg/pr32921.f: Ditto.
* gfortran.dg/entry_16.f90: Ditto.
* gfortran.dg/generic_16.f90: Ditto.

From-SVN: r149454

15 years ago* config/mep/mep.c (mep_option_can_inline_p): Remove error call.
DJ Delorie [Fri, 10 Jul 2009 00:27:25 +0000 (20:27 -0400)]
* config/mep/mep.c (mep_option_can_inline_p): Remove error call.

From-SVN: r149453

15 years agoDaily bump.
GCC Administrator [Fri, 10 Jul 2009 00:16:51 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149452

15 years agopt.c (perform_typedefs_access_check, [...]): Use CLASS_TYPE_P.
Simon Martin [Thu, 9 Jul 2009 21:57:54 +0000 (21:57 +0000)]
pt.c (perform_typedefs_access_check, [...]): Use CLASS_TYPE_P.

gcc/cp/

2008-07-08  Simon Martin  <simartin@users.sourceforge.net>
    Jason Merrill  <jason@redhat.com>

* pt.c (perform_typedefs_access_check, get_types_needing_access_check,
append_type_to_template_for_access_check_1): Use CLASS_TYPE_P.

Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r149439

15 years agodwarf2.h (enum dwarf_location_atom): Add DW_OP_implicit_value and DW_OP_stack_value.
Jakub Jelinek [Thu, 9 Jul 2009 20:16:56 +0000 (22:16 +0200)]
dwarf2.h (enum dwarf_location_atom): Add DW_OP_implicit_value and DW_OP_stack_value.

2009-07-09  Jakub Jelinek  <jakub@redhat.com>

* dwarf2.h (enum dwarf_location_atom): Add DW_OP_implicit_value
and DW_OP_stack_value.

From-SVN: r149438

15 years agounwind-dw2-fde-darwin.c: Include dwarf2.h.
Tom Tromey [Thu, 9 Jul 2009 19:41:25 +0000 (19:41 +0000)]
unwind-dw2-fde-darwin.c: Include dwarf2.h.

gcc
* unwind-dw2-fde-darwin.c: Include dwarf2.h.
* config/mmix/mmix.c: Include dwarf2.h.
* config/rs6000/darwin-fallback.c: Include dwarf2.h.
* config/xtensa/unwind-dw2-xtensa.c: Include dwarf2.h.
* config/sh/sh.c: Include dwarf2.h.
* config/i386/i386.c: Include dwarf2.h.
* Makefile.in (DWARF2_H): Remove 'elf'.
* except.c: Include dwarf2.h.
* unwind-dw2.c: Include dwarf2.h.
* dwarf2out.c: Include dwarf2.h.
* unwind-dw2-fde-glibc.c: Include dwarf2.h.
* unwind-dw2-fde.c: Include dwarf2.h.
* dwarf2asm.c: Include dwarf2.h.
gcc/ada
* raise-gcc.c: Include dwarf2h (unconditionally).
include
* elf/dwarf2.h: Remove, renaming to...
* dwarf2.h: ... this.

From-SVN: r149433

15 years agohaifa-sched.c (insn_finishes_cycle_p): New static function.
Maxim Kuvyrkov [Thu, 9 Jul 2009 18:15:22 +0000 (18:15 +0000)]
haifa-sched.c (insn_finishes_cycle_p): New static function.

* haifa-sched.c (insn_finishes_cycle_p): New static function.
        (max_issue): Use it.
        * sched-int.h (struct sched_info: insn_finishes_block_p): New
        scheduler hook.
        * sched-rgn.c (rgn_insn_finishes_block_p): Implement it.
        (region_sched_info): Update.
        * sched-ebb.c (ebb_sched_info): Update.
        * modulo-sched.c (sms_sched_info): Update.
* sel-sched-ir.c (sched_sel_haifa_sched_info): Update.

From-SVN: r149427

15 years agovarasm.c (build_constant_desc): Don't share RTL in pool entries.
Maxim Kuvyrkov [Thu, 9 Jul 2009 18:09:23 +0000 (18:09 +0000)]
varasm.c (build_constant_desc): Don't share RTL in pool entries.

* varasm.c (build_constant_desc): Don't share RTL in pool entries.

* gcc.target/m68k/20090709-1.c: New.

From-SVN: r149426

15 years agoplugin.c (try_init_one_plugin): passes RTLD_GLOBAL to dlopen.
Basile Starynkevitch [Thu, 9 Jul 2009 17:57:14 +0000 (17:57 +0000)]
plugin.c (try_init_one_plugin): passes RTLD_GLOBAL to dlopen.

2009-07-09  Basile Starynkevitch  <basile@starynkevitch.net>

* gcc/plugin.c (try_init_one_plugin): passes RTLD_GLOBAL to dlopen.

From-SVN: r149424

15 years agore PR c++/40684 (ICE in tsubst)
Dodji Seketeli [Thu, 9 Jul 2009 17:56:44 +0000 (17:56 +0000)]
re PR c++/40684 (ICE in tsubst)

2009-07-09  Dodji Seketeli  <dodji@redhat.com>

gcc/cp/ChangeLog:
PR c++/40684
* pt.c (type_unification_real): Use tsubst_template_arg instead
of tsubst to substitute default template arguments.

gcc/testsuite/ChangeLog:
PR c++/40684
* g++.dg/template/unify11.C: New test.

From-SVN: r149423

15 years agore PR fortran/40629 (Host association problem)
Paul Thomas [Thu, 9 Jul 2009 16:48:50 +0000 (16:48 +0000)]
re PR fortran/40629 (Host association problem)

2008-07-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40629
* resolve.c (check_host_association):  Use the existing
accessible symtree and treat function expressions with
symbols that have procedure flavor.

2008-07-09  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40629
* gfortran.dg/host_assoc_function_9.f90: New test.

From-SVN: r149422

15 years agoFix typos in previous ChangeLog entry
Janis Johnson [Thu, 9 Jul 2009 16:45:47 +0000 (16:45 +0000)]
Fix typos in previous ChangeLog entry

From-SVN: r149421

15 years agore PR fortran/40646 ([F03] array-valued procedure pointer components)
Janus Weil [Thu, 9 Jul 2009 14:07:03 +0000 (16:07 +0200)]
re PR fortran/40646 ([F03] array-valued procedure pointer components)

2009-07-09  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40646
* dump-parse-tree.c (show_expr): Renamed 'is_proc_ptr_comp'.
* expr.c (is_proc_ptr_comp): Renamed to 'gfc_is_proc_ptr_comp'.
(gfc_check_pointer_assign): Renamed 'is_proc_ptr_comp'.
(replace_comp,gfc_expr_replace_comp): New functions, analogous
to 'replace_symbol' and 'gfc_expr_replace_symbol', just with components
instead of symbols.
* gfortran.h (gfc_expr_replace_comp): New prototype.
(is_proc_ptr_comp): Renamed to 'gfc_is_proc_ptr_comp'.
* interface.c (compare_actual_formal): Renamed 'is_proc_ptr_comp'.
* match.c (gfc_match_pointer_assignment): Ditto.
* primary.c (gfc_match_varspec): Handle array-valued procedure pointers
and procedure pointer components. Renamed 'is_proc_ptr_comp'.
* resolve.c (resolve_fl_derived): Correctly handle interfaces with
RESULT statement, and handle array-valued procedure pointer components.
(resolve_actual_arglist,resolve_ppc_call,resolve_expr_ppc): Renamed
'is_proc_ptr_comp'.
* trans-array.c (gfc_walk_function_expr): Ditto.
* trans-decl.c (gfc_get_symbol_decl): Security check for presence of
ns->proc_name.
* trans-expr.c (gfc_conv_procedure_call): Handle array-valued procedure
pointer components. Renamed 'is_proc_ptr_comp'.
(conv_function_val,gfc_trans_arrayfunc_assign): Renamed
'is_proc_ptr_comp'.
(gfc_get_proc_ptr_comp): Do not modify the argument 'e', but instead
make a copy of it.
* trans-io.c (gfc_trans_transfer): Handle array-valued procedure
pointer components.

2009-07-09  Janus Weil  <janus@gcc.gnu.org>

PR fortran/40646
* gfortran.dg/proc_ptr_22.f90: New.
* gfortran.dg/proc_ptr_comp_12.f90: New.

From-SVN: r149419

15 years agore PR middle-end/40692 (Endless recursion between fold_ternary and fold_cond_expr_wit...
Jakub Jelinek [Thu, 9 Jul 2009 11:19:22 +0000 (13:19 +0200)]
re PR middle-end/40692 (Endless recursion between fold_ternary and fold_cond_expr_with_comparison)

PR middle-end/40692
* fold-const.c (fold_cond_expr_with_comparison): Don't replace
arg1 with arg01 if arg1 is already INTEGER_CST.

* gcc.c-torture/compile/pr40692.c: New test.

From-SVN: r149418

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 11:03:25 +0000 (13:03 +0200)]
[multiple changes]

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Install_Context): If the unit is a package body,
install the private with_clauses of the corresponding package
declaration.

2009-07-09  Robert Dewar  <dewar@adacore.com>

* checks.adb: Minor reformatting

2009-07-09  Vasiliy Fofanov  <fofanov@adacore.com>

* ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
into ug_words.

2009-07-09  Thomas Quinot  <quinot@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
Do not warn for a constant overlaying any constant object

From-SVN: r149417

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 10:59:19 +0000 (12:59 +0200)]
[multiple changes]

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* sem_ch10.adb (Install_Context): If the unit is a package body,
install the private with_clauses of the corresponding package
declaration.

2009-07-09  Robert Dewar  <dewar@adacore.com>

* checks.adb: Minor reformatting

2009-07-09  Vasiliy Fofanov  <fofanov@adacore.com>

* ug_words, gnat_ugn.texi: Move VMS equivalents of the last check in
into ug_words.

2009-07-09  Thomas Quinot  <quinot@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case Address):
Do not warn for a constant overlaying any constant object

From-SVN: r149416

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 10:32:08 +0000 (12:32 +0200)]
[multiple changes]

2009-07-09  Thomas Quinot  <quinot@adacore.com>

* g-socket.adb (Check_Selector): Do not create local copies of the
socket sets on the stack.

2009-07-09  Vasiliy Fofanov  <fofanov@adacore.com>

* gnat_ugn.texi: Add missing VMS translations.

From-SVN: r149414

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 10:29:09 +0000 (12:29 +0200)]
[multiple changes]

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Analyze_Pragma, case Precondition): Do not analyze the
condition, to prevent generation of visible code during expansion,
when Check is not enabled.

2009-07-09  Gary Dismukes  <dismukes@adacore.com>

* checks.adb (Install_Static_Check): Call Possible_Local_Raise so that
the check gets registered for any available local handler
(Set_Local_Raise).

* sem_util.adb: Add with and use of Exp_Ch11.
(Apply_Compile_Time_Constraint_Error): Call Possible_Local_Raise so
that the check gets registered for any available local handler.

* exp_ch4.adb (Expand_N_Slice): Remove call to Enable_Range_Check
on slice ranges.

2009-07-09  Steve Baird  <baird@adacore.com>

* exp_ch11.adb (Force_Static_Allocation_Of_Referenced_Objects): New
function.
(Expand_N_Exception_Declaration): Fix handling of exceptions
declared in a subprogram.

From-SVN: r149413

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 10:22:49 +0000 (12:22 +0200)]
[multiple changes]

2009-07-09  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb (Find_Sources): Avoid error messages from gprbuild from
multi-unit files.

2009-07-09  Thomas Quinot  <quinot@adacore.com>

* freeze.adb: Minor reformatting

* exp_ch3.adb: Minor comment fix.

* sinfo.ads: Minor comment fix

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* exp_ch4.adb (Expand_N_Conditional_Expression): Set Related_Expression.

From-SVN: r149411

15 years ago[multiple changes]
Arnaud Charlet [Thu, 9 Jul 2009 10:17:40 +0000 (12:17 +0200)]
[multiple changes]

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* freeze.adb (Freeze_Expression): If the expression is the name of a
function in a call, and the function has not been frozen yet, create
extra formals for it to ensure that the proper actuals are created
when expanding the call.

2009-07-09  Emmanuel Briot  <briot@adacore.com>

* prj-pp.adb (Print): Fix handling of source index when set on a
declaration node.

From-SVN: r149408

15 years agoeinfo.ads, einfo.adb: New attribute Related_Expression...
Ed Schonberg [Thu, 9 Jul 2009 10:14:30 +0000 (10:14 +0000)]
einfo.ads, einfo.adb: New attribute Related_Expression...

2009-07-09  Ed Schonberg  <schonberg@adacore.com>

* einfo.ads, einfo.adb: New attribute Related_Expression, used to link
a temporary to the source expression whose value it captures.

* exp_util.adb (Remove_Side_Effects): Set Related_Expression as needed.

From-SVN: r149406

15 years agore PR fortran/40604 (ICE with -fcheck=pointer)
Tobias Burnus [Thu, 9 Jul 2009 09:42:34 +0000 (11:42 +0200)]
re PR fortran/40604 (ICE with -fcheck=pointer)

2009-07-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40604
        * intrinsic.c (gfc_convert_type_warn): Set sym->result.
        * trans-expr.c (gfc_conv_procedure_call): Fix -fcheck=pointer
        for optional arguments.

2009-07-09  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40604
        * gfortran.dg/pointer_check_6.f90: New test.

From-SVN: r149405

15 years agosimplify-rtx.c (simplify_binary_operation_1): Transform (and (truncate)) into (trunca...
Adam Nemet [Thu, 9 Jul 2009 05:43:56 +0000 (05:43 +0000)]
simplify-rtx.c (simplify_binary_operation_1): Transform (and (truncate)) into (truncate (and)).

* simplify-rtx.c (simplify_binary_operation_1) <AND>: Transform (and
        (truncate)) into (truncate (and)).

testsuite/
* gcc.target/mips/truncate-5.c: New test.

From-SVN: r149402

15 years agocombine.c (make_extraction): Check TRULY_NOOP_TRUNCATION before creating LHS paradoxi...
Adam Nemet [Thu, 9 Jul 2009 05:32:21 +0000 (05:32 +0000)]
combine.c (make_extraction): Check TRULY_NOOP_TRUNCATION before creating LHS paradoxical subregs.

* combine.c (make_extraction): Check TRULY_NOOP_TRUNCATION before
creating LHS paradoxical subregs.  Fix surrounding returns to
use NULL_RTX rather than 0.

From-SVN: r149401

15 years agomep.c: (mep_option_can_inline_p): New.
DJ Delorie [Thu, 9 Jul 2009 02:22:37 +0000 (22:22 -0400)]
mep.c: (mep_option_can_inline_p): New.

* config/mep/mep.c: (mep_option_can_inline_p): New.
(TARGET_OPTION_CAN_INLINE_P): Define.

From-SVN: r149400

15 years agore PR libfortran/40330 (incorrect IO)
Jerry DeLisle [Thu, 9 Jul 2009 01:54:47 +0000 (01:54 +0000)]
re PR libfortran/40330 (incorrect IO)

2009-07-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/40330
PR libfortran/40662
* gfortran.dg/fmt_cache_1.f: New test.

From-SVN: r149399

15 years agore PR libfortran/40330 (incorrect IO)
Jerry DeLisle [Thu, 9 Jul 2009 01:20:23 +0000 (01:20 +0000)]
re PR libfortran/40330 (incorrect IO)

2009-07-08  Jerry DeLisle  <jvdelisle@gcc.gnu.org>

PR libfortran/40330
PR libfortran/40662
* io/io.h (st_parameter_dt): Define format_not_saved bit used to signal
whether the parsed format data was previously saved. Used to determine
if the current format data should be freed or not.
* io/transfer.c (st_read_done): Use the format_not_saved bit.
(st_write_done): Likewise.
* io/format.c (parse_format_list): Add boolean pointer to arg list. This
pointer is used to return status to the caller regarding whether it is
safe to cache the parsed format data.  Currently, if a FMT_STRING token
is encounetered, it is not safe to cache. Also, added a local boolean
variable to hold this information as recursive calls to
parse_format_list are made.  Remove previous save_format logic.
(parse_format): Do not use the format caching facility if the current
unit is an internal unit or if it is not safe to save parsed format
data.

From-SVN: r149398

15 years agoDaily bump.
GCC Administrator [Thu, 9 Jul 2009 00:16:39 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149396

15 years agore PR libstdc++/40691 (bug in logical not operator for valarray used with slice)
Janis Johnson [Wed, 8 Jul 2009 22:26:50 +0000 (22:26 +0000)]
re PR libstdc++/40691 (bug in logical not operator for valarray used with slice)

PR libstdc++/40691
* include/bugs/valarray-after.h (_Expr::operator!): Fix return type.
* testsuite/26_numerics/valarray/40691.cc: New test.

From-SVN: r149393

15 years agore PR fortran/40675 (Support -fnosign-zero for SIGN intrinsic for Fortran 77 compatib...
Tobias Burnus [Wed, 8 Jul 2009 19:34:49 +0000 (21:34 +0200)]
re PR fortran/40675 (Support -fnosign-zero for SIGN intrinsic for Fortran 77 compatibility)

2009-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40675
        * simplify.c (gfc_simplify_sign): Handle signed zero correctly.
        * trans-intrinsic.c (gfc_conv_intrinsic_sign): Support
        -fno-sign-zero.
        * invoke.texi (-fno-sign-zero): Add text regarding SIGN
        * intrinsic.

2009-07-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/40675
        * gfortran.dg/nosigned_zero_1.f90: New test.
        * gfortran.dg/nosigned_zero_2.f90: New test.

From-SVN: r149390

15 years agore PR fortran/40683 (gfortran.dg/proc_ptr_21.f90 doesn't work for 32bit)
Paul Thomas [Wed, 8 Jul 2009 19:00:17 +0000 (19:00 +0000)]
re PR fortran/40683 (gfortran.dg/proc_ptr_21.f90 doesn't work for 32bit)

2008-07-08  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40683
* gfortran.dg/proc_ptr_21.f90: Initialize 'i'.

From-SVN: r149383

15 years agoFix nits
Eric Botcazou [Wed, 8 Jul 2009 18:24:07 +0000 (18:24 +0000)]
Fix nits

From-SVN: r149378

15 years agore PR debug/40659 (A simple struct member offset doesn't need a full dwarf location...
Mark Wielaard [Wed, 8 Jul 2009 18:07:47 +0000 (18:07 +0000)]
re PR debug/40659 (A simple struct member offset doesn't need a full dwarf location expression)

2009-07-08  Mark Wielaard  <mjw@redhat.com>

PR debug/40659
* dwarf2out.c (add_data_member_location_attribute): When we have
only a constant offset don't emit a new location description using
DW_OP_plus_uconst, but just add the constant with add_AT_int, when
dwarf_version > 2.

From-SVN: r149377

15 years agore PR target/38900 (ICE: unable to find a register to spill)
Richard Henderson [Wed, 8 Jul 2009 16:41:23 +0000 (09:41 -0700)]
re PR target/38900 (ICE: unable to find a register to spill)

PR target/38900
* config/i386/i386.h (CONDITIONAL_REGISTER_USAGE): Move to i386.c.
(enum reg_class): Add CLOBBERED_REGS.
(REG_CLASS_NAMES, REG_CLASS_CONTENTS): Likewise.
* config/i386/i386.c (ix86_conditional_register_usage): Moved
from CONDITIONAL_REGISTER_USAGE; build CLOBBERED_REGS for 64-bit.
(ix86_function_ok_for_sibcall): Tidy.  Disallow MS->SYSV sibcalls.
(ix86_expand_call): Use sibcall_insn_operand when needed.  Don't
force 64-bit sibcalls into R11.
* config/i386/constraints.md (U): New constraint.
* config/i386/i386.md (sibcall_1, sibcall_value_1): Use it.
(sibcall_1_rex64, sibcall_value_1_rex64): Likewise.
(sibcall_1_rex64_v, sibcall_value_1_rex64_v): Remove.

From-SVN: r149373

15 years agossa-pta-fn-1.c: Fix invalid testcase again.
Richard Guenther [Wed, 8 Jul 2009 12:58:36 +0000 (12:58 +0000)]
ssa-pta-fn-1.c: Fix invalid testcase again.

2009-07-08  Richard Guenther  <rguenther@suse.de>

* gcc.dg/torture/ssa-pta-fn-1.c: Fix invalid testcase again.

From-SVN: r149368

15 years agossa-pta-fn-1.c: Fix invalid testcase.
Richard Biener [Wed, 8 Jul 2009 12:41:59 +0000 (12:41 +0000)]
ssa-pta-fn-1.c: Fix invalid testcase.

2009-07-08  Richard Guenther  <rguenther@suse.de>

* gcc.dg/torture/ssa-pta-fn-1.c: Fix invalid testcase.

From-SVN: r149367

15 years agobasic-block.h (dump_regset, [...]): Remove duplicate prototypes.
Shujing Zhao [Wed, 8 Jul 2009 11:35:18 +0000 (11:35 +0000)]
basic-block.h (dump_regset, [...]): Remove duplicate prototypes.

2009-07-08  Shujing Zhao  <pearly.zhao@oracle.com>

* basic-block.h (dump_regset, debug_regset): Remove duplicate
prototypes.
* c-objc-common.h (c_initialize_diagnostics): Ditto.
* ebitmap.h (dump_ebitmap): Ditto.
* optabs.h (optab_libfunc): Ditto.
* tree.h (tree_expr_nonzero_warnv_p): Ditto.
* tree-flow.h (vect_can_force_dr_alignment_p,
get_vectype_for_scalar_type): Ditto.
(vectorize_loops): Move prototype to ...
* tree-vectorizer.h: ... here. Also, adjust comment.
(vect_set_verbosity_level): Remove duplicate prototype.
* tree-ssa-loop.c: Include tree-vectorizer.h.
* Makefile.in (tree-ssa-loop.o): Depend on tree-vectorizer.h.

From-SVN: r149364

15 years agounix.h (ASM_COMMENT_START): Add a space after the forward slash.
Nick Clifton [Wed, 8 Jul 2009 09:43:51 +0000 (09:43 +0000)]
unix.h (ASM_COMMENT_START): Add a space after the forward slash.

        * config/i386/unix.h (ASM_COMMENT_START): Add a space after the
        forward slash.

From-SVN: r149363

15 years agore PR fortran/40591 (Procedure(interface): Rejected if interface is indirectly hostas...
Paul Thomas [Wed, 8 Jul 2009 04:38:06 +0000 (04:38 +0000)]
re PR fortran/40591 (Procedure(interface): Rejected if interface is indirectly hostassociated)

2008-07-08  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40591
* decl.c (match_procedure_interface):  Correct the association
or creation of the interface procedure's symbol.

2008-07-08  Paul Thomas  <pault@gcc.gnu.org>

PR fortran/40591
* gfortran.dg/proc_ptr_21.f90: New test.

From-SVN: r149362

15 years agomep-ivc2.cpu (cpmovtocsar0_C3, [...]): Mark volatile.
DJ Delorie [Wed, 8 Jul 2009 04:19:16 +0000 (00:19 -0400)]
mep-ivc2.cpu (cpmovtocsar0_C3, [...]): Mark volatile.

* config/mep/mep-ivc2.cpu (cpmovtocsar0_C3, cpmovtocsar1_C3,
cpmovtocc_C3, cpmovtocsar0_P0S_P1, cpmovtocsar1_P0S_P1,
cpmovtocc_P0S_P1): Mark volatile.  Note which registers are
written to.
* config/mep/intrinsics.md: Regenerated.
* config/mep/mep.c (mep_interrupt_saved_reg): Save IVC2 control
registers when asm() or calls are detected.

From-SVN: r149361

15 years agoDaily bump.
GCC Administrator [Wed, 8 Jul 2009 00:16:42 +0000 (00:16 +0000)]
Daily bump.

From-SVN: r149357

15 years agore PR c++/31246 (-Wunreachable-code warnings for compiler-generated code)
Manuel López-Ibáñez [Tue, 7 Jul 2009 22:18:35 +0000 (22:18 +0000)]
re PR c++/31246 (-Wunreachable-code warnings for compiler-generated code)

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

PR c++/31246
* gimplify.c (gimplify_expr): Propagate no_warning flag when
gimplifying.
* gimple (gimple_build_call_from_tree): Likewise.
* tree-cfg.c (remove_useless_stmts_warn_notreached): Check
no_warning flag before warning.
cp/
* init.c (build_new_1): Set TREE_NO_WARNING for compiler-generated
code.
* cp-gimplify.c (genericize_eh_spec_block): Likewise.

testsuite/
* g++.dg/warn/pr31246.C: New.
* g++.dg/warn/pr31246-2.C: New.

From-SVN: r149354

15 years agore PR c++/35828 ([C++0x] ICE on default template template parameter in template function)
Jason Merrill [Tue, 7 Jul 2009 22:03:42 +0000 (18:03 -0400)]
re PR c++/35828 ([C++0x] ICE on default template template parameter in template function)

PR c++/35828
* pt.c (tsubst_decl): Don't abort if we didn't change anything
in a TEMPLATE_DECL's args.

From-SVN: r149351

15 years agotree.c (set_expr_locus): Remove.
Manuel López-Ibáñez [Tue, 7 Jul 2009 21:52:01 +0000 (21:52 +0000)]
tree.c (set_expr_locus): Remove.

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

* tree.c (set_expr_locus): Remove.
* tree.h (EXPR_LOCUS,SET_EXPR_LOCUS,set_expr_locus): Remove.
* c-typeck.c (c_finish_stmt_expr):  Replace EXPR_LOCUS by
EXPR_LOCATION.
* gimplify.c (internal_get_tmp_var): Likewise.
(gimplify_call_expr): Likewise.
(gimplify_one_sizepos): Likewise.
objc/
* objc-act.c (next_sjlj_build_catch_list): Replace EXPR_LOCUS by
EXPR_LOCATION.
cp/
* semantics.c (finalize_nrv_r): Replace EXPR_LOCUS by
EXPR_LOCATION.
ada/
* gcc-interface/trans.c (gnat_gimplify_expr):  Replace EXPR_LOCUS by
EXPR_LOCATION.

From-SVN: r149350

15 years agore PR debug/40666 (Ada tools build failure)
Eric Botcazou [Tue, 7 Jul 2009 20:46:06 +0000 (20:46 +0000)]
re PR debug/40666 (Ada tools build failure)

PR debug/40666
* dbxout.c (dbxout_symbol) <PARM_DECL>: Deal with parameters pointing
to variables for debugging purposes.

From-SVN: r149346

15 years agore PR other/40010 (Parallel make issue when building man pages)
Mark Loeser [Tue, 7 Jul 2009 19:57:15 +0000 (19:57 +0000)]
re PR other/40010 (Parallel make issue when building man pages)

gcc/
2009-06-23  Mark Loeser  <mark@halcy0n.com>

PR build/40010
* Makefile.in (gcc.pod): Depend on gcc-vers.texi.

From-SVN: r149345

15 years agore PR c++/37816 ([c++0x] Invalid handling of scoped enums defined at class scope)
Jason Merrill [Tue, 7 Jul 2009 17:55:26 +0000 (13:55 -0400)]
re PR c++/37816 ([c++0x] Invalid handling of scoped enums defined at class scope)

PR c++/37816
* decl.c (build_enumerator): Don't add enumerators for a
scoped enum to the enclosing class.

PR c++/40639
* decl.c (start_enum): Allow dependent underlying type.

PR c++/40633
* decl.c (finish_enum): Finish scope even in a template.

From-SVN: r149341

15 years agopretty-print.c (pp_base_format): Remove %J.
Manuel López-Ibáñez [Tue, 7 Jul 2009 15:29:12 +0000 (15:29 +0000)]
pretty-print.c (pp_base_format): Remove %J.

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

* pretty-print.c (pp_base_format): Remove %J.
* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
gcc_cxxdiag_char_table): Likewise.
(init_dynamic_diag_info): Likewise.

testsuite/
* gcc.dg/format/gcc_diag-1.c: Remove tests for %J.

From-SVN: r149334

15 years agopretty-print.c (pp_base_format): Remove %H.
Manuel López-Ibáñez [Tue, 7 Jul 2009 15:23:46 +0000 (15:23 +0000)]
pretty-print.c (pp_base_format): Remove %H.

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

* pretty-print.c (pp_base_format): Remove %H.
* c-format.c (gcc_diag_char_table, gcc_tdiag_char_table,
gcc_cxxdiag_char_table): Likewise.
(init_dynamic_diag_info): Likewise.
* config/mep/mep.c (mep_select_section): Likewise.

testsuite/
* gcc.dg/format/gcc_diag-1.c: Remove tests for %H.

From-SVN: r149333

15 years agoGive names to some currently nameless passes (this
Duncan Sands [Tue, 7 Jul 2009 14:52:01 +0000 (16:52 +0200)]
Give names to some currently nameless passes (this
is useful for referring to them from plugins).

From-SVN: r149331

15 years agoia64.c (ia64_handle_model_attribute): Remove an extra 'decl' for error_at.
H.J. Lu [Tue, 7 Jul 2009 14:25:58 +0000 (07:25 -0700)]
ia64.c (ia64_handle_model_attribute): Remove an extra 'decl' for error_at.

2009-07-07  H.J. Lu  <hongjiu.lu@intel.com>

* config/ia64/ia64.c (ia64_handle_model_attribute): Remove
an extra 'decl' for error_at.

From-SVN: r149330

15 years ago[multiple changes]
Arnaud Charlet [Tue, 7 Jul 2009 13:38:45 +0000 (15:38 +0200)]
[multiple changes]

2009-07-07  Gary Dismukes  <dismukes@adacore.com>

* exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for in out
parameters when the subtype of the actual is not known to be a subrange
of the formal's subtype.
(Expand_Call): Generate a range check only in the E_In_parameter case
(in out parameter range checks are now handled in Expand_Actuals).

* exp_ch4.adb (Expand_N_Slice): Restore code that calls
Enable_Range_Check.

2009-07-07  Robert Dewar  <dewar@adacore.com>

* a-stwise.adb, a-stzsea.adb, a-strsea.adb: Add comments

2009-07-07  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Expand_Interface_Conversion): Handle access type whose
designated type comes from a limited views.

2009-07-07  Emmanuel Briot  <briot@adacore.com>

* prj.ads, prj-nmsc.adb (Mark_Excluded_Sources): Fix handling of
locally removed files that are later made visible again in an importing
project.

2009-07-07  Robert Dewar  <dewar@adacore.com>

* gnat_rm.texi: Clarify documentation of Stream_Convert pragma

2009-07-07  Sergey Rybin  <rybin@adacore.com>

* gnat_ugn.texi: Add an example to the description of gnatcheck
'Style_Checks' rule option.

2009-07-07  Tristan Gingold  <gingold@adacore.com>

* seh_init.c: Fix inline assembly statement in seh_init.c

2009-07-07  Ed Schonberg  <schonberg@adacore.com>

* sem_warn.adb (Check_References): Do not emit warnings on formals of
an entry body. Only the formals of the entry declaration are traced.

From-SVN: r149328

15 years agos-osprim-mingw.adb: Minor reformatting Minor code reorganization
Robert Dewar [Tue, 7 Jul 2009 13:22:34 +0000 (13:22 +0000)]
s-osprim-mingw.adb: Minor reformatting Minor code reorganization

2009-07-07  Robert Dewar  <dewar@adacore.com>

* s-osprim-mingw.adb: Minor reformatting
Minor code reorganization

* a-stzsea.adb, a-stwise.adb, a-strsea.adb (Index): Redo previous change
(Ind should be Integer).

From-SVN: r149327

15 years ago[multiple changes]
Arnaud Charlet [Tue, 7 Jul 2009 13:17:29 +0000 (15:17 +0200)]
[multiple changes]

2009-07-07  Robert Dewar  <dewar@adacore.com>

* prj-nmsc.adb: Minor reformatting

2009-07-07  Pascal Obry  <obry@adacore.com>

* a-stwise.adb, a-stzsea.adb, a-strsea.adb (Index): properly handle
cases where Pattern is longer than Source.

2009-07-07  Pascal Obry  <obry@adacore.com>

* s-osprim-mingw.adb (Get_Base_Time): Avoid infinite loop.

From-SVN: r149326

15 years ago[multiple changes]
Arnaud Charlet [Tue, 7 Jul 2009 13:12:32 +0000 (15:12 +0200)]
[multiple changes]

2009-07-07  Emmanuel Briot  <briot@adacore.com>

* prj-nmsc.adb (Process_Naming): canonicalize file suffixes read in the
project file.

2009-07-07  Ed Schonberg  <schonberg@adacore.com>

* exp_ch3.adb (Expand_Freeze_Record_Type): Add extra formals to
primitive operations, in case one of them is called in the
initialization procedure for the type.

From-SVN: r149325

15 years agoa-calend.adb: Minor code reorganization (use conditional expressions)
Robert Dewar [Tue, 7 Jul 2009 12:42:43 +0000 (12:42 +0000)]
a-calend.adb: Minor code reorganization (use conditional expressions)

2009-07-07  Robert Dewar  <dewar@adacore.com>

* a-calend.adb: Minor code reorganization (use conditional expressions)

* s-stusta.ads, s-interr-hwint.adb, g-expect-vms.adb, s-secsta.ads,
prj-nmsc.adb, a-teioed.adb, output.ads, prj-attr.ads, a-textio.adb,
s-taskin.ads, scans.ads, s-osinte-vms.adb, s-taprop-solaris.adb,
s-tpopsp-posix-foreign.adb, s-trafor-default.adb, gnat1drv.adb,
s-stchop-vxworks.adb, s-tpopsp-posix.adb, prj-env.adb, prj-env.ads,
g-comlin.adb, exp_ch11.adb: Minor reformatting.

From-SVN: r149320

15 years agore PR middle-end/40669 (ICE in gimple_assign_set_rhs1 from eliminate_tail_call)
Jakub Jelinek [Tue, 7 Jul 2009 12:18:38 +0000 (14:18 +0200)]
re PR middle-end/40669 (ICE in gimple_assign_set_rhs1 from eliminate_tail_call)

PR middle-end/40669
* tree-tailcall.c (adjust_return_value_with_ops,
create_tailcall_accumulator): Set DECL_GIMPLE_REG_P on the temporary
if it has complex or vector type.

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

From-SVN: r149319

15 years agochecks.adb (Generate_Range_Check): Replace type conversions with unchecked conversion...
Gary Dismukes [Tue, 7 Jul 2009 10:52:14 +0000 (10:52 +0000)]
checks.adb (Generate_Range_Check): Replace type conversions with unchecked conversions to support the case of...

2009-07-07  Gary Dismukes  <dismukes@adacore.com>

* checks.adb (Generate_Range_Check): Replace type conversions with
unchecked conversions to support the case of performing range checks
on Enum'Val (permits integer values to be converted to enumeration).

* exp_attr.adb (Expand_N_Attribute_Reference, cases Attribute_Pred,
Attribute_Succ): Set Do_Range_Check to False before calling
Expand_Pred_Succ, to prevent gigi from generating any range checks.
(Expand_N_Attribute_Reference, case Attribute_Val):
Generate a range check when needed (and set Do_Range_Check to False).

* exp_ch3.adb (Expand_N_Object_Declaration): Generate a range check on
scalar object initialization if needed.

* exp_ch4.adb (Expand_Allocator_Expression): Generate range checks
when needed on scalar allocators.
(Expand_N_Qualified_Expression): Generate range check when needed.
(Expand_N_Slice): Remove call to Enable_Range_Check on slice ranges.
Checks on slice ranges handled in Resolve_Slice.

* exp_ch5.adb (Expand_N_Assignment_Statement): Generate a range check,
when needed, for all scalar assignments, not just discrete.
(Expand_Simple_Function_Return): Resolve the conversion created for a
scalar function return so that the conversion will get expanded to
generate a possible constraint check.

* exp_ch6.adb (Expand_Actuals): Call Add_Call_By_Copy_Code for out and
in out scalar actuals when subtypes don't match, to ensure generation
of return checks (and set Do_Range_Check to False).
(Expand_Call): Uncomment code to perform range checks, but make it apply
only to in and in out parameters (checks on parameter returns are
handled in Expand_Actuals). If a scalar actual for a call to a derived
subprogram is marked as needing a range check, peform it here (and set
Do_Range_Check to False).

* sem_aggr.adb (Resolve_*_Aggregate.Resolve_Aggr_Expr): Generate a
range check on scalar component associations when needed.

* sem_eval.adb (In_Subrange_Of): Return False when the first type has
infinities but the second type does not, as these aren't compatible
floating-point types.

* sem_res.adb (Resolve_Slice): In the case where the prefix of the
slice is itself a slice, pick up the Etype of the prefix. This handles
the case where the prefix was an Image attribute expanded to a slice,
and ensures that we get the subtype with the slice constraint rather
than the unconstrained subbtype of the 'Image.

From-SVN: r149318

15 years agosem_ch4.adb (Analyze_Conditional_Expression): handle properly overloaded expressions...
Ed Schonberg [Tue, 7 Jul 2009 10:40:14 +0000 (10:40 +0000)]
sem_ch4.adb (Analyze_Conditional_Expression): handle properly overloaded expressions in a conditional expressions.

2009-07-07  Ed Schonberg  <schonberg@adacore.com>

* sem_ch4.adb (Analyze_Conditional_Expression): handle properly
overloaded expressions in a conditional expressions.

* sem_res.adb (Resolve): Handle properly overloaded conditional
expressions.

From-SVN: r149317

15 years agoscng.adb: Minor reformattting
Robert Dewar [Tue, 7 Jul 2009 10:36:25 +0000 (10:36 +0000)]
scng.adb: Minor reformattting

2009-07-07  Robert Dewar  <dewar@adacore.com>

* scng.adb: Minor reformattting

* par-ch2.adb (Scan_Pragma_Argument_Association): Pragma argument
association allows conditional expression without parens.

* par-ch4.adb (P_Name): Attribute arguments can be conditional
expressions without enclosing parentheses, and also as parameters,
indexing expressions etc.
(P_Conditional_Expression): New procedure
(P_Expression_If_OK): New procedure

* par.adb (P_Conditional_Expression): New procedure
(P_Expression_If_OK): New procedure

* sem_ch4.adb (Analyze_Conditional_Expression): Allow for two argument
form of conditional expression.

* sem_res.adb (Resolve_Conditional_Expression): Deal with supplying
missing True argument if ELSE argument missing.

* sinfo.adb (Is_Elsif): New flag

* sinfo.ads (N_Conditional_Expression): This node is now a syntactic
part of the language, and the documentation is modified accordingly.
(Is_Elsif): New flag

From-SVN: r149316

15 years agot-osf4 (SHLIB_LINK): Do not hide the dummy weak pthread symbols.
Olivier Hainque [Tue, 7 Jul 2009 06:53:56 +0000 (06:53 +0000)]
t-osf4 (SHLIB_LINK): Do not hide the dummy weak pthread symbols.

* config/alpha/t-osf4 (SHLIB_LINK): Do not hide the dummy weak
pthread symbols.

From-SVN: r149314