platform/upstream/linaro-gcc.git
12 years ago2011-12-21 Javier Miranda <miranda@adacore.com>
charlet [Wed, 21 Dec 2011 13:54:55 +0000 (13:54 +0000)]
2011-12-21  Javier Miranda  <miranda@adacore.com>

* sem_ch3.ads, sem_ch3.adb (Check_CPP_Type): New subprogram.
(Process_Full_View): Invoke Check_CPP_Type if processing the
full-view of a CPP type.
* sem_prag.adb (Process_Import_Or_Interface): Add missing support
for importing a CPP type that has an incomplete declaration. Move
to new routine Check_CPP_Type the code that verifies that
components of imported CPP types do not have default expressions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182587 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Vincent Celier <celier@adacore.com>
charlet [Wed, 21 Dec 2011 13:51:03 +0000 (13:51 +0000)]
2011-12-21  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Report_No_Sources): Remove argument Lang. Report
no sources even for languages that are not allowed.
(Add_Source): Get the source even when the language is not allowed.

2011-12-21  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb (Process_Formals): Add defensive code.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch7.adb, sem_ch13.adb (Analyze_Package_Specification): Build the
invariant procedure of a type declaration that is a completion and has
aspect specifications.
(Build_Invariant_Procedure): If the procedure is built for a
type declaration that is a completion, analyze body expliitly
because all private declarations have been already analyzed.

2011-12-21  Claire Dross  <dross@adacore.com>

* a-cfdlli.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb,
a-cofove.adb: Minor reformating on formal containers

2011-12-21  Vincent Celier  <celier@adacore.com>

* makeutl.adb (Mains.Complete_Mains.Do_Complete): Remove
any main that is not in the list of restricted languages.
(Insert_Project_Sources.Do_Insert): Only add sources of languages
in the list of restricted languages.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Valid_Conversion): A type conversion is valid when
the target type is an anonymous access type and the operand is a
rewriting of an allocator. The conversion is typically inserted
when the designated type is an interface.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* exp_ch9.adb (Establish_Task_Master): If the enclosing block
has no declarations, create new declarative list for it.

2011-12-21  Matthew Heaney  <heaney@adacore.com>

* a-rbtgbk.adb (Generic_Conditional_Insert): Fixed incorrect comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182586 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Yannick Moy <moy@adacore.com>
charlet [Wed, 21 Dec 2011 13:45:42 +0000 (13:45 +0000)]
2011-12-21  Yannick Moy  <moy@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not
ignore representation attributes in Alfa mode, since formal
verification backend does not depend on actual physical
representation, but code may still refer to attribute values.

2011-12-21  Yannick Moy  <moy@adacore.com>

* par-ch13.adb (P_Aspect_Specifications): Recognize the cases
where a comma between two aspects is missing, or erroneously
replaced by a semicolon, issue an error and proceed with next
aspect.
* par.adb, sinfo.ads: Fix typos.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Mark_Coextensions): A coextension for an
object that is part of the expression in a return statement,
or part of the return object in an extended return statement,
must be allocated dynamically.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182585 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Matthew Heaney <heaney@adacore.com>
charlet [Wed, 21 Dec 2011 13:42:22 +0000 (13:42 +0000)]
2011-12-21  Matthew Heaney  <heaney@adacore.com>

* a-crbtgk.adb (Generic_Conditional_Insert): Fixed incorrect comment.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* sem_ch5.adb (Analyze_Iterator_Specification): If the name
of an element iterator is not an entity name we introduce a
local renaming declaration for it. To prevent spurious warnings
on parameterless function calls that return a container, when
expansion is disabled (either explicitly or because of a previous
errors) the name must be marked as not coming from source.

2011-12-21  Arnaud Charlet  <charlet@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Separate
handling in CodePeer mode and only ignore Component_Size
attribute.

2011-12-21  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb (Process_Formals): Set proper mechanism for
formals whose types have conventions Ada_Pass_By_Copy or
Ada_Pass_By_Reference.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182584 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/testsuite
kyukhin [Wed, 21 Dec 2011 13:34:40 +0000 (13:34 +0000)]
gcc/testsuite

        * gcc.dg/vect/no-section-anchors-vect-31.c: Adjust array size and test
        diag-scans to fix fail on AVX.
        * gcc.dg/vect/no-section-anchors-vect-36.c: Ditto.
        * gcc.dg/vect/no-section-anchors-vect-64.c: Ditto.
        * gcc.dg/vect/no-section-anchors-vect-66.c: Ditto.
        * gcc.dg/vect/no-section-anchors-vect-68.c: Ditto.
        * gcc.dg/vect/no-section-anchors-vect-69.c: Ditto.
        * gcc.dg/vect/no-vfa-vect-dv-2.c: Adjust dg-scans.
        * gcc.dg/vect/pr45752.c: Ditto.
        * gcc.dg/vect/slp-perm-4.c: Ditto.
        * gcc.dg/vect/slp-perm-9.c: Ditto.
        * gcc.dg/vect/vect-33.c: Ditto.
        * gcc.dg/vect/vect-35.c: Ditto.
        * gcc.dg/vect/vect-6-big-array.c: Ditto.
        * gcc.dg/vect/vect-6.c: Ditto.
        * gcc.dg/vect/vect-91.c: Ditto.
        * gcc.dg/vect/vect-all-big-array.c: Ditto.
        * gcc.dg/vect/vect-all.c: Ditto.
        * gcc.dg/vect/vect-multitypes-1.c: Ditto.
        * gcc.dg/vect/vect-outer-4c.c: Ditto.
        * gcc.dg/vect/vect-outer-5.c: Ditto.
        * gcc.dg/vect/vect-over-widen-1.c: Ditto.
        * gcc.dg/vect/vect-over-widen-3.c: Ditto.
        * gcc.dg/vect/vect-over-widen-4.c: Ditto.
        * gcc.dg/vect/vect-peel-1.c: Ditto.
        * gcc.dg/vect/vect-peel-2.c: Ditto.
        * gcc.dg/vect/vect-peel-3.c: Ditto.
        * gcc.dg/vect/vect-reduc-pattern-1b.c: Ditto.
        * gcc.dg/vect/vect-reduc-pattern-1c.c: Ditto.
        * gcc.dg/vect/vect-reduc-pattern-2b.c: Ditto.
        * gcc.dg/vect/wrapv-vect-reduc-pattern-2c.c: Ditto.
        * lib/target-supports.exp (check_avx_available): New function.
        (check_effective_target_vect_sizes_32B_16B): Ditto.
        (check_prefer_avx128): Ditto.
        (check_effective_target_vect_aligned_arrays): Add handling of AVX.
        (check_effective_target_vect_multiple_sizes): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182583 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Arnaud Charlet <charlet@adacore.com>
charlet [Wed, 21 Dec 2011 13:34:12 +0000 (13:34 +0000)]
2011-12-21  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb (Gnat1Drv): Always delete old scil files in
CodePeer mode.

2011-12-21  Robert Dewar  <dewar@adacore.com>

* comperr.adb: Minor reformatting.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* aspects.ads: New table Base_Aspect, to indicate that an aspect
is defined on a base type.
* aspects.adb (Find_Aspect): If the aspect is a Base_Aspect,
examine the representation items of the base type.

2011-12-21  Pascal Obry  <obry@adacore.com>

* gnat_ugn.texi, prj.ads, prj-nmsc.adb, prj-attr.adb, projects.texi,
snames.ads-tmpl: Use Encapsulated instead of Fully Standalone library.

2011-12-21  Pascal Obry  <obry@adacore.com>

* adaint.c (__gnat_is_executable_file_attr) [_WIN32]: Add parentheses
to kill warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182582 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Martin Jambor <mjambor@suse.cz>
jamborm [Wed, 21 Dec 2011 12:44:31 +0000 (12:44 +0000)]
2011-12-21  Martin Jambor  <mjambor@suse.cz>

* tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.
(rewrite_update_enter_block): Likewise.
(dump_update_ssa): Likewise.
(update_ssa): Likewise but also dump a newline at the beginning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182581 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Arnaud Charlet <charlet@adacore.com>
charlet [Wed, 21 Dec 2011 12:08:32 +0000 (12:08 +0000)]
2011-12-21  Arnaud Charlet  <charlet@adacore.com>

* comperr.adb (Delete_SCIL_Files): Also delete .scilx files.
Fix implementation for child packages and package specs.
(Delete_SCIL_Files.Decode_Name_Buffer): New function.

2011-12-21  Robert Dewar  <dewar@adacore.com>

* err_vars.ads, a-cdlili.adb, a-cfdlli.ads, prj.adb, prj-nmsc.adb,
a-cbdlli.adb, a-cbdlli.ads, a-cfdlli.adb: Minor reformatting.

2011-12-21  Vincent Pucci  <pucci@adacore.com>

* s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads,
s-llflex.ads: Fix header.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182578 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Thomas Quinot <quinot@adacore.com>
charlet [Wed, 21 Dec 2011 12:03:53 +0000 (12:03 +0000)]
2011-12-21  Thomas Quinot  <quinot@adacore.com>

* thread.c, s-oscons-tmplt.c, init.c (pthread_condattr_setclock): For
AIX 5.2, define as a dummy weak symbol in init.c.
(CLOCK_RT_Ada): Set to CLOCK_MONOTONIC on all versions of AIX.

2011-12-21  Thomas Quinot  <quinot@adacore.com>

* snames.ads-tmpl, sem_ch8.adb: Minor reformatting.
* sem_prag.adb: Minor comment clarification.

2011-12-21  Vincent Celier  <celier@adacore.com>

* prj-nmsc.adb (Report_No_Sources): New argument Lang for the
language name as a Name_Id. Do not report no sources if language
is not allowed.
(Add_Source): Do not add source if language is not allowed.
* prj.adb (Add_Restricted_Language): New procedure
(Is_Allowed_Language): New function
* prj.ads (Add_Restricted_Language): New procedure
(Is_Allowed_Language): New function

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182577 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Robert Dewar <dewar@adacore.com>
charlet [Wed, 21 Dec 2011 12:01:28 +0000 (12:01 +0000)]
2011-12-21  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, sem_dim.adb, sem_dim.ads, sem_ch12.adb, prj-conf.adb:
Minor reformatting.

2011-12-21  Claire Dross  <dross@adacore.com>

* a-cfdlli.ads (Constant_Indexing, Default_Iterator,
Iterator_Element): Added to type List.
(Not_No_Element, List_Iterator_Interfaces, Iterate,
Constant_Reference_Type, Constant_Reference): New.
* a-cfdlli.adb (type Iterator, Finalize, First, Last, Next,
Previous, Iterate, Not_No_Element, Constant_Reference): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182576 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Gary Dismukes <dismukes@adacore.com>
charlet [Wed, 21 Dec 2011 11:53:33 +0000 (11:53 +0000)]
2011-12-21  Gary Dismukes  <dismukes@adacore.com>

* gnat_ugn.texi: Minor reformatting.

2011-12-21  Ed Schonberg  <schonberg@adacore.com>

* exp_ch5.adb (Expand_Iterator_Loop): The cursor operation
Has_Element is the formal of Iterator_Interfaces, and within
the instantion of this package it is a renaming of some local
function with an unrelated name. Retrieve the operation from
the instance itself, not from the container package.

2011-12-21  Vincent Pucci  <pucci@adacore.com>

* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
replaced by Expand_Put_Call_With_Dimension_Symbol
* sem_ch12.adb (Analyze_Package_Instantiation): New check for
System.Dim_Float_IO and System.Dim_Integer_IO instantiation.
* sem_ch3.adb (Analyze_Declarations): Removed
Remove_Dimension_In_Declaration call.
* sem_dim.adb: Update comments. Redefine the
representation of a Rational. Propagate all changes involving
data structures and types throughout the pakage. Output the
dimension aggregates for each error messages.
("/"): Rational constructor "/" removed for Whole operands.
("/"): New rational operation "/" for Rational operands.
("*"): Operation "*" between Rational and Int removed.
("abs"): New unary operator "abs" for Rational.
(Analyze_Aspect_Dimension_System): Reorganized.
(Analyze_Dimension_Identifier): Removed.
(Copy_Dimensions): Removed.
(Create_Rational_From_Expr): New Boolean parameter.
(Dimensions_Msg_Of): New routine. Return
a string with the dimensions of the parameter.
(From_Dimension_To_String_Of_Symbols): Renaming of
From_Dimension_To_String_Id.
* sem_dim.ads: Update comments.
(Is_Dim_IO_Package_Instantiation): New routine.
(Remove_Dimension_In_Declaration): Removed.
* sem_res.adb (Resolve_Op_Expon): Reorganized calls of
Eval_Op_Expon_For_Dimensioned_Type and Eval_Op_Expon.
* s-diflio.ads, s-diinio.ads: Update comments.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182575 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
kyukhin [Wed, 21 Dec 2011 11:52:27 +0000 (11:52 +0000)]
gcc/

2011-12-21  Enkovich Ilya  <ilya.enkovich@intel.com>

        PR target/50038
        * implicit-zee.c: Delete.
        * ree.c: New file.
        * Makefile.in: Replace implicit-zee.c with ree.c.
        * config/i386/i386.c (ix86_option_override_internal): Rename
        flag_zee to flag_ree.
        * common.opt (fzee): Ignored.
        (free): New.
        * passes.c (init_optimization_passes): Replace pass_implicit_zee
        with pass_ree.
        * tree-pass.h (pass_implicit_zee): Delete.
        (pass_ree): New.
        * timevar.def (TV_ZEE): Delete.
        (TV_REE): New.
        * doc/invoke.texi: Add -free description.

gcc/testsuite/

2011-12-21  Enkovich Ilya  <ilya.enkovich@intel.com>

        PR target/50038

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182574 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Pascal Obry <obry@adacore.com>
charlet [Wed, 21 Dec 2011 11:50:02 +0000 (11:50 +0000)]
2011-12-21  Pascal Obry  <obry@adacore.com>

* prj-attr.adb, snames.ads-tmpl: Add Library_Standalone,
Library_Fully_Standalone_Options and
Library_Fully_Standalone_Supported attributes.
* prj-nmsc.adb (Check_Library): Update check to take into
account fully standalone libraries. Such shared libraries can
only depend on static libraries.
(Check_Stand_Alone_Library): Add support for fully standalone libraries.
(Process_Project_Level_Simple_Attributes): Store value for
configuration attribute Library_Fully_Standalone_Supported.
* prj.ads, makeutl.adb (Standalone): New enumeration type.
(Project_Data): Standalone_Library now of type Standlone.
(Project_Configuration): Add Lib_Fully_Standalone_Supported
field.
(Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported
field.
* clean.adb (Clean_Project): Adjust to new type for Standalone.
* make.adb (Library_Phase): Adjust to new type for Standalone.
(Gnatmake): Likewise.
* mlib-prj.adb (Build_Library): Adjust to new type for
Standalone.

2011-12-21  Thomas Quinot  <quinot@adacore.com>

* gnatls.adb (Gnatls): Call Set_Standard_Error at startup, and then
Set_Standard_Output just before producing normal (non-diagnostic)
output.
* gnatcmd.adb (Gnatcmd): Call Set_Standard_Error at initialization
(and again after parsing project files).

2011-12-21  Vincent Celier  <celier@adacore.com>

* prj-conf.adb (Do_Autoconf): When the object directory does
not exist, create auto.cgpr in the directory where temporary
files are created.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182573 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Tristan Gingold <gingold@adacore.com>
gingold [Wed, 21 Dec 2011 09:44:27 +0000 (09:44 +0000)]
2011-12-21  Tristan Gingold  <gingold@adacore.com>

* config/vms/vms-protos.h (vms_function_section): New prototype.
* config/vms/vms.c (vms_function_section): New function.
* config/vms/vms.h (TARGET_ASM_FUNCTION_SECTION): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182571 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Richard Guenther <rguenther@suse.de>
rguenth [Wed, 21 Dec 2011 09:22:58 +0000 (09:22 +0000)]
2011-12-21  Richard Guenther  <rguenther@suse.de>

PR lto/41159
* tree-outof-ssa.c (insert_value_copy_on_edge): Use the
mode of the pseudo as destination mode.  Only assert that
is equal to the promoted mode of the decl if it is a REG.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182570 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Tristan Gingold <gingold@adacore.com>
gingold [Wed, 21 Dec 2011 08:52:47 +0000 (08:52 +0000)]
2011-12-21  Tristan Gingold  <gingold@adacore.com>

* config/ia64/fde-vms.c (UNW_IVMS_MODE): Define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182568 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-21 Tristan Gingold <gingold@adacore.com>
gingold [Wed, 21 Dec 2011 08:42:12 +0000 (08:42 +0000)]
2011-12-21  Tristan Gingold  <gingold@adacore.com>

* config/vms/xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182567 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoia64: Implement vec_perm_const.
rth [Wed, 21 Dec 2011 01:03:00 +0000 (01:03 +0000)]
ia64: Implement vec_perm_const.

        * config/ia64/ia64.c (MAX_VECT_LEN): New.
        (struct expand_vec_perm_d): New.
        (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
        (ia64_unpack_assemble): Use ia64_expand_vec_perm_const_1.
        (expand_vselect, expand_vselect_vconcat): New.
        (expand_vec_perm_identity, expand_vec_perm_shrp): New.
        (expand_vec_perm_1, expand_vec_perm_broadcast): New.
        (expand_vec_perm_interleave_2, expand_vec_perm_v4hi_5): New.
        (ia64_expand_vec_perm_const_1, ia64_expand_vec_perm_const): New.
        (ia64_vectorize_vec_perm_const_ok): New.
        (ia64_expand_vec_setv2sf, ia64_expand_vec_perm_even_odd): New.
        * config/ia64/ia64-protos.h: Update.
        * config/ia64/vect.md (VEC): New mode iterator.
        (vecint): New mode attribute.
        (vec_interleave_lowv8qi, vec_interleave_highv8qi): Privatize with '*'.
        (vec_interleave_lowv4hi, vec_interleave_highv4hi): Likewise.
        (vec_interleave_lowv2si, vec_interleave_highv2si): Likewise.
        (vec_interleave_lowv2sf, vec_interleave_highv2sf): Likewise.
        (mix1_even, mix1_odd, mux1_alt): Likewise.
        (mux1_brcst_qi): Remove '*' from name.
        (vec_extract_evenv8qi, vec_extract_oddv8qi): Remove.
        (vec_extract_evenv4hi, vec_extract_oddv4hi): Remove.
        (vec_extract_evenv2si, vec_extract_oddv2si): Remove.
        (vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
        (vec_extract_evenodd_helper): Remove.
        (vec_setv2sf): Use ia64_expand_vec_setv2sf.
        (vec_pack_trunc_v4hi): Use ia64_expand_vec_perm_even_odd.
        (vec_pack_trunc_v2si): Likewise.
        (vec_perm_const<VEC>): New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182564 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAlways simplify vector shifts by scalars.
rth [Wed, 21 Dec 2011 00:41:24 +0000 (00:41 +0000)]
Always simplify vector shifts by scalars.
Also decompose vectors in large integer modes.

        * tree-vect-generic.c (expand_vector_operations_1): Correct tests
        for vector types -- use the type not the mode.  Fix optab selection
        for vector shifts by a scalar.  Handle over-large integer modes
        like BLKmode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182563 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoarm: Split xorsi with constant after reload.
rth [Wed, 21 Dec 2011 00:35:41 +0000 (00:35 +0000)]
arm: Split xorsi with constant after reload.

This puts xorsi3 in the same format as andsi3 and iorsi3.
This similarity fixes code generation issues with splitting
atomic_fetch_xor post-reload.

        * config/arm/arm.md (*arm_xorsi3): Match iorsi3 and perform
        post-reload splitting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182562 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoarm: Use arm_cmpdi_unsigned for thumb2 as well
rth [Wed, 21 Dec 2011 00:34:09 +0000 (00:34 +0000)]
arm: Use arm_cmpdi_unsigned for thumb2 as well

This changes code generation from "eors; eors; orrs" (which ranges
from 6 to 12 bytes and requires three scratch registers), to
"cmp; it; cmp" (which is always 6 bytes for register inputs and
requires no scratch registers).

        * config/arm/arm.md (*arm_cmpdi_unsigned): Enable for thumb2.
        * config/arm/arm.c (arm_select_cc_mode): Use it.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182561 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Wed, 21 Dec 2011 00:19:23 +0000 (00:19 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182560 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Tue, 20 Dec 2011 23:51:09 +0000 (23:51 +0000)]
/cp
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51621
* tree.c (diagnose_non_constexpr_vec_init): For value initialization
pass void_type_node, not void_zero_node, to build_vec_init_elt.

/testsuite
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51621
* g++.dg/cpp0x/constexpr-ice5.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182556 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/i386/morestack.S (__morestack_non_split): If there is
ian [Tue, 20 Dec 2011 22:34:30 +0000 (22:34 +0000)]
* config/i386/morestack.S (__morestack_non_split): If there is
enough stack space already, don't split.  Ask for more stack space
than we required.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182555 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Tue, 20 Dec 2011 21:33:48 +0000 (21:33 +0000)]
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict
handling of signedness differences to integer types.  Only build
a new optype if type1 isn't correct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182554 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Vladimir Makarov <vmakarov@redhat.com>
vmakarov [Tue, 20 Dec 2011 21:29:36 +0000 (21:29 +0000)]
2011-12-20  Vladimir Makarov  <vmakarov@redhat.com>

PR target/49865
* ira-costs.c (find_costs_and_classes): Prefer registers even
          if the memory cost is the same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182553 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Sergio Durigan Junior <sergiodj@redhat.com>
tromey [Tue, 20 Dec 2011 20:54:25 +0000 (20:54 +0000)]
2011-12-20  Sergio Durigan Junior  <sergiodj@redhat.com>

* unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and
`sys/sdt.h'.
(_Unwind_DebugHook): New function.
(uw_restore_core_regs): New define.
(unwind_phase2): Use uw_restore_core_regs instead of
restore_core_regs.
(unwind_phase2_forced): Likewise.
(__gnu_Unwind_Resume): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182552 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc:
jsm28 [Tue, 20 Dec 2011 20:44:13 +0000 (20:44 +0000)]
gcc:
* c-decl.c (diagnose_mismatched_decls, grokdeclarator, grokfield)
(finish_struct): Refer to C11 in comments.  Use flag_isoc11.
* c-parser.c (c_parser_static_assert_declaration)
(c_parser_static_assert_declaration_no_semi, c_parser_declspecs)
(c_parser_alignas_specifier, c_parser_alignof_expression): Refer
to C11 in comments.  Use flag_isoc11.
* c-typeck.c (comptypes_check_different_types): Refer to C11 in
comment.
* doc/cpp.texi (Overview): Refer to -std=c11 instead of -std=c1x.
* doc/cppopts.texi (-std=c11, -std=gnu11): Document in preference
to -std=c1x and -std=gnu1x.
* doc/extend.texi (Inline, Alternate Keywords, Other Builtins)
(__builtin_complex, Unnamed Fields): Refer to -std=c11 and C11
instead of -std=c1x and C1X.
* doc/invoke.texi (-std=c11, -std=iso9899:2011): Document in
preference to -std=c1x.
(-std=gnu11): Document in preference to -std=gnu1x.
* doc/standards.texi: Document C11 instead of C1X.  Document C11
as actual standard.  Document headers required from freestanding
C11 implementations.
* ginclude/float.h, ginclude/stddef.h: Test __STDC_VERSION__ >=
201112L for C11.  Update comments to refer to C11.

gcc/c-family:
* c-common.c (flag_isoc99): Update comment to refer to C11.
(flag_isoc1x): Change to flag_isoc11.
* c-common.h (flag_isoc99): Update comment to refer to C11.
(flag_isoc1x): Change to flag_isoc11.
* c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
C11.
* c-opts.c (set_std_c1x): Change to set_std_c11.
(c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
Call set_std_c11.
(set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
(set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
* c.opt (std=c1x): Change to std=c11.  Document as non-draft
standard.
(std=c1x, std=iso9899:2011): Add as aliases of std=c11.
(std=gnu1x): Change to std=gnu11.  Refer to non-draft standard.
(std=gnu1x): Make alias of std=gnu11.

gcc/testsuite:
* gcc.dg/c11-version-1.c, gcc.dg/c11-version-2.c,
gcc.dg/c94-version-1.c, gcc.dg/c99-version-1.c,
gcc.dg/gnu11-version-1.c: New tests.

libcpp:
* include/cpplib.h (CLK_GNUC1X): Change to CLK_GNUC11.
(CLK_STDC1X): Change to CLK_STDC11.
* init.c (lang_defaults): Update comments.
(cpp_init_builtins): Update language tests.  Use 201112L for C11
__STDC_VERSION__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182551 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agolibgo/runtime: Don't define _GNU_SOURCE in source code.
ian [Tue, 20 Dec 2011 18:49:40 +0000 (18:49 +0000)]
libgo/runtime: Don't define _GNU_SOURCE in source code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182550 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agosyscall: Don't define IPMreq in socket_irix.go.
ian [Tue, 20 Dec 2011 18:17:21 +0000 (18:17 +0000)]
syscall: Don't define IPMreq in socket_irix.go.

From Rainer Orth.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182549 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agolibgo: Fix use of -D_GNU_SOURCE and friends when building libgo.
ian [Tue, 20 Dec 2011 18:14:30 +0000 (18:14 +0000)]
libgo: Fix use of -D_GNU_SOURCE and friends when building libgo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182548 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoconfig/:
schwab [Tue, 20 Dec 2011 16:54:12 +0000 (16:54 +0000)]
config/:
* warnings.m4 (ACX_PROG_CC_WARNING_OPTS): Avoid leading dash in
expr call.
fixincludes/:
* configure: Regenerate.
gcc/:
* configure: Regenerate.
libcpp/:
* configure: Regenerate.
libdecnumber/:
* configure: Regenerate.
libiberty/:
* configure: Regenerate.
lto-plugin/:
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182546 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago gcc/
bernds [Tue, 20 Dec 2011 16:46:22 +0000 (16:46 +0000)]
gcc/
* expr.c (store_field): Avoid a direct store if the mode is larger
than the size of the bit field.
* stor-layout.c (layout_decl): If flag_strict_volatile_bitfields,
treat non-volatile bit fields like volatile ones.
* toplev.c (process_options): Disallow combination of
-fstrict-volatile-bitfields and ABI versions less than 2.
* config/arm/arm.c (arm_option_override): Don't enable
flag_strict_volatile_bitfields if the ABI version is less than 2.
* config/h8300/h8300.c (h8300_option_override): Likewise.
* config/rx/rx.c (rx_option_override): Likewise.
* config/m32c/m32c.c (m32c_option_override): Likewise.
* config/sh/sh.c (sh_option_override): Likewise.

gcc/testsuite/
* gcc.target/arm/volatile-bitfields-4.c: New test.
* c-c++-common/abi-bf.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182545 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 20 Dec 2011 14:09:26 +0000 (14:09 +0000)]
2011-12-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Insert_Freeze_Node_For_Instance):  Further
refinements on the placement of a freeze node for a package
instantiation, when the generic appears within a previous
instantiation in the same unit.If the current instance is within
the one that contains the generic, the freeze node for the
current one must appear in the current declarative part. Ditto
if the current instance is within another package instance. In
these cases the freeze node of the previous instance is is not
relevant. New predicate Enclosing_Body simplifies the process.
(Freeze_Subprogram_Body): Rename Enclosing_Body to
Enclosing_Package_Body, to prevent confusion with subprogram of
same name elsewhere.
(Install_Body): Recognize enclosing subprogram bodies to determine
whether freeze_node belongs in current declarative list.

2011-12-20  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Allow
attribute definition clause for renaming if generated internally
and generate duplicate clause to apply to renamed object.
(Rep_Item_Too_Late): Only diagnose source level entities
* prj-nmsc.adb: Minor reformatting.
* gcc-interface/Make-lang.in: Update dependencies.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182542 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Bob Duff <duff@adacore.com>
charlet [Tue, 20 Dec 2011 14:04:19 +0000 (14:04 +0000)]
2011-12-20  Bob Duff  <duff@adacore.com>

* opt.ads (List_Inherited_Aspects): Default to False
(i.e. -gnatw.L is the default).
* usage.adb: Document new default for -gnatw.L.
* gnat_ugn.texi: Document -gnatw.l and -gnatw.L switches.
* warnsw.adb (Set_Warning_Switch): Do not include
List_Inherited_Aspects in -gnatwa.

2011-12-20  Ed Schonberg  <schonberg@adacore.com>

* checks.adb (Apply_Type_Conversion_Checks): For a discrete type
with predicates, indicate unconditionally that a range check
is needed.
* exp_ch4.adb (Expand_N_In): When the membership test is rewritten
to incorporate a call to a predicate function, analyze expression
with checks suppressed, to prevent infinite recursion.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182540 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 20 Dec 2011 14:00:46 +0000 (14:00 +0000)]
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch11.adb (Find_Local_Handler): Guard the
search over individual exception choices in case the list of
handlers contains other (possibly illegal) constructs.

2011-12-20  Gary Dismukes  <dismukes@adacore.com>

* sem_ch8.adb (Find_Type): Test taggedness
of the Available_Type when checking for an illegal use of an
incomplete type, when the incomplete view is a limited view of
a type. Remove redundant Is_Tagged test.

2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb: Add with and use clause for Aspects.
(Is_Finalizable_Transient): Objects which denote Ada containers
in the context of iterators are not considered transients. Such
object must live for as long as the loop is around.
(Is_Iterated_Container): New routine.

2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_imgv.adb (Expand_Width_Attribute): Add a
type conversion from the enumeration subtype to its base subtype.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182539 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoMinor reformatting.
charlet [Tue, 20 Dec 2011 13:56:21 +0000 (13:56 +0000)]
Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182538 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 20 Dec 2011 13:55:31 +0000 (13:55 +0000)]
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch4.adb (Operator_Check): Update the call to
Is_Dimensioned_Type.
* sem_dim.adb: Remove with and use clause for Namet.Sp. Reorganize
all type declarations and datastructures involved. Propagate
all changes involving data structures and types throughout
the pakage. Alphabetize all subprograms. Add ??? comments.
(AD_Hash): Removed.
(Analyze_Aspect_Dimension): Rewritten. This
routine now does all its checks in one pass rather than
two. Refactor code. The error message are now in a more GNAT-ish style.
(Create_Rational_From_Expr): This is now a function.
(Get_Dimensions): Removed.
(Get_Dimensions_String_Id): Removed.
(Dimensions_Of): New rouitne.
(Exists): New routines.
(Is_Invalid): New routine.
(Permits_Dimensions): Removed.
(Present): Removed.
(Set_Symbol): New routine.
(System_Of): New routine.
* sem_dim.ads: Rewrite the top level description of the
package. Alphabetize subprograms. Add various comments on
subprogram usage. Add ??? comments.
(Is_Dimensioned_Type):
Renamed to Has_Dimension_System.
* sem_res.adb (Resolve_Op_Expon): Update the call to Is_Dimensioned_Type

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182537 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 20 Dec 2011 13:53:42 +0000 (13:53 +0000)]
2011-12-20  Ed Schonberg  <schonberg@adacore.com>

* sem_ch13.adb (Check_Indexing_Functions): The return type of an
indexing function can be the default element type, and does not
need to be a reference type.
* sem_ch4.adb (Try_Container_Indexing): Ditto.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182536 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Robert Dewar <dewar@adacore.com>
charlet [Tue, 20 Dec 2011 13:52:22 +0000 (13:52 +0000)]
2011-12-20  Robert Dewar  <dewar@adacore.com>

* a-cdlili.ads, sem_cat.adb, sem_ch10.adb: Minor reformatting.

2011-12-20  Bob Duff  <duff@adacore.com>

* s-taprop-mingw.adb (Yield): Do_Yield is no longer Unreferenced.

2011-12-20  Vincent Pucci  <pucci@adacore.com>

* impunit.adb: s-dimkio, s-dimmks and s-dmotpr defined as GNAT
Defined Additions to System.
* Makefile.rtl: s-dimkio, s-dimmks and s-dmotpr added.
* s-dimkio.ads, s-dimmks.ads, s-dmotpr.ads: New files.

2011-12-20  Gary Dismukes  <dismukes@adacore.com>

* sem_ch4.adb (Traverse_Homonyms): Allow a homonym to match when
within an instance, even if the homonym is marked Is_Hidden at
this point.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182535 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Robert Dewar <dewar@adacore.com>
charlet [Tue, 20 Dec 2011 13:47:44 +0000 (13:47 +0000)]
2011-12-20  Robert Dewar  <dewar@adacore.com>

* sem_ch3.adb, sem_ch5.adb, s-diinio.adb, s-diinio.ads, sem_dim.adb,
sem_dim.ads, sem_res.adb, s-stposu.adb, s-stposu.ads, sem_ch4.adb,
s-diflio.adb, s-diflio.ads, exp_disp.adb, s-llflex.ads: Minor
reformatting.
* aspects.ads: Dimension[_Aspects] are GNAT defined.

2011-12-20  Robert Dewar  <dewar@adacore.com>

* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Check
renaming case.

2011-12-20  Thomas Quinot  <quinot@adacore.com>

* sem_cat.adb, sem_ch10.adb (Analyze_With_Clause): For a WITH clause on
a child unit that is an illegal instantiation, mark the WITH clause in
error.
(Install_Siblings, Validate_Categorization_Dependency): Guard
against WITH clause marked as in error.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182534 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 20 Dec 2011 13:41:00 +0000 (13:41 +0000)]
2011-12-20  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_res.adb (Resolve_Allocator): Warning on allocation
of tasks on a subpool and rewrite the allocator into a raise
Program_Error statement.
* s-stposu.ads, s-stposu.adb: Code reformatting.
(Create_Subpool): Remove formal parameter Storage_Size.
(Default_Subpool_For_Pool): Add the default implementation of this
routine.
(Set_Pool_Of_Subpool): Rename formal parameter Pool to To. Update
all the uses of the parameter.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182533 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR debug/49951 - jumpy stepping at end of scope in C++
dodji [Tue, 20 Dec 2011 13:36:04 +0000 (13:36 +0000)]
PR debug/49951 - jumpy stepping at end of scope in C++

gcc/cp/

PR debug/49951
* decl.c (cxx_maybe_build_cleanup): Don't set location of the call
to the destructor.

gcc/testsuite/

PR debug/49951
* g++.dg/gcov/gcov-2.C: Adjust.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182532 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSupport 64-bit libjava multilib for i?86-linux
ro [Tue, 20 Dec 2011 12:18:26 +0000 (12:18 +0000)]
Support 64-bit libjava multilib for i?86-linux

* configure.ac (i?86-*-linux*): Set SIGNAL_HANDLER_AUX.
* configure: Regenerate.
* include/i386-signal.h: Wrap in __i386__, include
java-signal-aux.h otherwise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182528 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoSupport 64-bit libgnat multilib on i?86-linux
ro [Tue, 20 Dec 2011 12:16:43 +0000 (12:16 +0000)]
Support 64-bit libgnat multilib on i?86-linux

* gcc-interface/Makefile.in (%86 linux%):
(LIBGNAT_TARGET_PAIRS_32): Split off from LIBGNAT_TARGET_PAIRS.
(LIBGNAT_TARGET_PAIRS_64): New.
(LIBGNAT_TARGET_PAIRS): Add either depending on multilib.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182527 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Tue, 20 Dec 2011 10:38:44 +0000 (10:38 +0000)]
/cp
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51612
* semantics.c (is_valid_constexpr_fn): In case of constexpr
constructors also check for virtual base classes.

/testsuite
2011-12-20  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51612
* g++.dg/cpp0x/constexpr-ice4.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182526 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Richard Guenther <rguenther@suse.de>
rguenth [Tue, 20 Dec 2011 09:49:17 +0000 (09:49 +0000)]
2011-12-20  Richard Guenther  <rguenther@suse.de>

PR lto/46796
* dwarf2out.c (modified_type_die): When the type variant
chain is corrupt use the types name, if available, instead
of __unknown__.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182524 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR libstdc++/51365
redi [Tue, 20 Dec 2011 09:09:50 +0000 (09:09 +0000)]
PR libstdc++/51365
* include/std/tuple (_Tuple_impl): Check __is_final as well as
is_empty.
* testsuite/20_util/tuple/51365.cc: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182523 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/alpha/linux-unwind.h: Update copyright years.
uros [Tue, 20 Dec 2011 08:46:38 +0000 (08:46 +0000)]
* config/alpha/linux-unwind.h: Update copyright years.
(MD_FROB_UPDATE_CONTEXT): New define.
(alpha_frob_update_context): New function.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182522 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 20 Dec 2011 08:35:12 +0000 (08:35 +0000)]
2011-12-20  Tristan Gingold  <gingold@adacore.com>

* config/alpha/alpha.c (alpha_start_function): Adjust condition to
create VMS trampoline entry point.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182521 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-20 Tristan Gingold <gingold@adacore.com>
gingold [Tue, 20 Dec 2011 08:08:30 +0000 (08:08 +0000)]
2011-12-20  Tristan Gingold  <gingold@adacore.com>

* aclocal.m4: Assume strncmp works in cross case.
* configure: Regenerate

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182520 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Tue, 20 Dec 2011 00:18:56 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182516 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Tue, 20 Dec 2011 00:16:25 +0000 (00:16 +0000)]
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

* libsupc++/eh_tm.cc (free_any_cxa_exception): Use
__GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182512 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Mon, 19 Dec 2011 23:29:14 +0000 (23:29 +0000)]
2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

* testsuite/performance/25_algorithms/search_n.cc: Disambiguate
local variable.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182510 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago/cp
paolo [Mon, 19 Dec 2011 22:40:11 +0000 (22:40 +0000)]
/cp
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51328
* pt.c (convert_template_argument): Early error out and return
error_mark_node for invalid uses of destructors as types.

/testsuite
2011-12-19  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51328
* g++.dg/template/crash109.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182508 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoAdd a PR reference.
rsandifo [Mon, 19 Dec 2011 22:23:42 +0000 (22:23 +0000)]
Add a PR reference.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182506 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51530
jason [Mon, 19 Dec 2011 22:08:29 +0000 (22:08 +0000)]
PR c++/51530
* pt.c (unify): Handle NULLPTR_TYPE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182505 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Mon, 19 Dec 2011 22:05:28 +0000 (22:05 +0000)]
gcc/
* fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
optimization if the source register is already extended.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182504 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/testsuite/
rsandifo [Mon, 19 Dec 2011 21:45:21 +0000 (21:45 +0000)]
gcc/testsuite/
* gcc.target/mips/mult-1.c: Require -O2.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182502 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/testsuite/
rsandifo [Mon, 19 Dec 2011 21:42:12 +0000 (21:42 +0000)]
gcc/testsuite/
* gcc.target/mips/ext-2.c: Add NOMIPS16.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182501 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agogcc/
rsandifo [Mon, 19 Dec 2011 21:19:13 +0000 (21:19 +0000)]
gcc/
* lower-subreg.c (can_decompose_p): Check every word of a hard
register.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182500 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51526
jason [Mon, 19 Dec 2011 21:06:44 +0000 (21:06 +0000)]
PR c++/51526
* semantics.c (build_data_member_initialization): Handle
delegating constructor.
(build_constexpr_constructor_member_initializers): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182499 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Sandra Loosemore <sandra@codesourcery.com>
sandra [Mon, 19 Dec 2011 20:29:21 +0000 (20:29 +0000)]
2011-12-19  Sandra Loosemore  <sandra@codesourcery.com>
    Tom de Vries <tom@codesourcery.com>

PR rtl-opt/50380

gcc/
* cse.c (find_comparison_args): Detect fixed point and
bail early.

gcc/testsuite/
* gcc.c-torture/compile/pr50380.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182498 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 19 Dec 2011 20:18:18 +0000 (20:18 +0000)]
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * parse.c (gfc_fixup_sibling_symbols): Regard FL_LABEL as
        local symbol.

2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * gfortran.dg/block_10.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182497 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51553
jason [Mon, 19 Dec 2011 20:10:49 +0000 (20:10 +0000)]
PR c++/51553
* cp-tree.h (LOOKUP_LIST_INIT_CTOR): Rename from
LOOKUP_NO_COPY_CTOR_CONVERSION.
(add_list_candidates): Set it earlier.
(add_candidates): Don't check explicit on ctors when it's set.
(add_function_candidate): Check it even when LOOKUP_ONLYCONVERTING
is set.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182496 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51553
jason [Mon, 19 Dec 2011 20:10:37 +0000 (20:10 +0000)]
PR c++/51553
* call.c (add_function_candidate): Allow conversions for the copy
parm in list-initialization unless the argument is an init-list.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182495 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51228
jason [Mon, 19 Dec 2011 20:10:25 +0000 (20:10 +0000)]
PR c++/51228
* c-common.c (handle_transparent_union_attribute): Check the first
field if the type is complete.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182494 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoCommit forgotten testcase that goes along with this PR.
aldyh [Mon, 19 Dec 2011 19:33:05 +0000 (19:33 +0000)]
Commit forgotten testcase that goes along with this PR.

PR middle-end/51411
* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182493 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/51411
aldyh [Mon, 19 Dec 2011 19:31:17 +0000 (19:31 +0000)]
PR middle-end/51411
* trans-mem.c (ipa_tm_create_version): Unset DECL_WEAK.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182492 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/51580
ebotcazou [Mon, 19 Dec 2011 19:17:10 +0000 (19:17 +0000)]
PR tree-optimization/51580
* gnat.dg/specs/loop_optimization1.ads: New test.
* gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182491 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Quentin Neill <quentin.neill@amd.com>
qneill [Mon, 19 Dec 2011 17:57:32 +0000 (17:57 +0000)]
2011-12-19  Quentin Neill  <quentin.neill@amd.com>
2011-12-19  Quentin Neill  <quentin.neill@amd.com>

PR target/48743
* config/i386/driver-i386.c (host_detect_local_cpu): Also check
family to distinguish PROCESSOR_ATHLON.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182489 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 19 Dec 2011 15:57:02 +0000 (15:57 +0000)]
2011-12-19  Richard Guenther  <rguenther@suse.de>

PR lto/51573
* streamer-hooks.h (struct streamer_hooks): Add second
ref_p parameter to write_tree.
(stream_write_tree): Adjust.
(stream_write_tree_shallow_non_ref): New define.
* lto-streamer.h (lto_output_tree): Adjust.
* lto-streamer-out.c (lto_output_tree): Likewise.
* tree-streamer-out.c (streamer_write_chain): Only
force the immediate tree to be streamed as non-reference.

* gcc.dg/lto/20111207-2_0.c: Adjust.
* g++.dg/lto/pr51573-1_0.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182487 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51619
jakub [Mon, 19 Dec 2011 15:38:06 +0000 (15:38 +0000)]
PR c++/51619
* semantics.c (cxx_eval_vec_init_1): If init is NULL for
multidimensional array, just set eltinit to NULL_TREE.

* g++.dg/cpp0x/pr51619.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182485 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 19 Dec 2011 15:30:23 +0000 (15:30 +0000)]
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * match.c (gfc_match_select_type): Handle
        scalar polymophic coarrays.
        (select_type_set_tmp, ): Ditto; avoid segfault if !class_ok.
        * primary.c (gfc_match_rvalue): Avoid segfault if !class_ok.
        * resolve.c (resolve_select_type): Ditto.
        (resolve_assoc_var): Fix setting the TARGET attribute for
        polymorphic selectors which are pointers.

2011-12-19  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51605
        * gfortran.dg/select_type_25.f90: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182484 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Martin Jambor <mjambor@suse.cz>
jamborm [Mon, 19 Dec 2011 14:33:18 +0000 (14:33 +0000)]
2011-12-19  Martin Jambor  <mjambor@suse.cz>

PR tree-optimization/51583
* tree-sra.c (load_assign_lhs_subreplacements): Call
force_gimple_operand_gsi when necessary also in case of no
corresponding replacement on the RHS.

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

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182483 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gimple.h (gimplify_seq_add_stmt): Rename to...
jakub [Mon, 19 Dec 2011 14:25:28 +0000 (14:25 +0000)]
* gimple.h (gimplify_seq_add_stmt): Rename to...
(gimple_seq_add_stmt_without_update): ... this.
* gimplify.c (gimplify_seq_add_stmt): Rename to...
(gimple_seq_add_stmt_without_update): ... this.
(gimplify_seq_add_stmt): New inline wrapper for it.
* tree-vect-patterns.c (append_pattern_def_seq): Use
gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.

* cp-gimplify.c (gimplify_must_not_throw_expr): Use
gimple_seq_add_stmt_without_update instead of gimplify_seq_add_stmt.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182482 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR tree-optimization/51596
jakub [Mon, 19 Dec 2011 14:24:29 +0000 (14:24 +0000)]
PR tree-optimization/51596
* tree-cfg.c (replace_uses_by): Call gimple_purge_dead_eh_edges
when needed.

* g++.dg/opt/pr51596.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182481 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR middle-end/51590
jakub [Mon, 19 Dec 2011 14:22:29 +0000 (14:22 +0000)]
PR middle-end/51590
PR tree-optimization/51606
* tree-vect-patterns.c (append_pattern_def_seq, new_pattern_def_seq):
New inline functions.
(vect_recog_over_widening_pattern,
vect_recog_vector_vector_shift_pattern,
vect_recog_sdivmod_pow2_pattern, vect_recog_mixed_size_cond_pattern,
adjust_bool_pattern_cast, vect_recog_bool_pattern): Use them.

* gcc.dg/vect/pr51590.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182480 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Richard Guenther <rguenther@suse.de>
rguenth [Mon, 19 Dec 2011 13:37:06 +0000 (13:37 +0000)]
2011-12-19  Richard Guenther  <rguenther@suse.de>

PR lto/51572
* tree.c (free_lang_data_in_type): Do not unlink TYPE_DECL
from TYPE_FIELDS.
(find_decls_types_r): Walk TYPE_DECLs in TYPE_FIELDS.
* tree-streamer-out.c (write_ts_field_decl_tree_pointers): Do
not stream TREE_CHAIN.
(write_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
using streamer_write_chain.
* tree-streamer-in.c (lto_input_ts_field_decl_tree_pointers):
Do not stream TREE_CHAIN.
(lto_input_ts_type_non_common_tree_pointers): Stream TYPE_FIELDS
using streamer_read_chain.
* gimple-streamer-in.c (input_gimple_stmt): Skip non-FIELD_DECLs.
* gimple.c (gimple_canonical_types_compatible_p): Properly
handle trailing non-FIELD_DECLs in TYPE_FIELDS.

* g++.dg/lto/pr51572-2_0.C: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182479 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoCheck for warning flags without no- prefix
schwab [Mon, 19 Dec 2011 13:12:26 +0000 (13:12 +0000)]
Check for warning flags without no- prefix

config/:
PR bootstrap/51388
* warnings.m4 (ACX_PROG_CC_WARNING_OPTS)
(ACX_PROG_CC_WARNING_ALMOST_PEDANTIC): Run the test without the
no- prefix.
fixincludes/:
* configure: Regenerate.
gcc/:
* configure: Regenerate.
libcpp/:
* configure: Regenerate.
libdecnumber/:
* configure: Regenerate.
libiberty/:
* configure: Regenerate.
lto-plugin/:
* configure: Regenerate.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182478 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for
bernds [Mon, 19 Dec 2011 12:39:34 +0000 (12:39 +0000)]
* emit-rtl.c (init_emit_once): Initialize const_tiny_rtx[3] for
partial integer modes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182477 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR target/51532
schwab [Mon, 19 Dec 2011 10:14:13 +0000 (10:14 +0000)]
PR target/51532
* config/m68k/m68k.h (FL_CAS, TARGET_CAS): Define.
* config/m68k/m68k.c (FL_FOR_isa_20): Add FL_CAS.
* config/m68k/sync.md: Use TARGET_CAS instead of (TARGET_68020 ||
TARGET_68040).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182475 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoPR c++/51477 - ICE with invalid NSDMI
dodji [Mon, 19 Dec 2011 09:47:46 +0000 (09:47 +0000)]
PR c++/51477 - ICE with invalid NSDMI

gcc/cp/

PR c++/51477
* search.c (lookup_member): Get out early on invalid base type.

gcc/testsuite/

PR c++/51477
* g++.dg/cpp0x/nsdmi6.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182474 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-19 Tobias Burnus <burnus@net-b.de>
burnus [Mon, 19 Dec 2011 08:15:47 +0000 (08:15 +0000)]
2011-12-19  Tobias Burnus  <burnus@net-b.de>

        * check.c (coarray_check): Add class ref if needed.
        * resolve.c (resolve_fl_var_and_proc,
        resolve_fl_derived0, resolve_symbol): Fix checking
        for BT_CLASS.

2011-12-19  Tobias Burnus  <burnus@net-b.de>

        * gfortran.dg/coarray_poly_3.f90: New.
        * coarray/poly_run_1.f90: Enable some previously commented code.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182471 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51489
jason [Mon, 19 Dec 2011 05:57:52 +0000 (05:57 +0000)]
PR c++/51489
* semantics.c (cxx_eval_outermost_constant_expr): Check for
conversion from pointer to integer here.
(cxx_eval_constant_expression) [NOP_EXPR]: Not here.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182470 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Mon, 19 Dec 2011 00:18:33 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182466 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-18 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 18 Dec 2011 23:39:11 +0000 (23:39 +0000)]
2011-12-18  Paolo Carlini  <paolo.carlini@oracle.com>

* semantics.c (finish_compound_literal): Don't call check_narrowing
if !(complain & tf_warning_or_error).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182462 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc-interface/decl.c (gnat_to_gnu_param): Add comment about double
ebotcazou [Sun, 18 Dec 2011 14:41:00 +0000 (14:41 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_param): Add comment about double
reference and DECL_POINTS_TO_READONLY_P.
* gcc-interface/trans.c (Identifier_to_gnu) <by_ref>: Always set the
TREE_READONLY flag on the first dereference of a double dereference.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182460 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * configure: Regenerate.
ebotcazou [Sun, 18 Dec 2011 09:58:37 +0000 (09:58 +0000)]
* configure: Regenerate.
config/
* acx.m4 (Test for GNAT): Update comment and add quotes in final test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182457 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * config/ia64/ia64.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
aesok [Sun, 18 Dec 2011 09:19:51 +0000 (09:19 +0000)]
* config/ia64/ia64.h (REG_OK_FOR_BASE_P, REG_OK_FOR_INDEX_P,
LEGITIMATE_ADDRESS_REG, LEGITIMATE_ADDRESS_DISP,
GO_IF_LEGITIMATE_ADDRESS): Remove macros.
* config/ia64/ia64.c (TARGET_LEGITIMATE_ADDRESS_P): Define.
(ia64_reg_ok_for_base_p, ia64_legitimate_address_reg,
ia64_legitimate_address_disp, ia64_legitimate_address_p): New
functions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182456 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * gcc.dg/pr51491-2.c: Fix "cleanup-treee-dump" typo.
hp [Sun, 18 Dec 2011 08:30:22 +0000 (08:30 +0000)]
* gcc.dg/pr51491-2.c: Fix "cleanup-treee-dump" typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182455 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago * doc/xml/manual/iterators.xml: Replace "sect1" with "section".
redi [Sun, 18 Dec 2011 01:06:15 +0000 (01:06 +0000)]
* doc/xml/manual/iterators.xml: Replace "sect1" with "section".
* doc/xml/manual/algorithms.xml: Likewise.
* doc/html/manual/iterators.html: Likewise.
* doc/html/manual/algorithms.html: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182453 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51588
jason [Sun, 18 Dec 2011 00:55:18 +0000 (00:55 +0000)]
PR c++/51588
* parser.c (cp_parser_ptr_operator): Reject pointer to member of enum.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182452 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoDaily bump.
gccadmin [Sun, 18 Dec 2011 00:18:38 +0000 (00:18 +0000)]
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182451 138bc75d-0d04-0410-961f-82ee72b054a4

12 years agoRevert "fix" for PR bootstrap/51072
rth [Sat, 17 Dec 2011 21:40:45 +0000 (21:40 +0000)]
Revert "fix" for PR bootstrap/51072

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182445 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51586
jason [Sat, 17 Dec 2011 20:15:39 +0000 (20:15 +0000)]
PR c++/51586
* parser.c (cp_parser_check_class_key): Handle error_mark_node.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182442 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51587
jason [Sat, 17 Dec 2011 19:26:46 +0000 (19:26 +0000)]
PR c++/51587
* decl.c (start_enum): Avoid using ENUM_UNDERLYING_TYPE on a
non-enum.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182441 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago PR c++/51416
jason [Sat, 17 Dec 2011 13:51:51 +0000 (13:51 +0000)]
PR c++/51416
* init.c (build_value_init_noctor): Check for incomplete type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182435 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-17 Tom de Vries <tom@codesourcery.com>
vries [Sat, 17 Dec 2011 11:39:49 +0000 (11:39 +0000)]
2011-12-17  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/51491
* gcc.dg/pr51491.c: New test.
* gcc.dg/pr51491-2.c: Same.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182433 138bc75d-0d04-0410-961f-82ee72b054a4

12 years ago2011-12-17 Tom de Vries <tom@codesourcery.com>
vries [Sat, 17 Dec 2011 11:39:43 +0000 (11:39 +0000)]
2011-12-17  Tom de Vries  <tom@codesourcery.com>

PR tree-optimization/51491
* tree-ssa-ccp.c (insert_clobber_before_stack_restore)
(gsi_prev_dom_bb_nondebug, insert_clobbers_for_var): New function.
(ccp_fold_stmt): Use insert_clobbers_for_var after a successful
fold_builtin_alloca_with_align.
(ccp_visit_stmt): Calculate and free dominator info.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@182432 138bc75d-0d04-0410-961f-82ee72b054a4