Richard Guenther [Thu, 7 Oct 2010 14:35:38 +0000 (14:35 +0000)]
target.def (autovectorize_vector_sizes): New target hook.
2010-10-07 Richard Guenther <rguenther@suse.de>
* target.def (autovectorize_vector_sizes): New target hook.
* targhooks.c (default_autovectorize_vector_sizes): New function.
* targhooks.h (default_autovectorize_vector_sizes): Declare.
* doc/tm.texi.in (TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES):
Document.
* doc/tm.texi: Update.
* config/i386/i386.c (ix86_autovectorize_vector_sizes): New function.
(TARGET_VECTORIZE_AUTOVECTORIZE_VECTOR_SIZES): Define.
From-SVN: r165115
Richard Guenther [Thu, 7 Oct 2010 14:34:44 +0000 (14:34 +0000)]
target.def (units_per_simd_word): Rename to ...
2010-10-07 Richard Guenther <rguenther@suse.de>
* target.def (units_per_simd_word): Rename to ...
(preferred_simd_mode): ... this. Return mode instead of size.
* targhooks.c (default_units_per_simd_word): Rename to ...
(default_preferred_simd_mode): ... this. Return word_mode.
* targhooks.h (default_preferred_simd_mode): Declare.
* config/arm/arm.c (arm_units_per_simd_word): Rename to ...
(arm_preferred_simd_mode): ... this. Re-implement.
* config/i386/i386.c (ix86_units_per_simd_word): Rename to ...
(ix86_preferred_simd_mode): ... this. Re-implement.
* config/sparc/sparc.c (sparc_units_per_simd_word): Rename to ...
(sparc_preferred_simd_mode): ... this. Re-implement.
* config/mips/mips.c (mips_units_per_simd_word): Rename to ...
(mips_preferred_simd_mode): ... this. Re-implement.
* config/rs6000/rs6000.c (rs6000_units_per_simd_word): Rename to ...
(rs6000_preferred_simd_mode): ... this. Re-implement.
* tree-vect-stmts.c (get_vectype_for_scalar_type): Adjust.
* doc/tm.texi.in (TARGET_VECTORIZE_UNITS_PER_SIMD_WORD): Remove.
(TARGET_VECTORIZE_PREFERRED_SIMD_MODE): Document.
* doc/tm.texi: Update.
From-SVN: r165114
Richard Guenther [Thu, 7 Oct 2010 14:32:20 +0000 (14:32 +0000)]
re PR middle-end/45869 (type mismatch in shift expression produces ice with -O3 and -m32)
2010-10-07 Richard Guenther <rguenther@suse.de>
PR middle-end/45869
* tree-cfg.c (verify_gimple_assign_binary): Allow vector shifts
of pointers.
* gcc.dg/torture/pr45869.c: New testcase.
From-SVN: r165113
Iain Sandoe [Thu, 7 Oct 2010 14:22:27 +0000 (14:22 +0000)]
vec-ify ObjC* build_objc_method_call()
gcc/objc:
* objc-act.c (build_objc_method_call): Replace calls to
build_function_call () with the VEC equivalent. Construct parameter
lists as VECs.
From-SVN: r165112
Iain Sandoe [Thu, 7 Oct 2010 14:05:24 +0000 (14:05 +0000)]
do not emit bogus set-not-used warnings for objc* entities used as message receivers.
gcc/objc:
* objc-act.c (objc_build_message_expr): Call mark_exp_read () to signal that
the receiver has been used.
gcc/testsuite:
* objc.dg/set-not-used-1.m: New
* obj-c++.dg/set-not-used-1.mm: New.
From-SVN: r165111
Arnaud Charlet [Thu, 7 Oct 2010 13:59:38 +0000 (15:59 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_prag.adb, sem_ch13.adb: Implement AI05-0012-1/02.
* gcc-interface/Make-lang.in: Update dependencies.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.ad: (Instantiate_Object): For an in-out formal of a child
unit, if the type of the formal is declared in a parent unit and is not
a formal itself, the actual must be located from an enclosing parent
instance by normal visibility.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch4.adb (Analyze_Allocator): In Ada 2012, a null_exclusion
indicator is illegal for an uninitialized allocator.
From-SVN: r165110
Iain Sandoe [Thu, 7 Oct 2010 13:51:38 +0000 (13:51 +0000)]
fix cut & paste error in cp/parser and add testscases in case of fture error.
gcc/cp:
parser.c (cp_parser_objc_method_tail_params_opt): Peek new token after
finding ellipsis, before checking for attributes.
testsuite:
* objc.dg/attributes/method-attribute-3.m: New.
* obj-c++.dg/attributes/method-attribute-3.mm: New.
From-SVN: r165109
Arnaud Charlet [Thu, 7 Oct 2010 13:26:02 +0000 (15:26 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Analyze_Attribute_Definition_Clause, case
Component_Size): Complete previous change.
2010-10-07 Vincent Celier <celier@adacore.com>
* scng.adb (Scan): Call Accumulate_Token_Checksum for Tok_Identifier,
even for keywords, to avoid having the checksum to depend on the Ada
version.
2010-10-07 Gary Dismukes <dismukes@adacore.com>
* sem_aggr.adb, sem_ch12.adb, sem_ch6.adb, par-ch5.adb,
exp_ch3.adb: Minor reformatting.
From-SVN: r165106
Arnaud Charlet [Thu, 7 Oct 2010 13:21:42 +0000 (15:21 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Component_Size): It is now illegal to give an incorrect component size
clause in the case of aliased or atomic components.
* sem_prag.adb (Analyze_Pragma, case Pack): It is now illegal to give
an effective pragma Pack in the case of aliased or atomic components.
2010-10-07 Steve Baird <baird@adacore.com>
* exp_ch4.adb (Expand_N_Allocator): Do not bypass expansion
in the case of a violation of an active No_Task_Hierarchy restriction.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validate_Derived_Type_Instance): If a formal derived
type is non-limited, an actual for it cannot be limited.
From-SVN: r165105
Arnaud Charlet [Thu, 7 Oct 2010 13:06:22 +0000 (15:06 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* einfo.ads (No_Pool_Assigned): Update documentation.
* sem_ch13.adb (Analyze_Attribute_Definition_Clause, case
Storage_Size): We only set No_Pool_Assigned if the expression is a
static constant and zero.
* sem_res.adb (Resolve_Allocator): Allocation from empty storage pool
should be an error not a warning.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* exp_aggr.adb (Expand_Array_Aggregate): Recognize additional cases
where an aggregate in an assignment can be built directly into the
target, and does not require the creation of a temporary that may
overflow the stack.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_aggr.adb (Analyze_Record_Aggregate): In
Ada2012, a choice list
in a record aggregate can correspond to several components of
anonymous access types, as long as the designated subtypes match.
From-SVN: r165104
Robert Dewar [Thu, 7 Oct 2010 12:59:00 +0000 (12:59 +0000)]
gnat_rm.texi, [...]: Change spelling parametrize(d) => parameterize(d).
2010-10-07 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi, exp_util.adb, sinfo.adb, sinfo.ads, sem_ch12.adb,
sem.adb, gnat_ugn.texi, sem_util.ads, par-ch6.adb, targparm.ads,
restrict.adb, sem_ch6.adb, sem_ch6.ads, sprint.adb, i-c.ads: Change
spelling parametrize(d) => parameterize(d).
From-SVN: r165103
Robert Dewar [Thu, 7 Oct 2010 12:52:01 +0000 (12:52 +0000)]
sem_ch12.adb: Add comment.
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_ch12.adb: Add comment.
* sem_ch6.adb: Minor reformatting.
From-SVN: r165102
Alan Modra [Thu, 7 Oct 2010 12:47:52 +0000 (23:17 +1030)]
rs6000.c (rs6000_emit_prologue): Use gen_int_mode rather than sign extension by hand.
* config/rs6000/rs6000.c (rs6000_emit_prologue): Use gen_int_mode
rather than sign extension by hand.
From-SVN: r165101
Arnaud Charlet [Thu, 7 Oct 2010 12:45:48 +0000 (14:45 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch3.adb, par-ch6.adb, par-ch7.adb, par-ch9.adb, par-ch10.adb: Add
Pexp to Pf_Rec constants
(P_Subprogram): Expression is always enclosed in parentheses
* par.adb (Pf_Rec): add Pexp flag for parametrized expression
* sinfo.ads (N_Parametrized_Expression): Expression must be in parens
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.adb (Analyze_Subprogram_Specification): Implement
Ada2012
checks on functions that return an abstract type or have a controlling
result whose designated type is an abstract type.
(Check_Private_Overriding): Implement
Ada2012 checks on functions
declared in the private part, if an abstract type is involved.
* sem_ch12.adb (Analyze_Generic_Subprogram_Declaration): In
Ada2012,
reject a generic function that returns an abstract type.
* exp_ch5.adb (Expand_Simple_Function_Return): in
Ada2012, if a
function has a controlling access result, check that the tag of the
return value matches the designated type of the return expression.
From-SVN: r165100
Arnaud Charlet [Thu, 7 Oct 2010 12:37:10 +0000 (14:37 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch6.adb: Fix error in handling of parametrized expressions.
* par-ch4.adb (P_Name): Allow qualified expression as name in Ada 2012
mode.
(P_Simple_Expression): Better message for qualified expression prefix
* s-crc32.adb: Minor reformatting.
* exp_intr.adb (Expand_Unc_Deallocation): Remove test for empty
storage pool (this test is moved to Sem_Intr).
* sem_intr.adb (Check_Intrinsic_Call): Add check for deallocation from
empty storage pool, moved here from Exp_Intr and made into error.
(Check_Intrinsic_Call): Remove assumption in generating not-null free
warning that the name of the instantiation is Free.
* sinput.adb (Tree_Read): Document use of illegal free call allowed in
GNAT mode.
* types.ads: Remove storage size clauses from big types (since we may
need to do deallocations, which are now illegal for empty pools).
2010-10-07 Sergey Rybin <rybin@adacore.com>
* gnat_ugn.texi: Add missing word.
From-SVN: r165099
Robert Dewar [Thu, 7 Oct 2010 12:33:30 +0000 (12:33 +0000)]
exp_util.adb (Insert_Actions): Add handling of N_Parametrized_Expression.
2010-10-07 Robert Dewar <dewar@adacore.com>
* exp_util.adb (Insert_Actions): Add handling of
N_Parametrized_Expression.
* par-ch6.adb (P_Subprogram): Add parsing of parametrized expression
* sem.adb: Add entry for N_Parametrized_Expression
* sem_ch6.adb (Analyze_Parametrized_Expression): New procedure
* sem_ch6.ads (Analyze_Parametrized_Expression): New procedure
* sinfo.ads, sinfo.adb: Add N_Parametrized_Expression
* sprint.adb (Sprint_Node): Add handling for N_Parametrized_Expression
* par-ch4.adb: Minor reformatting.
From-SVN: r165098
Arnaud Charlet [Thu, 7 Oct 2010 12:24:31 +0000 (14:24 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* scng.adb (Skip_Other_Format_Characters): New procedure
(Start_Of_Wide_Character): New procedure
(Scan): Use Start_Of_Wide_Character where appropriate
(Scan): Improve error message for other_format chars in identifier
(Scan): Allow other_format chars between tokens
2010-10-07 Javier Miranda <miranda@adacore.com>
* exp_util.adb (Safe_Prefixed_Reference): When removing side effects,
Add missing support for explicit dereferences.
2010-10-07 Robert Dewar <dewar@adacore.com>
* par-ch10.adb, par-ch3.adb, par.adb: Minor reformatting.
From-SVN: r165097
Joseph Myers [Thu, 7 Oct 2010 11:56:35 +0000 (12:56 +0100)]
* vi.po: New.
From-SVN: r165095
Paolo Carlini [Thu, 7 Oct 2010 11:23:07 +0000 (11:23 +0000)]
locale_facets_nonio.tcc (time_get<>:: _M_extract_via_format): Tighten somewhat error checking.
2010-10-07 Paolo Carlini <paolo.carlini@oracle.com>
* include/bits/locale_facets_nonio.tcc (time_get<>::
_M_extract_via_format): Tighten somewhat error checking.
* testsuite/22_locale/time_get/get_time/char/6.cc: New.
* testsuite/22_locale/time_get/get_time/wchar_t/6.cc: Likewise.
From-SVN: r165094
Jan Hubicka [Thu, 7 Oct 2010 11:18:28 +0000 (13:18 +0200)]
* lto.c (lto_balanced_map): Do not produce empty partitions.
From-SVN: r165093
Arnaud Charlet [Thu, 7 Oct 2010 10:59:32 +0000 (12:59 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* exp_disp.adb, exp_dist.adb, exp_util.ads, exp_util.adb,
exp_ch11.adb: Rename Full_Qualified_Name to Fully_Qualified_Name_String
* sem_util.adb, sem_util.ads (Full_Qualified_Name): Moved to
Exp_Util.Fully_Qualified_Name_String.
2010-10-07 Robert Dewar <dewar@adacore.com>
* rtsfind.ads: Add entry for Ada.Real_Time.Timing_Events.Set_Handler
* sem_res.adb (Resolve_Call): A call to
Ada.Real_Time.Timing_Events.Set_Handler violates restriction
No_Relative_Delay (AI-0211).
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_ch10.adb: Small change in error message.
From-SVN: r165092
Robert Dewar [Thu, 7 Oct 2010 10:54:11 +0000 (10:54 +0000)]
tbuild.ads: Minor reformatting.
2010-10-07 Robert Dewar <dewar@adacore.com>
* tbuild.ads: Minor reformatting.
From-SVN: r165091
Jan Hubicka [Thu, 7 Oct 2010 10:52:34 +0000 (12:52 +0200)]
re PR middle-end/45926 (Revision 165057 breaks GOMP)
PR middle-end/45926
* ipa.c (cgraph_remove_unreachable_nodes): Revert my previous patch.
From-SVN: r165090
Mikael Morin [Thu, 7 Oct 2010 10:46:58 +0000 (10:46 +0000)]
re PR fortran/45916 (ICE in match_procedure_in_type, at fortran/decl.c:7921)
2010-10-07 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45916
Revert revision 165026:
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* decl.c (match_procedure_in_type): Assertify if conditions.
2010-10-07 Mikael Morin <mikael@gcc.gnu.org>
PR fortran/45916
* gfortran.dg/generic_typebound_operator_1.f90: New test.
From-SVN: r165089
Arnaud Charlet [Thu, 7 Oct 2010 10:35:03 +0000 (12:35 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* gnatcmd.adb, make.adb, prj-nmsc.adb, sem_elab.adb: Minor reformatting
2010-10-07 Arnaud Charlet <charlet@adacore.com>
* exp_ch11.adb (Expand_N_Exception_Declaration): Update comments.
From-SVN: r165088
Richard Guenther [Thu, 7 Oct 2010 09:51:52 +0000 (09:51 +0000)]
re PR other/45914 (Typo in gcc/configure.ac)
2010-10-07 Richard Guenther <rguenther@suse.de>
PR bootstrap/45914
* configure.ac: Fix typo.
* configure: Regenerated.
From-SVN: r165087
Andi Kleen [Thu, 7 Oct 2010 09:34:50 +0000 (09:34 +0000)]
Turn PR_SET_NAME check into link check
Fixes cross compilation for libiberty after my change
libiberty/
2010-10-07 Andi Kleen <ak@linux.intel.com>
* configure: Regenerate.
* configure.ac: Turn PR_SET_NAME check into link check.
From-SVN: r165086
Vincent Celier [Thu, 7 Oct 2010 09:27:50 +0000 (11:27 +0200)]
gnatcmd.adb (Check_Files): When looking for the .ci file for a binder generated file...
2010-10-07 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Check_Files): When looking for the .ci file for a
binder generated file, look for both b~xxx and b__xxx as gprbuild
always uses b__ as the prefix of such files.
From-SVN: r165085
Arnaud Charlet [Thu, 7 Oct 2010 09:26:27 +0000 (11:26 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_res.adb: Minor reformatting
2010-10-07 Olivier Ramonat <ramonat@adacore.com>
* gnat_ugn.texi: Minor editing.
* opt.ads: Document that scripts rely on specific formats in opt.ads
2010-10-07 Robert Dewar <dewar@adacore.com>
* a-wichun.ads, a-wichun.adb (To_Lower_Case): New function
(To_Upper_Case): Fix to be inverse of To_Lower_Case
* a-zchuni.ads, a-zchuni.adb (To_Lower_Case): New function
(To_Upper_Case): Fix to be inverse of To_Lower_Case
2010-10-07 Robert Dewar <dewar@adacore.com>
* a-wichha.adb, a-wichha.ads, a-zchhan.adb, a-zchhan.ads: New file.
* impunit.adb: Add entries for a-wichha/a-zchhan
* Makefile.rtl: Add entries for a-wichha/a-zchhan
2010-10-07 Vincent Celier <celier@adacore.com>
* make.adb (Check): Call Check_Source_Info_In_ALI with Project_Tree
* makeutl.adb (Check_Source_Info_In_ALI): If there is at least one
replaced source, check that none of the replaced sources are in the
dependencies.
* makeutl.ads (Check_Source_Info_In_ALI): New parameter Tree
* prj-nmsc.adb (Remove_Source): New parameter Tree. If the source is
replaced with a source with a different file name, put it in the hash
table Replaced_Sources.
(Add_Source): Call Remove_Source with Data.Tree. If there is at least
one replaced source, check if it has the same file name as the current
source; if it has, remove it from the hash table Replaced_Sources.
* prj.adb (Reset): Reset hash table Tree.Replaced_Sources
* prj.ads (Replaced_Source_HTable): New hash table
(Project_Tree_Data): New components Replaced_Sources and
Replaced_Source_Number.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* sem_elab.adb (Check_A_Call): After inserting elaboration check, set
proper flag to prevent a double elaboration check on the same call.
* exp_util.adb (Insert_Actions): If the enclosing node is an
Expression_With_Actions and it has been analyzed already, find
insertion point further up in the tree.
2010-10-07 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch13.adb (Analyze_Record_Representation_Clause): Alphabetize all
local variables. Remove the general restriction which prohibits the
application of record rep clauses to Unchecked_Union types. Add Ada
2012 check to detect improper naming of an Unchecked_Union
discriminant in record rep clause.
* sem_prag.adb: Add with and use clause for Exp_Ch7.
(Analyze_Pragma): Unchecked_Union case: Propagate the Unchecked_Union
type to all invocations of Check_Component and Check_Variant.
(Check_Component): Add formal parameters UU_Typ and In_Variant_Part.
Rewritten. Add Ada 2012 check to detect improper use of formal
private types and private extensions as component types of an
Unchecked_Union declared inside a generic body.
(Check_Variant): Add formal parameter UU_Typ. Propagate the
Unchecked_Union type to all calls of Check_Component. Signal that the
current component comes from the variant part of an Unchecked_Union
type.
(Inside_Generic_Body): New routine.
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* exp_ch4.adb (Expand_Composite_Equality): When looking for a primitive
equality operation for a record component, verify that both formals
have the same type, and the result type is boolean.
2010-10-07 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Check_Files): When looking for the .ci file for a
binder generated file, look for both b~xxx and b__xxx as gprbuild
always uses b__ as the prefix of such files.
From-SVN: r165084
Arnaud Charlet [Thu, 7 Oct 2010 09:16:06 +0000 (11:16 +0200)]
[multiple changes]
2010-10-07 Thomas Quinot <quinot@adacore.com>
* sem_res.adb: Minor reformatting.
2010-10-07 Arnaud Charlet <charlet@adacore.com>
* debug.adb: Update -gnatd.J documentation.
2010-10-07 Robert Dewar <dewar@adacore.com>
* gnat_rm.texi: Document handling of invalid values
* s-utf_32.ads, s-utf_32.adb (UTF_To_Lower_Case): Fix implementation
to match new spec.
(UTF_To_Upper_Case): New function.
From-SVN: r165083
Arnaud Charlet [Thu, 7 Oct 2010 09:12:36 +0000 (11:12 +0200)]
[multiple changes]
2010-10-07 Robert Dewar <dewar@adacore.com>
* sem_attr.adb: Minor reformatting.
* einfo.ads, einfo.adb (Is_Ada_2012_Only): New flag
* itypes.adb (Create_Null_Excluding_Itype): Set Is_Ada_2012_Only flag
properly.
* lib-xref.adb (Generate_Reference): Warn on use of Ada 2012 entity in
non-Ada 2012 mode.
* opt.ads (Warn_On_Ada_2012_Compatibility): New flag
* sem_ch3.adb (Analye_Subtype_Declaration): Inherit Is_Ada_2012_Only
* sem_ch7.adb (Preserve_Full_Attributes): Preserve Is_Ada_2012_Only
flag.
* sem_prag.adb (Analyze_Pragma, case Ada_12/Ada_2012): Allow form with
argument.
* sem_type.adb (Disambiguate): Deal with Is_Ada_2012_Only.
* sem_warn.adb (Warn_On_Ada_2012_Compatibility): New flag, treated
same as 2005 flag.
2010-10-07 Javier Miranda <miranda@adacore.com>
* a-tags.ads: Use new support for pragma Ada_2012 with function
Type_Is_Abstract.
From-SVN: r165082
Arnaud Charlet [Thu, 7 Oct 2010 09:08:36 +0000 (11:08 +0200)]
[multiple changes]
2010-10-07 Ed Schonberg <schonberg@adacore.com>
* par-ch5.adb (P_Sequence_Of_Statements): In
Ada2012 a label can end a
sequence of statements.
2010-10-07 Vincent Celier <celier@adacore.com>
* gnatcmd.adb (Check_Files): Only add a .ci files if it exists
2010-10-07 Javier Miranda <miranda@adacore.com>
* a-tags.ads, a-tags.adb (Type_Is_Abstract): New subprogram.
* rtsfind.ads (RE_Type_Is_Abstract): New entity.
* exp_disp.adb (Make_DT): Initialize TSD component Type_Is_Abstract.
2010-10-07 Arnaud Charlet <charlet@adacore.com>
* sem_ch12.adb (Mark_Context): Removed, no longer needed.
(Analyze_Package_Instantiation): No longer analyze systematically a
generic body in CodePeer mode.
* freeze.adb, sem_attr.adb: Update comments.
From-SVN: r165081
Jonathan Wakely [Thu, 7 Oct 2010 00:19:18 +0000 (01:19 +0100)]
re PR libstdc++/45924 ([C++0x] bind<R>(x)(y, z) fails)
2010-10-07 Jonathan Wakely <jwakely.gcc@gmail.com>
PR libstdc++/45924
* include/std/functional (_Bind_result::operator()): Do not expand
template parameter pack in forward call.
* testsuite/20_util/bind/45924.cc: New.
From-SVN: r165075
GCC Administrator [Thu, 7 Oct 2010 00:18:09 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r165074
Jonathan Wakely [Thu, 7 Oct 2010 00:17:24 +0000 (01:17 +0100)]
re PR libstdc++/45924 ([C++0x] bind<R>(x)(y, z) fails)
PR libstdc++/45924
* include/std/functional (_Bind_result::operator()): Do not expand
template parameter pack in forward call.
* testsuite/20_util/bind/45924.cc: New.
From-SVN: r165072
Jerry DeLisle [Wed, 6 Oct 2010 22:49:28 +0000 (22:49 +0000)]
re PR fortran/45889 (Regression with I/O of element of allocatable array in derived type)
2010-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/45889
* gfortran.dg/alloc_comp_constraint_6.f90: New test.
From-SVN: r165069
Jerry DeLisle [Wed, 6 Oct 2010 22:38:30 +0000 (22:38 +0000)]
re PR fortran/45889 (Regression with I/O of element of allocatable array in derived type)
2010-10-06 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR fortran/45889
* resolve.c (resolve_transfer): Use expression inside parenthesis to
find acutal component to be transgferred.
From-SVN: r165068
Nicola Pero [Wed, 6 Oct 2010 22:07:08 +0000 (22:07 +0000)]
In gcc/cp/: 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/cp/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from apple/trunk branch on FSF servers.
* cp-tree.def: Added AT_ENCODE_EXPR here instead of to the no
longer existing gcc/c-common.def.
2005-12-14 Fariborz Jahanian <fjahanian@apple.com>
Radar
4278774
* pt.c (tsubst_copy_and_build): Instantiate @endcode(T).
* parser.c (cp_parser_objc_encode_expression): Build a templatized
parse tree for @encode(T).
2005-12-14 Fariborz Jahanian <fjahanian@apple.com>
Radar
4278774
* c-common.def: Add new expression code AT_ENCODE_EXPR.
In gcc/testsuite/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-12-14 Fariborz Jahanian <fjahanian@apple.com>
Radar
4278774
* obj-c++.dg/encode-9.mm: New.
From-SVN: r165067
Andi Kleen [Wed, 6 Oct 2010 22:02:58 +0000 (22:02 +0000)]
[PATCH] Report LTO phase in lto1 process name v2
On larger parallel WHOPR builds I find it useful to see in top which
phase a given lto1 is in.
Set the process name to lto1-wpa, lto1-ltrans, lto1-lto depending
on the current mode.
This is currently only implemented for Linux and only
using the "comm" process name, which is reported in top.
v2: Moved function to libiberty, renamed setproctitle to match
BSD. In theory it should pick up BSD's libc function for this
on a BSD system, but I haven't tested this.
gcc/lto/
2010-10-06 Andi Kleen <ak@linux.intel.com>
* lto.c (lto_process_name): Add.
(lto_main): Call lto_process_name.
include/
2010-10-06 Andi Kleen <ak@linux.intel.com>
* libiberty.h (setproctitle): Add prototype.
libiberty/
2010-10-06 Andi Kleen <ak@linux.intel.com>
* Makefile.in (CFILES): Add setproctitle.
(CONFIGURED_OFILES): Add setproctitle.
(setproctitle): Add rule.
* config.in: Regenerate.
* configure: Regenerate.
* configure.ac: Add checks for prctl PR_SET_NAME and setproctitle.
* setproctitle.c: Add file.
* functions.texi: Regenerate.
From-SVN: r165066
Francois-Xavier Coudert [Wed, 6 Oct 2010 20:10:43 +0000 (20:10 +0000)]
spu-c.c (spu_resolve_overloaded_builtin): Don't use define_builtin_std where it's unnecessary.
* config/spu/spu-c.c (spu_resolve_overloaded_builtin): Don't use
define_builtin_std where it's unnecessary.
* config/i386/nto.h (TARGET_OS_CPP_BUILTINS): Likewise.
From-SVN: r165065
Anatoly Sokolov [Wed, 6 Oct 2010 18:12:49 +0000 (22:12 +0400)]
tm.texi.in (CLASS_LIKELY_SPILLED_P): Remove documentation.
* doc/tm.texi.in (CLASS_LIKELY_SPILLED_P): Remove documentation.
* doc/tm.texi.in: Regenerate.
* system.h (CLASS_LIKELY_SPILLED_P): Poison.
* targhooks.c (default_class_likely_spilled_p): Don't use the
CLASS_LIKELY_SPILLED_P macro.
* config\arm\arm.md: Update comment.
From-SVN: r165060
Nicola Pero [Wed, 6 Oct 2010 17:57:29 +0000 (17:57 +0000)]
Removed obsolete gcc/objc/README file
From-SVN: r165059
Jan Hubicka [Wed, 6 Oct 2010 17:28:13 +0000 (19:28 +0200)]
lto.c (partition_cgraph_node_p, [...]): Handle COMDATs required by the linker.
* lto.c (partition_cgraph_node_p, partition_varpool_node_p): Handle
COMDATs required by the linker.
From-SVN: r165058
Jan Hubicka [Wed, 6 Oct 2010 17:24:40 +0000 (19:24 +0200)]
ipa.c (cgraph_remove_unreachable_nodes): External references can always be removed.
* ipa.c (cgraph_remove_unreachable_nodes): External references can always
be removed.
(cgraph_externally_visible_p): We can not bring local comdats that are known
to linker; fix handling of internal visibility.
(function_and_variable_visibility): Likewise.
From-SVN: r165057
Paolo Carlini [Wed, 6 Oct 2010 17:17:16 +0000 (17:17 +0000)]
functional (struct _Weak_result_type_impl): Add specializazions for cv-qualified function types...
2010-10-06 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/functional (struct _Weak_result_type_impl): Add
specializazions for cv-qualified function types, for variadic
function types and pointers and references to function types,
and for pointers to member function types.
(struct _Reference_wrapper_base): Add specializations for
cv-qualified unary and binary function types.
* testsuite/20_util/reference_wrapper/result_type.cc: New.
* testsuite/20_util/reference_wrapper/typedefs-2.cc: Likewise.
From-SVN: r165056
Rainer Orth [Wed, 6 Oct 2010 17:01:11 +0000 (17:01 +0000)]
re PR libstdc++/45863 (FAIL: libstdc++-abi/abi_check)
PR libstdc++/45863
* scripts/extract_symvers: Restore revision 164879.
Only use pvs on SunOS.
From-SVN: r165055
Marcus Shawcroft [Wed, 6 Oct 2010 16:42:50 +0000 (16:42 +0000)]
futex.h: New.
2010-10-06 Marcus Shawcroft <marcus.shawcroft@arm.com>
* config/linux/futex.h: New.
* config/linux/arm/mutex.h: New.
* configure.tgt (arm*-*-linux*): Add config path.
From-SVN: r165054
Mikael Morin [Wed, 6 Oct 2010 16:39:27 +0000 (16:39 +0000)]
trans-stmt.c (gfc_trans_allocate): free lhs expr.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-stmt.c (gfc_trans_allocate): free lhs expr.
From-SVN: r165053
Mikael Morin [Wed, 6 Oct 2010 16:30:08 +0000 (16:30 +0000)]
trans-array.c (gfc_free_ss_chain): Made non-static.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_free_ss_chain): Made non-static.
* trans-array.h (gfc_free_ss_chain): New prototype.
* trans-stmt.c (gfc_trans_where_2): Free ss chains.
From-SVN: r165052
Mikael Morin [Wed, 6 Oct 2010 16:21:12 +0000 (16:21 +0000)]
trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's subcomponents.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-intrinsic.c (gfc_conv_intrinsic_funcall): Also free symbol's
subcomponents.
From-SVN: r165049
Mikael Morin [Wed, 6 Oct 2010 16:11:23 +0000 (16:11 +0000)]
trans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling gfc_free_expr.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-expr.c (get_proc_ptr_comp): Restore initial expression type
before calling gfc_free_expr.
From-SVN: r165048
Mikael Morin [Wed, 6 Oct 2010 16:05:41 +0000 (16:05 +0000)]
trans-expr.c (get_proc_ptr_comp): Restore initial expression type before calling gfc_free_expr.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-expr.c (get_proc_ptr_comp): Restore initial expression type
before calling gfc_free_expr.
From-SVN: r165047
Mikael Morin [Wed, 6 Oct 2010 15:59:31 +0000 (15:59 +0000)]
trans-array.c (gfc_conv_tmp_array_ref): Add factorized call to gfc_advance_se_ss_chain.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_conv_tmp_array_ref): Add factorized call to
gfc_advance_se_ss_chain.
* trans-expr.c (gfc_conv_subref_array_ref, gfc_conv_procedure_call,
gfc_conv_array_constructor_expr, gfc_trans_assignment_1): Remove
calls to gfc_advance_se_ss_chain after gfc_conv_tmp_array_ref.
* trans-intrinsic.c (gfc_conv_intrinsic_function): Ditto.
* trans-stmt.c (gfc_trans_where_assign, gfc_trans_where_3): Ditto.
From-SVN: r165046
Mikael Morin [Wed, 6 Oct 2010 15:48:25 +0000 (15:48 +0000)]
trans.c (gfc_restore_backend_locus): New function.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans.c (gfc_restore_backend_locus): New function.
(gfc_get_backend_locus): Renamed to ...
(gfc_save_backend_locus): ... this.
* trans.h (gfc_restore_backend_locus, gfc_get_backend_locus,
gfc_save_backend_locus): Same.
* trans-array.c (gfc_trans_g77_array, gfc_trans_dummy_array_bias,
gfc_trans_deferred_array): Rename gfc_get_backend_locus to
gfc_save_backend_locus.
(gfc_trans_dummy_array_bias): Call gfc_restore_backend_locus at the
end.
(gfc_trans_g77_array, gfc_trans_deferred_array): Use
gfc_restore_backend_locus instead of gfc_set_backend_locus.
(gfc_trans_deferred_array): Call gfc_restore_backend_locus on early
return.
* trans-decl.c (gfc_get_extern_function_decl, build_entry_thunks,
gfc_trans_deferred_vars):
Rename gfc_get_backend_locus to gfc_save_backend_locus.
Use gfc_restore_backend_locus insted of gfc_set_backend_locus.
From-SVN: r165045
Mikael Morin [Wed, 6 Oct 2010 15:39:15 +0000 (15:39 +0000)]
trans-array.c (gfc_build_constant_array_constructor): Free array spec when done.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* trans-array.c (gfc_build_constant_array_constructor): Free array
spec when done.
From-SVN: r165041
Mikael Morin [Wed, 6 Oct 2010 15:35:04 +0000 (15:35 +0000)]
symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list before overwriting it.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* symbol.c (gfc_copy_formal_args_ppc): Free previous formal arg list
before overwriting it.
From-SVN: r165040
Mikael Morin [Wed, 6 Oct 2010 15:29:46 +0000 (15:29 +0000)]
array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* array.c (gfc_match_array_spec): Don't re-initialize cleared struct.
* symbol.c (gen_shape_param): Ditto.
From-SVN: r165039
Mikael Morin [Wed, 6 Oct 2010 15:25:51 +0000 (15:25 +0000)]
symbol.c (free_entry_list): New function.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* symbol.c (free_entry_list): New function.
(gfc_free_namespace): Free list of entries.
From-SVN: r165038
Mikael Morin [Wed, 6 Oct 2010 15:21:00 +0000 (15:21 +0000)]
symbol.c (free_components): Free list of formal args and formal namespace.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* symbol.c (free_components): Free list of formal args and formal
namespace.
From-SVN: r165037
Mikael Morin [Wed, 6 Oct 2010 15:15:48 +0000 (15:15 +0000)]
simplify.c (gfc_simplify_size): Clear temporary mpz int before returning.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* simplify.c (gfc_simplify_size): Clear temporary mpz int before
returning.
From-SVN: r165036
Mikael Morin [Wed, 6 Oct 2010 15:07:43 +0000 (15:07 +0000)]
resolve.c (add_dt_to_dt_list): Remove unneeded if.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* resolve.c (add_dt_to_dt_list): Remove unneeded if.
From-SVN: r165035
Mikael Morin [Wed, 6 Oct 2010 14:52:02 +0000 (14:52 +0000)]
resolve.c (check_typebound_baseobject): Free local expr before returning.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* resolve.c (check_typebound_baseobject): Free local expr before
returning.
From-SVN: r165034
Mikael Morin [Wed, 6 Oct 2010 14:47:40 +0000 (14:47 +0000)]
primary.c (gfc_match_structure_constructor): Invert the assert logic.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* primary.c (gfc_match_structure_constructor): Invert the assert logic.
From-SVN: r165033
Mikael Morin [Wed, 6 Oct 2010 14:43:55 +0000 (14:43 +0000)]
primary.c (gfc_free_structure_ctor_component): Also free the component structure itself.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* primary.c (gfc_free_structure_ctor_component): Also free the
component structure itself.
From-SVN: r165032
Eric Botcazou [Wed, 6 Oct 2010 14:35:25 +0000 (14:35 +0000)]
re PR c++/45908 ([C++0x] ICE involving decltype: in tree_low_cst, at tree.h:4114)
PR c++/45908
* typeck.c (cp_build_addr_expr_1): Add check for incomplete types in
code folding offsetof-like computations.
From-SVN: r165031
Eric Botcazou [Wed, 6 Oct 2010 14:25:04 +0000 (14:25 +0000)]
re PR rtl-optimization/45394 (gnat fails to build on s390, trunk
20100918)
PR rtl-optimization/45394
* combine.c (cleanup_auto_inc_dec): Remove AFTER parameter and adjust.
(struct rtx_subst_pair): Remove AFTER field.
(propagate_for_debug_subst): Adjust call to cleanup_auto_inc_dec.
(propagate_for_debug): Remove MOVE parameter and adjust.
(try_combine): In the special case where I2 is a PARALLEL, combine only
destinations of SETs and set I2SRC to the I2 source.
Adjust calls to propagate_for_debug throughout.
* reload1.c (eliminate_regs_1) <ASM_OPERANDS>: Do not abort for debug
insns.
From-SVN: r165030
Mikael Morin [Wed, 6 Oct 2010 14:23:30 +0000 (14:23 +0000)]
module.c (gfc_use_module): Free atom_string when done with it.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* module.c (gfc_use_module): Free atom_string when done with it.
From-SVN: r165029
Mikael Morin [Wed, 6 Oct 2010 14:19:30 +0000 (14:19 +0000)]
module.c (read_module): Remove useless string duplication.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* module.c (read_module): Remove useless string duplication.
From-SVN: r165028
Mikael Morin [Wed, 6 Oct 2010 14:15:54 +0000 (14:15 +0000)]
gfortranspec.c (append_arg): Remove commented code.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* gfortranspec.c (append_arg): Remove commented code.
From-SVN: r165027
Mikael Morin [Wed, 6 Oct 2010 14:11:30 +0000 (14:11 +0000)]
decl.c (match_procedure_in_type): Assertify if conditions.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* decl.c (match_procedure_in_type): Assertify if conditions.
From-SVN: r165026
Olivier Hainque [Wed, 6 Oct 2010 14:08:48 +0000 (14:08 +0000)]
rs6000.c (rs6000_expand_ternop_builtin): Rewrite switch on insn codes as sequence of ifs.
* config/rs6000/rs6000.c (rs6000_expand_ternop_builtin): Rewrite
switch on insn codes as sequence of ifs.
From-SVN: r165025
Mikael Morin [Wed, 6 Oct 2010 14:06:20 +0000 (14:06 +0000)]
cpp.c (gfc_cpp_post_options): Don't create a cpp reader if preprocessing is disabled.
2010-10-06 Mikael Morin <mikael@gcc.gnu.org>
* cpp.c (gfc_cpp_post_options): Don't create a cpp reader if
preprocessing is disabled.
From-SVN: r165024
Hariharan Sandanagobalane [Wed, 6 Oct 2010 11:29:41 +0000 (11:29 +0000)]
picochip.c (TARGET_EXCEPT_UNWIND_INFO): Define it to be UI_NONE for picochip.
* config/picochip/picochip.c (TARGET_EXCEPT_UNWIND_INFO):
Define it to be UI_NONE for picochip.
(picochip_option_override): Do not disable exception flags
* config/picochip/picochip-protos.h (picochip_except_unwind_info)
Declare
From-SVN: r165023
Richard Guenther [Wed, 6 Oct 2010 11:25:06 +0000 (11:25 +0000)]
Makefile.in (regmove.o): Depend on $(TARGET_H).
2010-10-06 Richard Guenther <rguenther@suse.de>
* Makefile.in (regmove.o): Depend on $(TARGET_H).
From-SVN: r165022
Nicola Pero [Wed, 6 Oct 2010 10:43:54 +0000 (10:43 +0000)]
Fixed date in my last changelog entry
From-SVN: r165021
Nicola Pero [Wed, 6 Oct 2010 10:10:14 +0000 (10:10 +0000)]
In gcc/: 2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented fast enumeration for Objective-C.
* c-parser.c (objc_could_be_foreach_context): New.
(c_lex_one_token): Recognize RID_IN keyword in a potential
Objective-C foreach context.
(c_parser_declaration_or_fndef): Added parameter. Accept
Objective-C RID_IN keyword as terminating a declaration; in that
case, return the declaration in the new parameter.
(c_parser_extenral_declaration): Updated calls to
c_parser_declaration_or_fndef.
(c_parser_declaration_or_fndef): Same change.
(c_parser_compound_statement_nostart): Same change.
(c_parser_label): Same change.
(c_parser_objc_methodprotolist): Same change.
(c_parser_omp_for_loop): Same change.
(c_parser_for_statement): Detect and parse Objective-C foreach
statements.
(c_parser_omp_for_loop): Updated call to check_for_loop_decls().
* c-decl.c (check_for_loop_decls): Added parameter to allow ObjC
fast enumeration parsing code to turn off the c99 error but still
perform checks on the loop declarations.
* c-tree.h (check_for_loop_decls): Updated declaration.
* doc/objc.texi: Document fast enumeration.
In gcc/c-family/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented fast enumeration for Objective-C.
* c-common.h (objc_finish_foreach_loop): New.
* stub-objc.c (objc_finish_foreach_loop): New.
In gcc/objc/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented fast enumeration for Objective-C.
* objc-act.c (build_fast_enumeration_state_template): New.
(TAG_ENUMERATION_MUTATION): New.
(TAG_FAST_ENUMERATION_STATE): New.
(synth_module_prologue): Call build_fast_enumeration_state_template() and set up
objc_enumeration_mutation_decl.
(objc_create_temporary_var): Allow providing a name to temporary
variables.
(objc_build_exc_ptr): Updated calls to
objc_create_temporary_var().
(next_sjlj_build_try_catch_finally): Same change.
(objc_finish_foreach_loop): New.
* objc-act.h: Added OCTI_FAST_ENUM_STATE_TEMP,
OCTI_ENUM_MUTATION_DECL, objc_fast_enumeration_state_template,
objc_enumeration_mutation_decl.
Merge from 'apple/trunk' branch on FSF servers.
2006-04-12 Fariborz Jahanian <fjahanian@apple.com>
Radar
4507230
* objc-act.c (objc_type_valid_for_messaging): New routine to check
for valid objc object types.
(objc_finish_foreach_loop): Check for invalid objc objects in
foreach header.
In gcc/testsuite/:
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented fast enumeration for Objective-C.
* objc.dg/foreach-1.m: New.
* objc.dg/foreach-2.m: New.
* objc.dg/foreach-3.m: New.
* objc.dg/foreach-4.m: New.
* objc.dg/foreach-5.m: New.
* objc.dg/foreach-6.m: New.
* objc.dg/foreach-7.m: New.
Merge from 'apple/trunk' branch on FSF servers:
2006-04-13 Fariborz Jahanian <fjahanian@apple.com>
Radar
4502236
* objc.dg/objc-foreach-5.m: New.
2006-04-12 Fariborz Jahanian <fjahanian@apple.com>
Radar
4507230
* objc.dg/objc-foreach-4.m: New.
2006-03-13 Fariborz Jahanian <fjahanian@apple.com>
Radar
4472881
* objc.dg/objc-foreach-3.m: New.
2005-03-07 Fariborz Jahanian <fjahanian@apple.com>
Radar
4468498
* objc.dg/objc-foreach-2.m: New.
2006-02-15 Fariborz Jahanian <fjahanian@apple.com>
Radar
4294910
* objc.dg/objc-foreach-1.m: New
In libobjc/:
2010-10-06 Nicola Pero <nicola.pero@meta-innovation.com>
Implemented fast enumeration for Objective-C.
* Makefile.in (C_SOURCE_FILES): Added objc-foreach.c.
(OBJC_H): Added runtime.h
* objc-foreach.c: New file.
* objc/runtime.h: New file.
From-SVN: r165019
Hariharan Sandanagobalane [Wed, 6 Oct 2010 08:40:57 +0000 (08:40 +0000)]
gcc.c-torture/execute/cmpsi-2.c : Unsigned comparisons should use
unsigned values.
From-SVN: r165016
Nick Clifton [Wed, 6 Oct 2010 08:16:18 +0000 (08:16 +0000)]
mn10300.h (FIRST_PSEUDO_REGISTER): Increment by one.
* config/mn10300/mn10300.h (FIRST_PSEUDO_REGISTER): Increment by
one.
(MDR_REGNUM): Define.
(FIXED_REGISTERS, CALL_USED_REGISTERS): Add MDR as a fixed
register.
(REG_CLASS_CONTENTS): Add MDR to ALL_REGS.
(INCOMING_RETURN_ADDR_RTX): Define in terms of MDR.
(REGISTER_NAMES): Add MDR.
(DWARF2_DEBUGGING_INFO): Define to 1.
* config/mn10300/mn10300.c (TARGET_EXCEPT_UNWIND_INFO): Define.
(F): New function. Sets RTX_FRAME_RELATED_P.
(mn10300_gen_multiple_store): Use F.
(expand_prologue): Use F. Use gen_movsf() to push floating
point registers.
(expand_epilogue): Use gen_movsf() to pop floating point
registers.
(mn10300_option_override): Disable combine stack adjust pass.
From-SVN: r165015
Thomas Schwinge [Wed, 6 Oct 2010 07:49:52 +0000 (09:49 +0200)]
re PR target/45901 (alpha-gnu target-specific CPP macros are broken)
2010-10-06 Thomas Schwinge <thomas@schwinge.name>
PR target/45901
* config/alpha/gnu.h (TARGET_OS_CPP_BUILTINS): Refer to
LINUX_TARGET_OS_CPP_BUILTINS instead of HURD_TARGET_OS_CPP_BUILTINS.
From-SVN: r165014
Jakub Jelinek [Wed, 6 Oct 2010 07:48:46 +0000 (09:48 +0200)]
builtins.def (BUILT_IN_CALLOC, [...]): Mark as leaf.
* builtins.def (BUILT_IN_CALLOC, BUILT_IN_REALLOC,
BUILT_IN_ISALNUM, BUILT_IN_ISALPHA, BUILT_IN_ISASCII,
BUILT_IN_ISBLANK, BUILT_IN_ISCNTRL, BUILT_IN_ISDIGIT,
BUILT_IN_ISGRAPH, BUILT_IN_ISLOWER, BUILT_IN_ISPRINT,
BUILT_IN_ISPUNCT, BUILT_IN_ISSPACE, BUILT_IN_ISUPPER,
BUILT_IN_ISXDIGIT, BUILT_IN_TOASCII, BUILT_IN_TOLOWER,
BUILT_IN_TOUPPER): Mark as leaf.
From-SVN: r165013
Jakub Jelinek [Wed, 6 Oct 2010 07:47:28 +0000 (09:47 +0200)]
re PR middle-end/45838 (FAIL: libgomp.c/pr34513.c execution test)
PR middle-end/45838
* omp-builtins.def (BUILT_IN_GOMP_PARALLEL_LOOP_STATIC_START,
BUILT_IN_GOMP_PARALLEL_LOOP_DYNAMIC_START,
BUILT_IN_GOMP_PARALLEL_LOOP_GUIDED_START,
BUILT_IN_GOMP_PARALLEL_LOOP_RUNTIME_START,
BUILT_IN_GOMP_PARALLEL_START, BUILT_IN_GOMP_TASK,
BUILT_IN_GOMP_PARALLEL_SECTIONS_START): Use
Revert back to ATTR_NOTHROW_LIST instead of ATTR_NOTHROW_LEAF_LIST.
* f95-lang.c (ATTR_NOTHROW_LEAF_LIST, ATTR_CONST_NOTHROW_LEAF_LIST,
ATTR_NOTHROW_LIST, ATTR_CONST_NOTHROW_LIST): Define.
(gfc_define_builtin): Change last argument to int bitmask from bool,
control addition of TREE_NOTHROW and leaf attribute as well.
(DO_DEFINE_MATH_BUILTIN): Adjust callers.
(gfc_init_builtin_functions): Likewise. Remove
ATTR_{,CONST_}NOTHROW_LIST enum.
From-SVN: r165012
GCC Administrator [Wed, 6 Oct 2010 00:18:27 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r165011
David Krauss [Wed, 6 Oct 2010 00:17:28 +0000 (00:17 +0000)]
re PR libstdc++/45841 (r164529 cris-elf libstdc++ 27_io/basic_filebuf/seekoff/char/2-io.cc)
2010-10-05 David Krauss <potswa@mac.com>
PR libstdc++/45841
* include/bits/fstream.h (basic_filebuf::underflow): Overflow
success does not preclude returning failure.
(basic_filebuf::pbackfail): Likewise.
(basic_filebuf::xsputn): Fix indentation problem.
(basic_filebuf::xsgetn): Likewise. Also, add similar overflow
call to enable optimized case from write mode.
* testsuite/27_io/basic_filebuf/underflow/char/45841.cc: New.
* testsuite/27_io/basic_filebuf/underflow/wchar_t/45841.cc: Likewise.
From-SVN: r165009
Jonathan Wakely [Tue, 5 Oct 2010 20:58:59 +0000 (20:58 +0000)]
locale_facets_nonio.h (time_get::get_time): Doc typo.
2010-10-05 Jonathan Wakely <jwakely.gcc@gmail.com>
* include/bits/locale_facets_nonio.h (time_get::get_time): Doc typo.
(time_get::get_date): Likewise.
From-SVN: r165002
Jonathan Wakely [Tue, 5 Oct 2010 20:43:04 +0000 (21:43 +0100)]
2010-10-05 Jonathan Wakely <jwakely.gcc@gmail.com>
* Remove svn conflict marker in ChangeLog.
From-SVN: r165001
Anatoly Sokolov [Tue, 5 Oct 2010 19:38:27 +0000 (23:38 +0400)]
m68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/m68hc11/m68hc11.h (CLASS_LIKELY_SPILLED_P): Remove.
* config/m68hc11/m68hc11.c (TARGET_CLASS_LIKELY_SPILLED_P): Define.
(m68hc11_class_likely_spilled_p): New function.
From-SVN: r165000
Nicola Pero [Tue, 5 Oct 2010 19:23:33 +0000 (19:23 +0000)]
In gcc/: 2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
In gcc/:
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
* c-parser.c (c_parser_objc_method_definition): Updated comment.
In gcc/cp/:
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/31125
* parser.c (cp_parser_objc_class_interface): If no identifier
follows an @interface token, stop parsing the interface after
printing an error.
(cp_parser_objc_class_implementation): If no identifier follows an
@implementation token, stop parsing the implementation after
printing an error.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/23707
* parser.c (cp_parser_objc_method_keyword_params): If the required
colon is not found while parsing parameters, stop parsing them.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/31126
* parser.c (cp_parser_objc_class_ivars): Do not eat the EOF or
@end after detecting it. Print an error if @end is found without
a '}'.
(cp_parser_objc_method_prototype_list): Do not eat the EOF after
detecting it. Fixed reading the next token when continuing
because of an error in a method signature. Print an error if EOF
is found without an '@end'.
(cp_parser_objc_method_definition_list): Same change.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from apple/trunk branch on FSF servers:
2005-10-17 Fariborz Jahanian <fjahanian@apple.com>
Radar
4290840
* parser.c (cp_parser_objc_method_keyword_params): Check for valid
method parameters and issue error.
(cp_parser_objc_method_definition_list): Check for invalid tokens
which cannot start a function definition.
2005-10-14 Fariborz Jahanian <fjahanian@apple.com>
Radar
4294425
* parser.c (cp_parser_objc_message_args): Check for missing message
arguments and syntax error.
2005-10-13 Fariborz Jahanian <fjahanian@apple.com>
Radar
4261146
* parser.c (cp_parser_objc_class_ivars): Check for @end/eof while
looking for '}'.
2005-08-15 Ziemowit Laski <zlaski@apple.com>
Radar
4093475
* parser.c (cp_parser_objc_interstitial_code): Catch stray
'{' and '}' tokens and issue appropriate errors.
2005-08-02 Ziemowit Laski <zlaski@apple.com>
Radar
4185810
(cp_parser_statement_seq_opt): In addition to '}' and
end-of-file, a statement sequence may also be terminated
by a stray '@end'.
In gcc/objc/:
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-10-17 Fariborz Jahanian <fjahanian@apple.com>
Radar
4290840
* objc-act.c (objc_start_method_definition): Check for error_mark_node for
the selector name and make a quick exit.
In gcc/testsuite/:
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/28050
* obj-c++.dg/syntax-error-10.mm: New.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/23707
* obj-c++.dg/syntax-error-9.mm: New.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
PR objc++/31126
* obj-c++.dg/syntax-error-8.mm: New.
2010-10-05 Nicola Pero <nicola.pero@meta-innovation.com>
Merge from 'apple/trunk' branch on FSF servers.
2005-10-17 Fariborz Jahanian <fjahanian@apple.com>
Radar
4290840
* obj-c++.dg/syntax-error-7.mm: New
2005-10-14 Fariborz Jahanian <fjahanian@apple.com>
Radar
4294425
* obj-c++.dg/syntax-error-6.mm: New
2005-10-13 Fariborz Jahanian <fjahanian@apple.com>
Radar
4261146
* obj-c++.dg/syntax-error-5.mm: New
2005-08-15 Ziemowit Laski <zlaski@apple.com>
Radar
4093475
* obj-c++.dg/syntax-error-[3-4].mm: New.
2005-08-02 Ziemowit Laski <zlaski@apple.com>
Radar
4185810
* obj-c++.dg/syntax-error-[1-2].mm: New.
From-SVN: r164997
Ian Lance Taylor [Tue, 5 Oct 2010 18:40:09 +0000 (18:40 +0000)]
* lto.c (lto_section_with_id): Make s a const pointer.
From-SVN: r164996
Jan Hubicka [Tue, 5 Oct 2010 17:57:09 +0000 (19:57 +0200)]
invoke.texi (-flto-partition, [...]): Document.
* doc/invoke.texi (-flto-partition, lto-partitions, lto-minpartition):
Document.
* opts.c (decode_options): Handle lto partitions.
* common.opt (flto-partition=1to1, flto-partition=balanced): New.
* params.def (PARAM_LTO_PARTITIONS, MIN_PARTITION_SIZE): New.
* lto.c: Include params.h.
(add_cgraph_node_to_partition, add_varpool_node_to_partition): Do
refcounting in aux field.
(undo_partition, partition_cgraph_node_p, partition_varpool_node_p):
New functions.
(lto_1_to_1_map): Simplify.
(lto_balanced_map): New function.
(do_whole_program_analysis): Chose proper partitioning alg.
* Make-lang.in (lto.o): Add dependency on params.h
From-SVN: r164995
Jan Hubicka [Tue, 5 Oct 2010 16:15:00 +0000 (18:15 +0200)]
cgraphunit.c (assemble_function): Output thunks and aliases before the function itself.
* cgraphunit.c (assemble_function): Output thunks and aliases before
the function itself.
From-SVN: r164994
Paolo Carlini [Tue, 5 Oct 2010 15:53:35 +0000 (15:53 +0000)]
type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
2010-10-05 Paolo Carlini <paolo.carlini@oracle.com>
* include/std/type_traits (_GLIBCXX_HAS_NESTED_TYPE): Add.
* include/std/functional (_Has_result_type_helper,
_Has_result_type): Remove; use the above to define __has_result_type.
* include/bits/stl_iterator_base_types.h: Use the above to define
__has_iterator_category.
* include/bits/allocator.h (__has_allocator_type): Use the above.
* include/bits/cpp_type_traits.h (__has_iterator_category,
__is_iterator): Remove.
From-SVN: r164993
Hariharan Sandanagobalane [Tue, 5 Oct 2010 15:52:33 +0000 (15:52 +0000)]
picochip.c (picochip_option_override): Disable exception flags for picochip.
* config/picochip/picochip.c (picochip_option_override): Disable
exception flags for picochip.
From-SVN: r164992
Joseph Myers [Tue, 5 Oct 2010 14:28:39 +0000 (15:28 +0100)]
opts-common.c (handle_option, [...]): Add diagnostic_context parameter.
* opts-common.c (handle_option, handle_generated_option,
read_cmdline_option, set_option): Add diagnostic_context
parameter. Update calls among these functions.
(set_option): Don't use global_dc.
* opts.c (read_cmdline_options): Pass global_dc to
read_cmdline_option.
(decode_options): Pass global_dc to enable_warning_as_error.
(common_handle_option): Pass global_dc to enable_warning_as_error.
(enable_warning_as_error): Add diagnostic_context parameter.
Document parameters. Don't use global_dc. Pass
diagnostic_context parameter to handle_generated_option.
* opts.h (set_option, handle_option, handle_generated_option,
read_cmdline_option, enable_warning_as_error): Add
diagnostic_context parameter.
* Makefile.in (lto-opts.o): Update dependencies.
* coretypes.h (struct diagnostic_context, diagnostic_context):
Declare here.
* diagnostic.h (diagnostic_context): Don't declare typedef here.
* gcc.c (process_command): Pass global_dc to read_cmdline_option.
* langhooks-def.h (struct diagnostic_context): Don't declare here.
(lhd_print_error_function, lhd_initialize_diagnostics): Declare
using diagnostic_context typedef.
* langhooks.c (lhd_initialize_diagnostics): Declare using
diagnostic_context typedef.
* langhooks.h (struct diagnostic_context): Don't declare here.
(initialize_diagnostics, print_error_function): Declare using
diagnostic_context typedef.
* lto-opts.c: Include diagnostic.h.
(lto_reissue_options): Pass global_dc to set_option. Pass
DK_UNSPECIFIED not 0.
* plugin.c (plugins_internal_error_function): Declare using
diagnostic_context typedef.
* plugin.h (struct diagnostic_context): Don't declare here.
(plugins_internal_error_function): Declare using
diagnostic_context typedef.
c-family:
* c-common.h (struct diagnostic_context): Don't declare here.
(c_common_initialize_diagnostics): Declare using
diagnostic_context typedef.
* c-opts.c (c_common_handle_option): Pass global_dc to
handle_generated_option.
cp:
* cp-tree.h (cxx_print_error_function,
cxx_initialize_diagnostics): Declare using diagnostic_context
typedef.
From-SVN: r164991
Olivier Hainque [Tue, 5 Oct 2010 12:18:10 +0000 (12:18 +0000)]
vxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.
* config/vxworksae.h: Add missing VXWORKS_OS_CPP_BUILTINS.
* config/rs6000/vxworks.h: Remove redundant CPP builtin definitions.
Co-Authored-By: Nicolas Roche <roche@adacore.com>
From-SVN: r164988
Ira Rosen [Tue, 5 Oct 2010 12:01:29 +0000 (12:01 +0000)]
re PR tree-optimization/45752 (ICE in ix86_vectorize_builtin_vec_perm_ok)
PR tree-optimization/45752
* tree-vect-slp.c (vect_get_mask_element): Remove static
variables, make them function arguments.
(vect_transform_slp_perm_load): Pass new arguments to
vect_get_mask_element.
From-SVN: r164987
Richard Guenther [Tue, 5 Oct 2010 10:42:24 +0000 (10:42 +0000)]
value-prof.c (gimple_divmod_fixed_value): Work on SSA form.
2010-10-05 Richard Guenther <rguenther@suse.de>
* value-prof.c (gimple_divmod_fixed_value): Work on SSA form.
(gimple_mod_pow2): Likewise.
(gimple_mod_subtract): Likewise.
(gimple_ic): Likewise.
(gimple_stringop_fixed_value): Likewise.
* tree-profile.c (tree_init_edge_profiler): Mark profile
functions nothrow and leaf.
(add_abnormal_goto_call_edges): Remove.
(tree_gen_edge_profiler): Work on SSA form.
(tree_gen_ic_profiler): Likewise. Simplify.
(do_tree_profiling): Update SSA form.
(pass_tree_profile): Remove.
(do_tree_profiling): Likewise.
(gate_tree_profile_ipa): New function.
(pass_ipa_tree_profile): New.
(tree_profiling): Re-write as IPA pass. Properly drop const/pure
state of instrumented functions.
* passes.c (init_optimization_passes): Remove early non-SSA
inlining. Move profiling after early optimizations.
* ipa-inline.c (cgraph_gate_ipa_early_inlining): Remove.
(pass_ipa_early_inline): Likewise.
* tree-pass.h (pass_ipa_early_inline): Remove.
(pass_tree_profile): Likewise.
(pass_ipa_tree_profile): Declare.
* gcc.dg/tree-prof/val-prof-1.c: Adjust.
* gcc.dg/tree-prof/val-prof-2.c: Likewise.
* gcc.dg/tree-prof/val-prof-3.c: Likewise.
* gcc.dg/tree-prof/val-prof-4.c: Likewise.
* gcc.dg/tree-prof/val-prof-5.c: Likewise.
* gcc.dg/tree-prof/val-prof-7.c: Likewise.
* gcc.dg/tree-prof/stringop-1.c: Likewise.
* gcc.dg/tree-prof/stringop-2.c: Likewise.
* gcc.dg/tree-prof/ic-misattribution-1.c: Likewise.
* gcc.dg/tree-prof/indir-call-prof.c: Likewise.
* gcc.dg/tree-prof/update-loopch.c: Likewise.
* g++.dg/tree-prof/indir-call-prof.C: Likewise.
* g++.dg/tree-prof/inline_mismatch_args.C: Likewise.
* gcc.dg/tree-prof/tracer-1.c: Likewise.
* gcc.dg/tree-ssa/inline-4.c: Likewise.
* gcc.dg/tree-ssa/inline-3.c: Likewise.
* gcc.dg/tree-ssa/
20080530.c: Likewise.
* g++.dg/tree-ssa/inline-3.C: Likewise.
* g++.dg/tree-ssa/inline-1.C: Likewise.
* g++.dg/tree-ssa/inline-2.C: Likewise.
* gcc.dg/profile-dir-1.c: Likewise.
* gcc.dg/profile-dir-2.c: Likewise.
* gcc.dg/profile-dir-3.c: Likewise.
From-SVN: r164986
Andreas Krebbel [Tue, 5 Oct 2010 10:39:48 +0000 (10:39 +0000)]
s390.c (z196_cost): New.
2010-10-05 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
Christian Borntraeger <Christian.Borntraeger@de.ibm.com>
* gcc/config/s390/s390.c (z196_cost): New.
(s390_handle_arch_option): Add -march=z196.
(s390_option_override): Use the new cost function and use the z10
defaults also for z196.
(legitimate_reload_constant_p): Adjust comment.
(legitimate_reload_fp_constant_p): New function.
(s390_preferred_reload_class): Distingiush between FP and Int constants.
(preferred_la_operand_p): Avoid la with index on z196.
(s390_adjust_priority): Trigger also for z196.
(s390_issue_rate): Issue rate for z196 is 3.
(s390_z10_fix_long_loop_prediction): Rename to ...
(s390_fix_long_loop_prediction): ... this.
(s390_reorg): Apply the z10 adjustments also for z196.
(s390_loop_unroll_adjust): Do this also for z196.
* gcc/config/s390/s390.h (enum processor_type): Add PROCESSOR_2817_Z196.
(enum processor_flags): Add PF_Z196.
(TARGET_AVOID_CMP_AND_BRANCH): New macro.
(TARGET_CPU_Z196, TARGET_Z196): New macros.
* gcc/config.gcc: Enable z196 for --with-arch.
* gcc/config/s390/2817.md: New file.
* gcc/config/s390/2084.md: New type for multiply and add.
* gcc/config/s390/2097.md: Likewise.
* gcc/config/s390/s390.md (UNSPEC_POPCNT, UNSPEC_COPYSIGN)
(UNSPECV_ATOMIC_OP): New constants.
(fmadddf, fmaddsf): New values for type attribute.
(z196prop): New insn attribute.
(cpu, cpu_facility): Add z196.
(ATOMIC_Z196): New code iterator.
(noxa): New code attribute.
(gk): New mode attribute.
(*mov<mode>_64, *mov<mode>_31, *mov<mode>_64dfp, mov<mode>):
Support load zero for fp constants.
(fixuns_truncdddi2, fixuns_trunctddi2)
(fixuns_trunc<BFP:mode><GPR:mode>2): Use the standard rtx pattern
for z196.
(fixuns_trunc<mode>si2, mov<mode>cc, popcountdi2, popcountsi2)
(popcounthi2, popcountqi2): New expander.
(*fixuns_trunc<FP:mode><GPR:mode>2_z196, floatsi<mode>2)
(floatuns<GPR:mode><FP:mode>2, *mov<mode>cc, sync_<atomic><mode>)
(sync_old_<atomic><mode>, *popcount<mode>, copysign<mode>3): New
insn definition.
(add<mode>3, *add<mode>3_carry1_cc, *add<mode>3_carry1_cconly)
(*add<mode>3_carry2_cc, *add<mode>3_carry2_cconly, *add<mode>3_cc)
(*add<mode>3_cconly, *add<mode>3_cconly2, *add<mode>3_imm_cc, *sub<mode>3)
(*sub<mode>3_borrow_cc, *sub<mode>3_borrow_cconly, *sub<mode>3_cc)
(*sub<mode>3_cc2, *sub<mode>3_cconly, *sub<mode>3_cconly2)
(*anddi3_cc, *anddi3_cconly, *anddi3, *andsi3_cc, *andsi3_cconly)
(*andsi3_zarch, *andsi3_esa, *andhi3_zarch, *andqi3_zarch, *iordi3_cc)
(*iordi3_cconly, *iordi3, *iorsi3_cc, *iorsi3_cconly, *iorsi3_zarch)
(*iorhi3_zarch, *iorqi3_zarch, *xordi3_cc, *xordi3_cconly, *xordi3)
(*xorsi3_cc, *xorsi3_cconly, *xorsi3, *xorhi3, *xorqi3, *<shift><mode>3)
(*<shift><mode>3_and, *ashr<mode>3_cc, *ashr<mode>3_cconly, *ashr<mode>3)
(*ashr<mode>3_cc_and, *ashr<mode>3_cconly_and, *ashr<mode>3_and):
Support new z196 instructions.
Co-Authored-By: Christian Borntraeger <Christian.Borntraeger@de.ibm.com>
From-SVN: r164985
Richard Guenther [Tue, 5 Oct 2010 10:37:12 +0000 (10:37 +0000)]
re PR middle-end/45877 (invalid write in gimplify_and_update_call_from_tree)
2010-10-05 Richard Guenther <rguenther@suse.de>
PR middle-end/45877
* gimple-fold.c (gimplify_and_update_call_from_tree): Handle
case where gimplification optimizes away the stmt.
* g++.dg/torture/pr45877.C: New testcase.
From-SVN: r164984
Arnaud Charlet [Tue, 5 Oct 2010 10:30:15 +0000 (12:30 +0200)]
[multiple changes]
2010-10-05 Robert Dewar <dewar@adacore.com>
* par-ch5.adb (Test_Statement_Required): Allow all pragmas in Ada 2012
mode.
2010-10-05 Pascal Obry <obry@adacore.com>
* gnat_rm.texi: Fix typo.
2010-10-05 Arnaud Charlet <charlet@adacore.com>
* gnat_ugn.texi: Add note about identifiers with same name and
-fdump-ada-spec.
From-SVN: r164983
Arnaud Charlet [Tue, 5 Oct 2010 10:26:07 +0000 (12:26 +0200)]
[multiple changes]
2010-10-05 Robert Dewar <dewar@adacore.com>
* sem_ch4.adb: Minor reformatting.
* a-direct.ads: Minor comment update.
2010-10-05 Javier Miranda <miranda@adacore.com>
* sem_ch3.adb (Add_Internal_Interface_Entities): Removing code that is
no longer required after change in New_Overloaded_Entity.
* sem_ch6.adb (New_Overloaded_Entity): Code reorganization to isolate
the fragment of code that handles derivations of interface primitives.
Add missing dependence on global variable Inside_Freezing_Actions to
ensure the correct management of internal interface entities.
* sem_ch13.adb (Analyze_Freeze_Entity): Add missing increase/decrease
of the global variable Inside_Freezing_Actions to ensure that internal
interface entities are well handled by New_Overloaded_Entity.
* sem_disp.adb (Find_Primitive_Covering_Interface): Add documentation
and complete the algorithm to catch hidden primitives derived of
private type that covers the interface.
* sem_disp.ads (Find_Primitive_Covering_Interface): Add missing
documentation.
From-SVN: r164982