OSDN Git Service

pf3gnuchains/gcc-fork.git
9 years ago2011-12-12 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 12 Dec 2011 17:34:19 +0000 (17:34 +0000)]
2011-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

Revert:
2011-12-12  Kai Tietz  <ktietz@redhat.com>

PR libstdc++/51135
* libsupc++/cxxabi.h (__cxa_dtor_type): New type.
(__cxa_throw): Use it for destructor-argument.
* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
* libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
exceptionDestructor to __cxa_dtor_type.
* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
Define.
(__cxa_dtor_type): Declare target secific type variant.
* config/os/mingw32/os_defines.h: Likewise.

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

9 years ago2011-12-12 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Mon, 12 Dec 2011 17:29:17 +0000 (17:29 +0000)]
2011-12-12  Paolo Carlini  <paolo.carlini@oracle.com>

* Revert the last commit.

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

9 years ago PR testsuite/51511
jakub [Mon, 12 Dec 2011 16:48:46 +0000 (16:48 +0000)]
PR testsuite/51511
* gcc.dg/pr45819.c: Add -w to dg-options.

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

9 years ago PR middle-end/51510
jakub [Mon, 12 Dec 2011 16:44:23 +0000 (16:44 +0000)]
PR middle-end/51510
* calls.c (internal_arg_pointer_based_exp_scan): Don't use
VEC_safe_grow_cleared if idx is smaller than VEC_length.

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

9 years agogcc/
rsandifo [Mon, 12 Dec 2011 15:18:24 +0000 (15:18 +0000)]
gcc/
PR middle-end/50873
* optabs.c (maybe_legitimize_operand_same_code): Use copy_to_mode_reg
instead of force_reg.  Do nothing if the address is already a
non-virtual pseudo register.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 14:33:39 +0000 (14:33 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* s-taprop-mingw.adb: Minor reformatting.

2011-12-12  Nicolas Roche  <roche@adacore.com>

* gcc-interface/Make-lang.in: Update dependencies.
Add gnattools4 target when building tools in canadian mode

2011-12-12  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_VM_TSD): Complete previous
patch.

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

* s-tpobop.adb: Use named notation.
* g-bytswa.ads, s-taprop.ads: Minor comment fix.

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

* make.adb: Minor comment update.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 13:49:10 +0000 (13:49 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* freeze.adb, s-taprop-mingw.adb, exp_disp.adb, sem_ch13.adb: Minor
reformatting.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 13:43:38 +0000 (13:43 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* sem_ch6.adb, gnatls.adb: Minor reformatting.

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

* freeze.adb (Freeze_Entity): If a type declared in a generic
context has predicates, generate a freeze node for it.
* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): If expression
has not been analyzed yet, entity has not been frozen, so analyze
it now.

2011-12-12  Javier Miranda  <miranda@adacore.com>

* exp_disp.adb (Make_VM_TSD): Generate code
to store the value 'alignment in the TSD.

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

* s-taprop-mingw.adb (Yield): Do not delay 1 millisecond in Annex D
mode.

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

9 years ago2011-12-12 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Mon, 12 Dec 2011 13:40:18 +0000 (13:40 +0000)]
2011-12-12  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Expand_N_Allocator): Update the master of an
anonymous access-to-controlled type to utilize the heterogeneous
master associated with the current unit.

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

9 years agoCorrect bug-number in ChangeLog.
ktietz [Mon, 12 Dec 2011 13:29:10 +0000 (13:29 +0000)]
Correct bug-number in ChangeLog.

        PR libstdc++/51135
        * libsupc++/cxxabi.h (__cxxabi_dtor_type): New type.
        (__cxa_throw): Use it for destructor-argument.
        * libsupc++/eh_throw.cc (__cxa_throw): Likewise.
        * libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
        exceptionDestructor to __cxxabi_dtor_type.
        * config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
        Define.
        (__cxa_dtor_type): Declare target secific type variant.
        * config/os/mingw32/os_defines.h: Likewise.

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

9 years ago PR libstdc++/511135
ktietz [Mon, 12 Dec 2011 13:24:30 +0000 (13:24 +0000)]
PR libstdc++/511135
* libsupc++/cxxabi.h (__cxxabi_dtor_type): New type.
(__cxa_throw): Use it for destructor-argument.
* libsupc++/eh_throw.cc (__cxa_throw): Likewise.
* libsupc++/unwind-cxx.h (__cxa_exception): Change type of member
exceptionDestructor to __cxxabi_dtor_type.
* config/os/mingw32-w64/os_defines.h (_GLIBCXX_USE_THISCALL_ON_DTOR):
Define.
(__cxa_dtor_type): Declare target secific type variant.
* config/os/mingw32/os_defines.h: Likewise.

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

9 years ago2011-12-12 Ed Schonberg <schonberg@adacore.com>
charlet [Mon, 12 Dec 2011 12:06:59 +0000 (12:06 +0000)]
2011-12-12  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Analyze_Expression_Function): If the function
is not a completion, pre-analyze the expression now to prevent
spurious visibility on later entities. The body is inserted at
the end of the current declaration list or package to prevent
early freezing, but the visibility is established at the point
of definition.

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

* sem.adb, sem.ads: Add debugging routines.

2011-12-12  Tristan Gingold  <gingold@adacore.com>

* gnatls.adb: (gnatls): Also add the objects dir in search list.

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

9 years agoSupport noexcept-specifications for transaction statements and expressions.
torvald [Mon, 12 Dec 2011 12:05:37 +0000 (12:05 +0000)]
Support noexcept-specifications for transaction statements and expressions.

gcc/cp/
* semantics.c (finish_transaction_stmt, build_transaction_expr):
Accept new noexcept parameter and handle it.
* cp-tree.h (finish_transaction_stmt, build_transaction_expr): Adapt
declarations.
* parser.c (cp_parser_exception_specification_opt): Extract
noexcept-specification parsing to ...
(cp_parser_noexcept_specification_opt): ...here.  Allow for parsing
non-constexpr noexcept arguments.
(cp_parser_transaction, cp_parser_transaction_expression): Parse
and handle noexcept-specifications.
(cp_parser_function_transaction): Adapt to finish_transaction_stmt
change.
* pt.c (tsubst_expr): Adapt to new noexcept parameters when
building transactions.

gcc/testsuite/
* g++.dg/tm/noexcept-1.C: New test.
* g++.dg/tm/noexcept-2.C: New test.
* g++.dg/tm/noexcept-3.C: New test.
* g++.dg/tm/noexcept-4.C: New test.
* g++.dg/tm/noexcept-5.C: New test.

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

9 years agoAdd condition to MUST_NOT_THROW_EXPR.
torvald [Mon, 12 Dec 2011 12:05:18 +0000 (12:05 +0000)]
Add condition to MUST_NOT_THROW_EXPR.

gcc/cp/
* cp-tree.def (MUST_NOT_THROW_EXPR): Add condition parameter.
* cp-tree.h (MUST_NOT_THROW_COND): New.
(build_must_not_throw_expr): Declare.
* dump.c (cp_dump_tree): Dump MUST_NOT_THROW_EXPR condition.
* except.c (build_must_not_throw_expr): New.
(initialize_handler_parm): Use it.
(begin_eh_spec_block, wrap_cleanups_r): Adapt to condition.
* pt.c (tsubst_expr): Handle MUST_NOT_THROW_EXPR.

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

9 years agoAdd default handling for outermost wrappers in voidify_wrapper_expr.
torvald [Mon, 12 Dec 2011 12:05:01 +0000 (12:05 +0000)]
Add default handling for outermost wrappers in voidify_wrapper_expr.

gcc/
* gimplify.c (voidify_wrapper_expr): Add default handling for
outermost wrapper.

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

9 years agoPrevent sharing of commit calls among transactions.
torvald [Mon, 12 Dec 2011 12:04:46 +0000 (12:04 +0000)]
Prevent sharing of commit calls among transactions.

gcc/
* tree-ssa-tail-merge.c (gimple_equal_p): Don't treat transaction
commits as equal.

gcc/testsuite/
* c-c++-common/tm/20111206.c: New test.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 12:03:35 +0000 (12:03 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* exp_atag.adb, exp_atag.ads, exp_util.adb, exp_attr.adb,
sem_ch13.adb: Minor reformatting.

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

* sem_ch7.adb (Uninstall_Declarations): Don't
apply check for incomplete types used as a result type for an
access-to-function type when compiling for Ada 2012 or later.
* sem_ch6.adb (Analyze_Subprogram_Declaration):
Specialize error message for interface subprograms that are
not declared abstract nor null (functions can't be declared as
null). Also, remove "(Ada 2005)" from message.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 11:54:30 +0000 (11:54 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* sem_prag.adb (GNAT_Pragma): Check comes from source.

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

* gnatls.adb: Minor reformatting.

2011-12-12  Javier Miranda  <miranda@adacore.com>

* a-tags.ads (Alignment): New TSD field.
(Max_Predef_Prims): Value lowered to 15 (or 9 in case of
configurable runtime) Update documentation of predefined
primitives since Alignment has been removed.
* exp_disp.ads Update documentation of slots of dispatching
primitives.
* exp_disp.adb (Default_Prim_Op_Position): Update slot
values since alignment is no longer a predefined primitive.
(Is_Predefined_Dispatch_Operation): Remove _alignment.
(Is_Predefined_Internal_Operation): Remove _alignment.
(Make_DT): Update static test on the value stored in a-tags.ads
for Max_Predef_Prims; store the value of 'alignment in the TSD.
* exp_atag.ads, exp_atag.adb (Build_Get_Alignment): New subprogram
that retrieves the alignment from the TSD
* exp_util.adb (Build_Allocated_Deallocate_Proc): For deallocation
of class-wide types obtain the value of alignment from the TSD.
* exp_attr.adb (Expand_N_Attribute_Reference): For 'alignment
applied to a class-wide type invoke Build_Get_Alignment to
generate code which retrieves the value of the alignment from
the TSD.
* rtsfind.ads (RE_Alignment): New Ada.Tags entity
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): For tagged
types if the value of the alignment is bigger than the Maximum
alignment then set the value of the alignment to the Maximum
alignment and report a warning.
* exp_ch3.adb (Make_Predefined_Primitive_Specs): Do not generate
spec of _alignment.
(Predefined_Primitive_Bodies): Do not generate body of _alignment.

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

9 years ago2011-12-12 Gary Dismukes <dismukes@adacore.com>
charlet [Mon, 12 Dec 2011 11:52:04 +0000 (11:52 +0000)]
2011-12-12  Gary Dismukes  <dismukes@adacore.com>

* freeze.adb (Freeze_Expression): Allow freezing of static
scalar subtypes that are prefixes of an attribute, even if not
yet marked static. Such attributes will get marked as static
later in Eval_Attribute (as called from Resolve_Attribute).
* sem_attr.adb (Eval_Attribute): Remove wrong code that does an
early return for attribute prefixes that are unfrozen source-level
types. This code was incorrectly bypassing folding of unfrozen
static subtype attributes in default expressions (the executable
example in the now-deleted comment was in fact illegal).

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

* a-coinve.adb, sem_res.adb, prj-nmsc.adb, a-cobove.adb, a-convec.adb,
gnatls.adb, sem_ch13.adb, prj-env.adb, prj-env.ads: Minor reformatting.

2011-12-12  Tristan Gingold  <gingold@adacore.com>

* gsocket.h: Adjust previous patch.

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

9 years ago2011-12-12 Thomas Quinot <quinot@adacore.com>
charlet [Mon, 12 Dec 2011 11:49:31 +0000 (11:49 +0000)]
2011-12-12  Thomas Quinot  <quinot@adacore.com>

* exp_disp.adb: Minor reformatting.

2011-12-12  Tristan Gingold  <gingold@adacore.com>

* gnatls.adb (Search_RTS): New procedure.
(Scan_Ls_Arg): Move code that search the RTS.
(Gnatls): search the RTS later.
* prj-env.ads, prj-env.adb (Get_Runtime_Path): New function.

2011-12-12  Ed Falis  <falis@adacore.com>

* sysdep.c: Fix treatment of VxWorks task options so that run-times
built with __SPE__ get option VX_SPE_TASK while others get VX_FP_TASK.

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

* sem_type.adb, sem_type.ads, sem_ch4.adb, treepr.adb, treepr.ads:
Minor cleanup and fiddling with debug printouts.

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

* prj-nmsc.adb (Get_Directories): For a non extending project,
always get a declared object and/or exec directory if it already
exists, even when there are no sources, but do not create them.

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

* sem_res.adb (Resolve): Deal with the case where an abstract
operator is called with operands of type universal_integer.

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

* par_sco.adb: Minor fix to dominance marker referencing WHILE
decision.

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

9 years ago2011-12-12 Tristan Gingold <gingold@adacore.com>
charlet [Mon, 12 Dec 2011 11:28:03 +0000 (11:28 +0000)]
2011-12-12  Tristan Gingold  <gingold@adacore.com>

* mlib-tgt-specific-xi.adb: (Get_Target_Prefix): Simplify code.

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

* par_sco.adb: Adjust dominant marker for branches of CASE
statements.

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

* gsocket.h, s-oscons-tmplt.c: Ensure we do not include any system
header file prior to redefining FD_SETSIZE.

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

* sem_ch13.adb (Check_Aspect_At_End_Of_Declarations): In
a generic context the aspect expressions may not have been
preanalyzed if there was no previous freeze point, so the
expressions must be preanalyzed now, and there is no conformance
to check for visibility changes.

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

* a-convec.adb, a-coinve.adb, a-cobove.adb (Iterator): Use
subtype Index_Type'Base for Index component (Finalize): Remove
unnecessary access check (First, Last): Cursor return value
depends on iterator index value (Iterate): Use start position as
iterator index value (Next, Previous): Forward to corresponding
cursor-based operation.
* a-cborma.adb (Iterate): Properly initialize iterator object (with 0
as node index).

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

9 years ago PR libgcj/50053
ktietz [Mon, 12 Dec 2011 10:40:27 +0000 (10:40 +0000)]
    PR libgcj/50053
        * java/lang/natClass.cc (java::lang::Class::newInstance): Special case
        member-call for 32-bit IA native Window target.

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

9 years ago2011-12-12 Robert Dewar <dewar@adacore.com>
charlet [Mon, 12 Dec 2011 10:30:49 +0000 (10:30 +0000)]
2011-12-12  Robert Dewar  <dewar@adacore.com>

* par_sco.adb, scos.ads, put_scos.adb, get_scos.adb: Minor reformatting.

2011-12-12  Steve Baird  <baird@adacore.com>

* sem_ch3.adb (Check_Completion): Improve a comment.

2011-12-12  Tristan Gingold  <gingold@adacore.com>

* cstand.adb: Minor comment fix.

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

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

PR lto/51262
* tree.c (cp_free_lang_data): No longer clear anonymous names.

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

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

9 years agogcc:
iains [Mon, 12 Dec 2011 08:24:33 +0000 (08:24 +0000)]
gcc:

* config/darwin-sections.def (zobj_const_data_section): Fix over-
length section name.

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

9 years agoFix PR testsuite/47013
revitale [Mon, 12 Dec 2011 07:32:25 +0000 (07:32 +0000)]
Fix PR testsuite/47013

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

9 years ago * config/rs6000/rs6000.c (rs6000_expand_interleave): Use
rth [Mon, 12 Dec 2011 02:57:18 +0000 (02:57 +0000)]
    * config/rs6000/rs6000.c (rs6000_expand_interleave): Use
        BYTES_BIG_ENDIAN, not TARGET_BIG_ENDIAN.

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

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

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

9 years ago PR tree-optimization/51485
jakub [Sun, 11 Dec 2011 21:01:00 +0000 (21:01 +0000)]
PR tree-optimization/51485
* tree-vect-data-refs.c (vect_analyze_data_refs): Give up on
DRs in call stmts.

* g++.dg/vect/pr51485.cc: New test.

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

9 years ago2011-12-11 Tobias Burnus <burnus@net-b.de>
burnus [Sun, 11 Dec 2011 20:44:30 +0000 (20:44 +0000)]
2011-12-11  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50923
        * trans-decl.c (generate_local_decl): Set TREE_NO_WARNING only
        if the front end has printed a warning.
        (gfc_generate_function_code): Fix unset-result warning.

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

        PR fortran/50923
        * gfortran.dg/warn_function_without_result_2.f90: New.

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

9 years ago2011-12-11 Paul Thomas <pault@gcc.gnu.org>
pault [Sun, 11 Dec 2011 20:42:23 +0000 (20:42 +0000)]
2011-12-11  Paul Thomas  <pault@gcc.gnu.org>
Tobias Burnus  <burnus@gcc.gnu.org>

PR fortran/41539
PR fortran/43214
PR fortran/43969
PR fortran/44568
PR fortran/46356
PR fortran/46990
PR fortran/49074
* interface.c(symbol_rank): Return the rank of the _data
component of class objects.
(compare_parameter): Also compare the derived type of the class
_data component for type mismatch.  Similarly, return 1 if the
formal and _data ranks match.
(compare_actual_formal): Do not compare storage sizes for class
expressions. It is an error if an actual class array, passed to
a formal class array is not full.
* trans-expr.c (gfc_class_data_get, gfc_class_vptr_get,
gfc_vtable_field_get, gfc_vtable_hash_get, gfc_vtable_size_get,
gfc_vtable_extends_get, gfc_vtable_def_init_get,
gfc_vtable_copy_get): New functions for class API.
(gfc_conv_derived_to_class): For an array reference in an
elemental procedure call retain the ss to provide the
scalarized array reference. Moved in file.
(gfc_conv_class_to_class): New function.
        (gfc_conv_subref_array_arg): Use the type of the
class _data component as a basetype.
(gfc_conv_procedure_call): Ensure that class array expressions
have both the _data reference and an array reference. Use
gfc_conv_class_to_class to handle class arrays for elemental
functions in scalarized loops, class array elements and full
class arrays. Use a call to gfc_conv_subref_array_arg in order
that the copy-in/copy-out for passing class arrays to derived
type arrays occurs correctly.
(gfc_conv_expr): If it is missing, add the _data component
between a class object or component and an array reference.
(gfc_trans_class_array_init_assign): New function.
(gfc_trans_class_init_assign): Call it for array expressions.
* trans-array.c (gfc_add_loop_ss_code): Do not use a temp for
class scalars since their size will depend on the dynamic type.
(build_class_array_ref): New function.
(gfc_conv_scalarized_array_ref): Call build_class_array_ref.
(gfc_array_init_size): Add extra argument, expr3, that represents
the SOURCE argument. If present,use this for the element size.
(gfc_array_allocate): Also add argument expr3 and use it when
calling gfc_array_init_size.
(structure_alloc_comps): Enable class arrays.
* class.c (gfc_add_component_ref): Carry over the derived type
of the _data component.
(gfc_add_class_array_ref): New function.
(class_array_ref_detected): New static function.
(gfc_is_class_array_ref): New function that calls previous.
(gfc_is_class_scalar_expr): New function.
(gfc_build_class_symbol): Throw not implemented error for
assumed size class arrays.  Remove error that prevents
CLASS arrays.
(gfc_build_class_symbol): Prevent pointer/allocatable conflict.
Also unset codimension.
(gfc_find_derived_vtab): Make 'copy' elemental and set the
intent of the arguments accordingly.:
* trans-array.h : Update prototype for gfc_array_allocate.
* array.c (gfc_array_dimen_size): Return failure if class expr.
(gfc_array_size): Likewise.
* gfortran.h : New prototypes for gfc_add_class_array_ref,
gfc_is_class_array_ref and gfc_is_class_scalar_expr.
* trans-stmt.c (trans_associate_var): Exclude class targets
from test. Move the allocation of the _vptr to an earlier time
for class objects.
(trans_associate_var): Assign the descriptor directly for class
arrays.
(gfc_trans_allocate): Add expr3 to gfc_array_allocate arguments.
Convert array element references into sections. Do not invoke
gfc_conv_procedure_call, use gfc_trans_call instead.
* expr.c (gfc_get_corank): Fix for BT_CLASS.
(gfc_is_simply_contiguous): Exclude class from test.
* trans.c (gfc_build_array_ref): Include class array refs.
* trans.h : Include prototypes for class API functions that are
new in trans-expr. Define GFC_DECL_CLASS(node).
* resolve.c (check_typebound_baseobject ): Remove error for
non-scalar base object.
(resolve_allocate_expr): Ensure that class _data component is
present. If array, call gfc_expr_to_intialize.
(resolve_select): Remove scalar error for SELECT statement as a
temporary measure.
(resolve_assoc_var): Update 'target' (aka 'selector') as
needed. Ensure that the target expression has the right rank.
(resolve_select_type): Ensure that target expressions have a
valid locus.
(resolve_allocate_expr, resolve_fl_derived0): Fix for BT_CLASS.
* trans-decl.c (gfc_get_symbol_decl): Set GFC_DECL_CLASS, where
appropriate.
(gfc_trans_deferred_vars): Get class arrays right.
* match.c(select_type_set_tmp): Add array spec to temporary.
(gfc_match_select_type): Allow class arrays.
* check.c (array_check): Ensure that class arrays have refs.
(dim_corank_check, dim_rank_check): Retrun success if class.
* primary.c (gfc_match_varspec): Fix for class arrays and
co-arrays. Make sure that class _data is present.
(gfc_match_rvalue): Handle class arrays.
*trans-intrinsic.c (gfc_conv_intrinsic_size): Add class array
reference.
(gfc_conv_allocated): Add _data component to class expressions.
(gfc_add_intrinsic_ss_code): ditto.
* simplify.c (simplify_cobound): Fix for BT_CLASS.
(simplify_bound): Return NULL for class arrays.
(simplify_cobound): Obtain correct array_spec. Use cotype as
appropriate. Use arrayspec for bounds.

2011-12-11  Paul Thomas  <pault@gcc.gnu.org>
Tobias Burnus  <burnus@gcc.gnu.org>

PR fortran/41539
PR fortran/43214
PR fortran/43969
PR fortran/44568
PR fortran/46356
PR fortran/46990
PR fortran/49074
* gfortran.dg/class_array_1.f03: New.
* gfortran.dg/class_array_2.f03: New.
* gfortran.dg/class_array_3.f03: New.
* gfortran.dg/class_array_4.f03: New.
* gfortran.dg/class_array_5.f03: New.
* gfortran.dg/class_array_6.f03: New.
* gfortran.dg/class_array_7.f03: New.
* gfortran.dg/class_array_8.f03: New.
* gfortran.dg/coarray_poly_1.f90: New.
* gfortran.dg/coarray_poly_2.f90: New.
* gfortran.dg/coarray/poly_run_1.f90: New.
* gfortran.dg/coarray/poly_run_2.f90: New.
* gfortran.dg/class_to_type_1.f03: New.
* gfortran.dg/type_to_class_1.f03: New.
* gfortran.dg/typebound_assignment_3.f03: Remove the error.
* gfortran.dg/auto_dealloc_2.f90: Occurences of __builtin_free
now 2.
* gfortran.dg/class_19.f03: Occurences of __builtin_free now 8.

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

9 years ago2011-12-11 Thomas Koenig <tkoenig@gcc.gnu.org>
tkoenig [Sun, 11 Dec 2011 17:43:22 +0000 (17:43 +0000)]
2011-12-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/50690
* frontend-passes.c (in_omp_workshare):  New variable.
(cfe_expr_0):  Don't eliminiate common function if it would put
the variable immediately into a WORKSHARE construct.
(optimize_namespace):  Set in_omp_workshare.
(gfc_code_walker):  Keep track of OMP PARALLEL and OMP WORKSHARE
constructs.

2011-12-11  Thomas Koenig  <tkoenig@gcc.gnu.org>

PR fortran/50690
* gfortran.dg/gomp/workshare2.f90:  New test.
* gfortran.dg/gomp/workshare3.f90:  New test.

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

9 years ago * doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y,
redi [Sun, 11 Dec 2011 14:59:26 +0000 (14:59 +0000)]
* doc/xml/manual/abi.xml: Replace gcc-x.y.z with GCC x.y.z or x.y,
remove excessive duplication of version information.
* doc/html/*: Regenerate.

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

9 years ago * trans-mem.c (ipa_tm_transform_calls_redirect): Do not remove
aldyh [Sun, 11 Dec 2011 14:02:52 +0000 (14:02 +0000)]
    * trans-mem.c (ipa_tm_transform_calls_redirect): Do not remove
        edge.

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

9 years ago * config/sparc/sol2-unwind.h: Use #ifdef directive consistently.
ebotcazou [Sun, 11 Dec 2011 11:23:15 +0000 (11:23 +0000)]
* config/sparc/sol2-unwind.h: Use #ifdef directive consistently.

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

9 years ago * gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC
ebotcazou [Sun, 11 Dec 2011 11:05:58 +0000 (11:05 +0000)]
* gcc-interface/utils2.c (gnat_build_constructor): Test the TREE_STATIC
flag of elements to compute that of the constructor.

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

9 years ago * gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier
ebotcazou [Sun, 11 Dec 2011 10:54:52 +0000 (10:54 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_param): Set the restrict qualifier
on references built for parameters which aren't specifically by-ref.

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

9 years ago * gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If there is an
ebotcazou [Sun, 11 Dec 2011 10:40:08 +0000 (10:40 +0000)]
* gcc-interface/decl.c (gnat_to_gnu_entity) <object>: If there is an
alignment set on a renaming, assert that the renamed object is aligned
enough as to make it possible to honor it.

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

9 years ago2011-12-11 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Sun, 11 Dec 2011 10:32:04 +0000 (10:32 +0000)]
2011-12-11  Paolo Carlini  <paolo.carlini@oracle.com>

* Tweak ChangeLog.

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

9 years ago * gcc-interface/trans.c (gigi): Initialize the linemap earlier.
ebotcazou [Sun, 11 Dec 2011 09:43:46 +0000 (09:43 +0000)]
* gcc-interface/trans.c (gigi): Initialize the linemap earlier.

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

9 years agoDaily bump.
gccadmin [Sun, 11 Dec 2011 00:18:45 +0000 (00:18 +0000)]
Daily bump.

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

9 years ago2011-12-10 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 10 Dec 2011 21:15:37 +0000 (21:15 +0000)]
2011-12-10  Tobias Burnus  <burnus@net-b.de>

        * trans-decl.c (add_argument_checking): Fix syntax.

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

9 years agors6000: Implement vec_perm_const for all vector ISAs
rth [Sat, 10 Dec 2011 21:14:04 +0000 (21:14 +0000)]
rs6000: Implement vec_perm_const for all vector ISAs

        * config/rs6000/altivec.md (altivec_vmrghb): Rewrite pattern as
        vec_select + vec_concat.
        (altivec_vmrghh, altivec_vmrghw, altivec_vmrghsf, altivec_vmrglb,
        altivec_vmrglh, altivec_vmrglw, altivec_vmrglsf): Likewise.
        (vec_perm_constv16qi): New.
        (vec_extract_evenv4si, vec_extract_evenv4sf, vpkuhum_nomode,
        vpkuwum_nomode, vec_extract_oddv8hi, vec_extract_oddv16qi,
        vec_interleave_high<VI>, vec_interleave_low<VI>): Remove.
        * config/rs6000/paired.md (paired_merge00): Rewrite pattern as
        vec_select + vec_concat.
        (paired_merge10, paired_merge01, paired_merge11): Likewise.
        (vec_perm_constv2sf): New.
        (vec_interleave_highv2sf, vec_interleave_lowv2sf,
        vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
        * config/rs6000/spe.md (spe_evmergehi): Rewrite pattern as
        vec_select + vec_concat.
        (spe_evmergehilo, spe_evmergelo, spe_evmergelohi): New.
        (vec_perm_constv2si): New.
        * config/rs6000/vector.md (vec_interleave_highv4sf,
        vec_interleave_lowv4sf, vec_interleave_high<VEC_64>,
        vec_interleave_low<VEC_64>): Remove.
        * config/rs6000/vsx.md (VS_double): New mode attribute.
        (UNSPEC_VSX_XXPERMDI): Remove.
        (vsx_xxpermdi_<VSX_L>_1): Rewrite pattern as vec_select + vec_concat.
        (vsx_xxmrghw_<VSX_W>, vsx_xxmrglw_<VSX_W>): Likewise.
        (vsx_xxpermdi_<VSX_L>): Change to expander.
        (vec_perm_const<VSX_D>): New.
        (vsx_mergel_<VSX_D>, vsx_mergeh_<VSX_D>): New.
        * config/rs6000/predicates.md (const_0_to_1_operand): New.
        (const_2_to_3_operand): New.
        * config/rs6000/rs6000.c (TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
        (altivec_expand_vec_perm_const): New.
        (rs6000_expand_vec_perm_const_1, rs6000_expand_vec_perm_const): New.
        (rs6000_vectorize_vec_perm_const_ok): New.
        (rs6000_do_expand_vec_perm): New.
        (rs6000_expand_extract_even, rs6000_expand_interleave): New.
        * config/rs6000/rs6000-builtin.def (VEC_MERGE*): Update rtx codes.
        * config/rs6000/rs6000-modes.def: Add double-wide vector modes.
        * config/rs6000/rs6000-protos.h: Update.

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

9 years agoForce the creation of a CONST_VECTOR for expand_vec_perm.
rth [Sat, 10 Dec 2011 20:43:03 +0000 (20:43 +0000)]
Force the creation of a CONST_VECTOR for expand_vec_perm.

        * expr.c (expand_expr_real_2) [VEC_PERM_EXPR]: Avoid passing a
        CONST_INT to expand_vec_perm as the selector.
        * optabs.c (expand_vec_perm): Assert the selector is of a proper mode.

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

9 years agoLet GET_MODE_2XWIDER_MODE find a double-width vector mode.
rth [Sat, 10 Dec 2011 20:42:55 +0000 (20:42 +0000)]
Let GET_MODE_2XWIDER_MODE find a double-width vector mode.

        * genmodes.c (struct mode_data): Remove wider_2x member.
        (blank_mode): Adjust initializer.
        (calc_wider_mode): Use XALLOCAVEC.
        (emit_move_wider): Select double-width same-element vectors for
        2xwider vectors.
        * machmode.h (GET_MODE_2XWIDER_MODE): Update documentation.
        * config/i386/i386.c (doublesize_vector_mode): Remove.
        (expand_vselect_vconcat): Use GET_MODE_2XWIDER_MODE instead.

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

9 years ago2011-12-10 Tobias Burnus <burnus@net-b.de>
burnus [Sat, 10 Dec 2011 20:13:59 +0000 (20:13 +0000)]
2011-12-10  Tobias Burnus  <burnus@net-b.de>
            Kai Tietz  <ktietz@redhat.com>

        * trans-decl.c (add_argument_checking): Check ts.deferred earlier.
        * trans-intrinsic.c (gfc_conv_intrinsic_repeat): Use %ld with long.

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

9 years ago2011-12-10 Benjamin Kosnik <bkoz@redhat.com>
bkoz [Sat, 10 Dec 2011 15:33:06 +0000 (15:33 +0000)]
2011-12-10  Benjamin Kosnik  <bkoz@redhat.com>

* doc/doxygen/user.cfg.in: Add macros, directories.
* include/bits/locale_classes.h: Remove doxygen warnings, fix markup.
* include/bits/locale_classes.tcc: Same.
* include/bits/shared_ptr.h: Same.
* include/bits/stl_algo.h: Same.
* include/bits/stl_list.h: Same.
* include/bits/stl_numeric.h: Same.
* include/debug/safe_base.h: Same.
* include/parallel/equally_split.h: Same.
* include/std/bitset: Same.
* include/std/complex: Same.
* include/std/fstream: Same.
* include/std/istream: Same.
* include/std/ostream: Same.
* include/tr2/dynamic_bitset: Same.
* scripts/run_doxygen: Remove munging for names that no longer exist.

* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Same.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc: Same.

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

9 years ago2011-12-12 François Dumont <fdumont@gcc.gnu.org>
fdumont [Sat, 10 Dec 2011 14:00:03 +0000 (14:00 +0000)]
2011-12-12  François Dumont <fdumont@gcc.gnu.org>

* include/profile/unordered_set: Minor formatting changes.
(unordered_set<>::_M_profile_destruct,
unordered_multiset<>::_M_profile_destruct): Fix implementation to not
rely on normal implementation details anymore.
(unordered_set<>::_M_profile_resize,
unordered_multiset<>::_M_profile_resize): Implement consistently
accross all unordered containers.
(unordered_set<>::emplace, unordered_set<>::emplace_hint,
unordered_multiset<>::emplace, unordered_multset<>::emplace_hint): Add
to signal rehash to profiling system.
* include/profile/unordered_map: Likewise for unordered_map<> and
unordered_multimap<>.

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

9 years agogcc:
amylaar [Sat, 10 Dec 2011 10:22:56 +0000 (10:22 +0000)]
gcc:
        * config/epiphany/epiphany-protos.h (epiphany_start_function): Declare.
        * config/epiphany/epiphany.c (epiphany_handle_interrupt_attribute):
        Split "timer" value into "timer0" and "timer1".
        Handle page_miss, message and wand.  Don't handle static_flag.
        Adjust warning text.
        (epiphany_start_function): New function.
        (epiphany_compute_function_type): Split "timer" value into "timer0"
        and "timer1".  Handle page_miss, message and wand.
        Don't handle static_flag.
        (epiphany_expand_epilogue): Don't use frame_insn for status / iret
        restore.
        * config/epiphany/epiphany.h: ASM_DECLARE_FUNCTION_NAME: Define.
        (enum epiphany_function_type):
        Split EPIPHANY_FUNCTION_TIMER value into EPIPHANY_FUNCTION_TIMER0
        and EPIPHANY_FUNCTION_TIMER1.
        Remove EPIPHANY_FUNCTION_ILINK1 and EPIPHANY_FUNCTION_ILINK2 values.
        Add EPIPHANY_FUNCTION_PAGE_MISS and EPIPHANY_FUNCTION_MESSAGE values.
        Rename EPIPHANY_FUNCTION_STATIC_FLAG to EPIPHANY_FUNCTION_WAND.
gcc/testsuite:
        * gcc.target/epiphany/interrupt.c: Add dg-options "-g".
        Add a scan-assembler-time clause to test for the interupt vector jump.
        (f): Rename to ...
        (dma0_handler): ... this.

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

9 years ago * config/epiphany/epiphany.h (EPIPHANY_RETURN_REGNO): New macro,
amylaar [Sat, 10 Dec 2011 09:54:00 +0000 (09:54 +0000)]
    * config/epiphany/epiphany.h (EPIPHANY_RETURN_REGNO): New macro,
        broken out of ..
        (INCOMING_RETURN_ADDR_RTX) .. this.  Use EPIPHANY_RETURN_REGNO.
        (DWARF_FRAME_RETURN_COLUMN): New macro.

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

9 years ago * config/epiphany/epiphany.h (USE_LOAD_POST_INCREMENT): Define.
amylaar [Sat, 10 Dec 2011 09:40:02 +0000 (09:40 +0000)]
    * config/epiphany/epiphany.h (USE_LOAD_POST_INCREMENT): Define.
        (USE_LOAD_POST_DECREMENT, USE_STORE_POST_INCREMENT): Likewise.
        (USE_STORE_POST_DECREMENT): Likewise.

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

9 years ago PR gcov-profile/51449
nathan [Sat, 10 Dec 2011 08:32:34 +0000 (08:32 +0000)]
PR gcov-profile/51449
* coverage.c (coverage_end_function): Always process the coverage
variables.

testsuite/
* g++.dg/gcov/gcov-14.C: New.

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

9 years agoDaily bump.
gccadmin [Sat, 10 Dec 2011 00:19:08 +0000 (00:19 +0000)]
Daily bump.

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

9 years ago PR/51291
aldyh [Fri, 9 Dec 2011 22:05:26 +0000 (22:05 +0000)]
    PR/51291
        * tree.c (build_common_builtin_nodes): Do not use TM_PURE
        attribute unless language has support for TM.
        * config/i386/i386.c (ix86_init_tm_builtins): Exit gracefully in
        the absence of TM builtins.

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

9 years ago * gimple-fold.c (gimple_fold_stmt_to_constant_1) <GIMPLE_UNARY_RHS>:
ebotcazou [Fri, 9 Dec 2011 21:11:21 +0000 (21:11 +0000)]
* gimple-fold.c (gimple_fold_stmt_to_constant_1) <GIMPLE_UNARY_RHS>:
Also check the TYPE_MODE to recognize useless pointer conversions.

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

9 years ago PR tree-optimization/51117
jakub [Fri, 9 Dec 2011 20:50:40 +0000 (20:50 +0000)]
PR tree-optimization/51117
* tree-eh.c (optimize_clobbers): Don't remove just one
clobber, but all consecutive clobbers before RESX.
Use gimple_clobber_p predicate.

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

9 years ago PR c++/51151
jason [Fri, 9 Dec 2011 20:18:22 +0000 (20:18 +0000)]
PR c++/51151
* call.c (perform_implicit_conversion_flags): Remove earlier kludge.
* parser.c (cp_parser_omp_for_loop): Use cp_parser_omp_for_incr
in templates even if decl isn't type-dependent.

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

9 years ago2011-12-09 François Dumont <fdumont@gcc.gnu.org>
fdumont [Fri, 9 Dec 2011 20:01:04 +0000 (20:01 +0000)]
2011-12-09  François Dumont <fdumont@gcc.gnu.org>

* include/bits/hashtable.h (_Hashtable<>::emplace,
_Hashtable<>::emplace_hint): Add.
* include/debug/unordered_set (unordered_set<>::emplace,
unordered_set<>::emplace_hint, unordered_multiset<>::emplace,
unordered_multiset<>::emplace_hint): Add.
* include/profile/unordered_set: Likewise.
* include/debug/unordered_map (unordered_map<>::emplace,
unordered_map<>::emplace_hint, unordered_multimap<>::emplace,
unordered_multimap<>::emplace_hint): Add.
* include/profile/unordered_map: Likewise.
* testsuite/23_containers/unordered_map/modifiers/emplace.cc: New.
* testsuite/23_containers/unordered_multimap/modifiers/emplace.cc:
New.
* testsuite/23_containers/unordered_set/modifiers/emplace.cc: New.
* testsuite/23_containers/unordered_multiset/modifiers/emplace.cc:
New.
* testsuite/util/testsuite_container_traits.h
(traits_base::has_emplace): Add and defined as std::true_type for
unordered containers.
* testsuite/util/exception/safety.h (emplace, emplace_hint): Add and
use them in basic_safety exception test case.
* doc/xml/manual/status_cxx2011.xml: Update unordered containers
status.

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

9 years agoPR c++/51289 - ICE with alias template for bound template template parm
dodji [Fri, 9 Dec 2011 18:12:45 +0000 (18:12 +0000)]
PR c++/51289 - ICE with alias template for bound template template parm

gcc/cp/

PR c++/51289
* cp-tree.h (TYPE_TEMPLATE_INFO): Rewrite this accessor macro to
better support aliased types.
(TYPE_ALIAS_P): Don't crash on TYPE_NAME nodes that are not
TYPE_DECL.
* pt.c (find_parameter_packs_r): Handle types aliases.
(push_template_decl_real): Check for bare parameter packs in the
underlying type of an alias template.

gcc/PR51289/gcc/testsuite/

PR c++/51289
* g++.dg/cpp0x/alias-decl-17.C: New test.

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

9 years agoFix PR51469 (attr-ifunc fails on ppc); Make #pragma GCC target ("...") change macros...
meissner [Fri, 9 Dec 2011 17:10:27 +0000 (17:10 +0000)]
Fix PR51469 (attr-ifunc fails on ppc); Make #pragma GCC target ("...") change macros on PPC

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

9 years agosyslog: Fix name of C syslog function.
ian [Fri, 9 Dec 2011 16:46:44 +0000 (16:46 +0000)]
syslog: Fix name of C syslog function.

From Rainer Orth.

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

9 years agoruntime: make print() built-in write to stderr.
ian [Fri, 9 Dec 2011 16:42:40 +0000 (16:42 +0000)]
runtime: make print() built-in write to stderr.

Fixes issue 2294.

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

9 years agoRestore errors.o dependency
hjl [Fri, 9 Dec 2011 15:59:51 +0000 (15:59 +0000)]
Restore errors.o dependency

2011-12-09  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/51479
* Makefile.in (errors.o): Restored.

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

9 years ago * gcc.dg/vect/slp-13.c: Increase array size, add initialization.
kyukhin [Fri, 9 Dec 2011 15:21:08 +0000 (15:21 +0000)]
* gcc.dg/vect/slp-13.c: Increase array size, add initialization.
* gcc.dg/vect/slp-24.c: Ditto.
* gcc.dg/vect/slp-3.c: Likewise and fix scans.
* gcc.dg/vect/slp-34.c: Ditto.
* gcc.dg/vect/slp-4.c: Ditto.
* gcc.dg/vect/slp-cond-2.c: Ditto.
* gcc.dg/vect/slp-multitypes-11.c: Ditto.
* gcc.dg/vect/vect-1.c: Ditto.
* gcc.dg/vect/vect-10.c: Ditto.
* gcc.dg/vect/vect-105.c: Ditto.
* gcc.dg/vect/vect-112.c: Ditto.
* gcc.dg/vect/vect-15.c: Ditto.
* gcc.dg/vect/vect-2.c: Ditto.
* gcc.dg/vect/vect-31.c: Ditto.
* gcc.dg/vect/vect-32.c: Ditto.
* gcc.dg/vect/vect-33.c: Ditto.
* gcc.dg/vect/vect-34.c: Ditto.
* gcc.dg/vect/vect-35.c: Ditto.
* gcc.dg/vect/vect-36.c: Ditto.
* gcc.dg/vect/vect-6.c: Ditto.
* gcc.dg/vect/vect-73.c: Ditto.
* gcc.dg/vect/vect-74.c: Ditto.
* gcc.dg/vect/vect-75.c: Ditto.
* gcc.dg/vect/vect-76.c: Ditto.
* gcc.dg/vect/vect-80.c: Ditto.
* gcc.dg/vect/vect-85.c: Ditto.
* gcc.dg/vect/vect-89.c: Ditto.
* gcc.dg/vect/vect-97.c: Ditto.
* gcc.dg/vect/vect-98.c: Ditto.
* gcc.dg/vect/vect-all.c: Ditto.
* gcc.dg/vect/vect-double-reduc-6.c: Ditto.
* gcc.dg/vect/vect-iv-8.c: Ditto.
* gcc.dg/vect/vect-iv-8a.c: Ditto.
* gcc.dg/vect/vect-outer-1.c: Ditto.
* gcc.dg/vect/vect-outer-1a.c: Ditto.
* gcc.dg/vect/vect-outer-1b.c: Ditto.
* gcc.dg/vect/vect-outer-2.c: Ditto.
* gcc.dg/vect/vect-outer-2a.c: Ditto.
* gcc.dg/vect/vect-outer-2c.c: Ditto.
* gcc.dg/vect/vect-outer-3.c: Ditto.
* gcc.dg/vect/vect-outer-3a.c: Ditto.
* gcc.dg/vect/vect-outer-4a.c: Ditto.
* gcc.dg/vect/vect-outer-4b.c: Ditto.
* gcc.dg/vect/vect-outer-4c.c: Ditto.
* gcc.dg/vect/vect-outer-4d.c: Ditto.
* gcc.dg/vect/vect-outer-4m.c: Ditto.
* gcc.dg/vect/vect-outer-fir-lb.c: Ditto.
* gcc.dg/vect/vect-outer-fir.c: Ditto.
* gcc.dg/vect/vect-over-widen-1.c: Ditto.
* gcc.dg/vect/vect-over-widen-2.c: Ditto.
* gcc.dg/vect/vect-over-widen-3.c: Ditto.
* gcc.dg/vect/vect-over-widen-4.c: Ditto.
* gcc.dg/vect/vect-reduc-1char.c: Ditto.
* gcc.dg/vect/vect-reduc-2char.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/vect-shift-2.c: Ditto.
* gcc.dg/vect/vect-strided-a-u8-i8-gap2.c: Ditto.
* gcc.dg/vect/vect-strided-a-u8-i8-gap7.c: Ditto.
* gcc.dg/vect/vect-strided-u8-i8-gap2.c: Ditto.
* gcc.dg/vect/vect-strided-u8-i8-gap4.c: Ditto.
* gcc.dg/vect/vect-strided-u8-i8-gap7.c: Ditto.

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

9 years ago * dse.c (get_stored_val, get_call_args): Use gen_int_mode.
amylaar [Fri, 9 Dec 2011 14:10:02 +0000 (14:10 +0000)]
    * dse.c (get_stored_val, get_call_args): Use gen_int_mode.
        * expmed.c (expand_divmod): Likewise.
        * combine.c (simplify_if_then_else): Likewise.

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

9 years ago2011-12-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Dec 2011 13:49:22 +0000 (13:49 +0000)]
2011-12-09  Richard Guenther  <rguenther@suse.de>

PR lto/48042
* tree.c (free_lang_data_in_decl): Remove freeing conditional
on debuginfo level.

* g++.dg/lto/pr48042_0.C: New testcase.

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

9 years ago PR middle-end/40154
amylaar [Fri, 9 Dec 2011 12:57:24 +0000 (12:57 +0000)]
    PR middle-end/40154
        * emit-rtl.c (set_dst_reg_note): New function.
        * rtl.h (set_dst_reg_note): Declare.
        * optabs.c (expand_binop, expand_absneg_bit): Use set_dst_reg_note.
        (emit_libcall_block, expand_fix): Likewise.
        * function.c (assign_parm_setup_reg, expand_function_start): Likewise.
        * expmed.c (expand_mult_const, expand_divmod): Likewise.
        * reload1.c (gen_reload): Likewise.

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

9 years ago * ira-color.c (print_hard_regs_subforest): Use
ktietz [Fri, 9 Dec 2011 12:27:20 +0000 (12:27 +0000)]
* ira-color.c (print_hard_regs_subforest): Use
HOST_WIDEST_INT_PRINT_DEC instead of %lld.
(allocno_hard_regs): Change type of cost member
to HOST_WIDEST_INT.
(add_allocno_hard_regs): Change type of argument cost
to HOST_WIDEST_INT.
* ira-conflict.c (build_conflict_bit_table): Replace use
of long-long by HOST_WIDEST_INT.

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

9 years ago PR target/49313
gjl [Fri, 9 Dec 2011 12:02:06 +0000 (12:02 +0000)]
PR target/49313
* config/avr/t-avr (LIB1ASMFUNCS): Add _muldi3.
* config/avr/lib1funcs.S (__muldi3): New function.

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

9 years ago PR target/51425
gjl [Fri, 9 Dec 2011 11:54:29 +0000 (11:54 +0000)]
PR target/51425
* config/avr/avr.md (config/avr/avr.md, *sbix_branch_tmp): Use
zero_extract:QIHI instead of zero_extract:HI.

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

9 years ago PR tree-optimization/51117
jakub [Fri, 9 Dec 2011 11:48:30 +0000 (11:48 +0000)]
PR tree-optimization/51117
* tree-eh.c (optimize_clobbers): New function.
(execute_lower_eh_dispatch): Call it.

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

9 years ago2011-12-09 Richard Guenther <rguenther@suse.de>
rguenth [Fri, 9 Dec 2011 11:22:59 +0000 (11:22 +0000)]
2011-12-09  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/51482
* tree-vect-stmts.c (get_vectype_for_scalar_type_and_size):
Make sure to only create REAL_TYPE and INTEGER_TYPE component
vectors.

* g++.dg/torture/pr51482.C: New testcase.

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

9 years ago * implicit-zee.c (num_realized): Change type to long.
ktietz [Fri, 9 Dec 2011 10:19:43 +0000 (10:19 +0000)]
* implicit-zee.c (num_realized): Change type to long.
(num_ze_opportunities): Likewise.

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

9 years agocompiler: Another correction to hidden fields in composite literals.
ian [Fri, 9 Dec 2011 05:04:12 +0000 (05:04 +0000)]
compiler: Another correction to hidden fields in composite literals.

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

9 years ago2011-12-08 Andrew Pinski <apinski@cavium.com>
pinskia [Fri, 9 Dec 2011 03:56:36 +0000 (03:56 +0000)]
2011-12-08  Andrew Pinski  <apinski@cavium.com>

* config/mips/mips-cpus.def (octeon+): New CPU.
* config/mips/mips-tables.opt: Regenerate.
* config/mips/mips.h (MIPS_CPP_SET_PROCESSOR): Emit '+' as 'P'.

2011-12-08  Andrew Pinski  <apinski@cavium.com>

* cc.target/mips/mult-1.c: Forbid all Octeon processors.
* gcc.target/mips/dmult-1.c: Likewise.
* gcc.target/mips/branch-1.c: Likewise.
* gcc.target/mips/extend-1.c: Likewise.

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

9 years ago PR libgomp/51376
amodra [Fri, 9 Dec 2011 02:21:43 +0000 (02:21 +0000)]
PR libgomp/51376
* task.c (GOMP_taskwait): Don't access task->children outside of
task_lock mutex region.
(GOMP_task): Likewise.

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

9 years agoDaily bump.
gccadmin [Fri, 9 Dec 2011 00:18:44 +0000 (00:18 +0000)]
Daily bump.

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

9 years agocompiler: It's OK to assign a struct with hidden fields in a literal.
ian [Fri, 9 Dec 2011 00:16:19 +0000 (00:16 +0000)]
compiler: It's OK to assign a struct with hidden fields in a literal.

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

9 years agocompiler: Don't check for hidden fields on struct assignments.
ian [Thu, 8 Dec 2011 23:27:33 +0000 (23:27 +0000)]
compiler: Don't check for hidden fields on struct assignments.

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

9 years ago PR c++/51318
jason [Thu, 8 Dec 2011 22:28:38 +0000 (22:28 +0000)]
PR c++/51318
* typeck.c (build_x_conditional_expr): Restrict glvalue games to C++11.

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

9 years ago PR c++/51459
jason [Thu, 8 Dec 2011 22:28:29 +0000 (22:28 +0000)]
PR c++/51459
* pt.c (tsubst_expr) [DECL_EXPR]: Handle capture proxies properly.
* semantics.c (insert_capture_proxy): No longer static.
* cp-tree.h: Declare it.

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

9 years ago2011-12-08 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Thu, 8 Dec 2011 22:00:38 +0000 (22:00 +0000)]
2011-12-08  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

PR middle-end/39976
* tree-ssa-dom.c (enum expr_kind): Add EXPR_PHI.
(struct hashable_expr): Add struct phi field.
(initialize_hash_element): Handle phis; change to use XCNEWVEC.
(hashable_expr_equal_p): Handle phis.
(iterative_hash_hashable_expr): Likewise.
(print_expr_hash_elt): Likewise.
(free_expr_hash_elt): Likewise.
(dom_opt_enter_block): Create equivalences from redundant phis.
(eliminate_redundant_computations): Handle redundant phis.
(lookup_avail_expr): Handle phis.

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

9 years ago PR tree-optimization/51466
jakub [Thu, 8 Dec 2011 19:49:02 +0000 (19:49 +0000)]
PR tree-optimization/51466
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Also copy
TREE_SIDE_EFFECTS.

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

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

9 years ago2011-12-08 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 8 Dec 2011 19:00:55 +0000 (19:00 +0000)]
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/50815
        * trans-decl.c (add_argument_checking): Skip bound checking
        for deferred-length strings.

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

        PR fortran/50815
        * gfortran.dg/bounds_check_16.f90: New.

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

9 years ago2011-12-08 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 8 Dec 2011 18:56:58 +0000 (18:56 +0000)]
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51378
        * symbol.c (gfc_find_component): Fix access check of parent
        components.

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

        PR fortran/51378
        * gfortran.dg/private_type_14.f90: New.

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

9 years ago2011-12-08 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 8 Dec 2011 18:54:27 +0000 (18:54 +0000)]
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51407
        * io/transfer.c (require_numeric_type): New function.
        (formatted_transfer_scalar_read, formatted_transfer_scalar_write):
        Use it, allow BOZ edit descriptors with F2008.

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

        PR fortran/51407
        * gfortran.dg/io_real_boz_3.f90: New.
        * gfortran.dg/io_real_boz_4.f90: New.
        * gfortran.dg/io_real_boz_5.f90: New.

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

9 years ago2011-12-08 Tobias Burnus <burnus@net-b.de>
burnus [Thu, 8 Dec 2011 18:51:28 +0000 (18:51 +0000)]
2011-12-08  Tobias Burnus  <burnus@net-b.de>

        PR fortran/51448
        * fortran/trans-array.c (get_std_lbound): Fix handling of
        conversion functions.

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

        PR fortran/51448
        * gfortran.dg/realloc_on_assign_8.f90: New.

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

9 years ago2011-12-08 Toon Moene <toon@moene.org>
toon [Thu, 8 Dec 2011 18:38:32 +0000 (18:38 +0000)]
2011-12-08  Toon Moene  <toon@moene.org>

PR fortran/51310
* invoke.texi: Itemize the cases for which
-finit-<type>=<constant> doesn't work.

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

9 years ago * gcc.target/i386/movdi-rex64.c: Remove unnecessary
tejohnson [Thu, 8 Dec 2011 17:01:21 +0000 (17:01 +0000)]
    * gcc.target/i386/movdi-rex64.c: Remove unnecessary
        unused label.

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

9 years ago * gcc.target/i386/movdi-rex64.c: Remove unnecessary
tejohnson [Thu, 8 Dec 2011 16:45:21 +0000 (16:45 +0000)]
    * gcc.target/i386/movdi-rex64.c: Remove unnecessary
        -Wwrite-strings option.

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

9 years ago * gcc.target/i386/movdi-rex64.c: New.
tejohnson [Thu, 8 Dec 2011 15:41:07 +0000 (15:41 +0000)]
    * gcc.target/i386/movdi-rex64.c: New.

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

9 years ago2011-12-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Dec 2011 15:08:16 +0000 (15:08 +0000)]
2011-12-08  Richard Guenther  <rguenther@suse.de>

* tree-ssa-operands.c (add_stmt_operand): Do not mark stmts
volatile when processing operands of an ADDR_EXPR.
(get_indirect_ref_operands): Likewise.
(get_tmr_operands): Likewise.
(get_expr_operands): Likewise.

* gcc.dg/volatile3.c: New testcase.

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

9 years ago2011-12-08 Andreas Krebbel <Andreas.Krebbel@de.ibm.com>
krebbel [Thu, 8 Dec 2011 14:37:19 +0000 (14:37 +0000)]
2011-12-08  Andreas Krebbel  <Andreas.Krebbel@de.ibm.com>

PR target/50395
* config/s390/s390.c (s390_mainpool_finish): Emit the jump over
the literal pool as jump insn.

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

9 years ago * gcc.c-torture/execute/20111208-1.c (int16_t): Use __INT16_TYPE__
gjl [Thu, 8 Dec 2011 13:57:43 +0000 (13:57 +0000)]
* gcc.c-torture/execute/20111208-1.c (int16_t): Use __INT16_TYPE__
for typedef.
(int32_t): Use __INT32_TYPE__ for typedef.
PR tree-optimization/51315

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

9 years ago2011-12-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Dec 2011 13:23:54 +0000 (13:23 +0000)]
2011-12-08  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/49772
* tree-inline.c (optimize_inline_calls): Remove bail out
on errors.

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

9 years ago PR tree-optimization/51315
gjl [Thu, 8 Dec 2011 12:38:35 +0000 (12:38 +0000)]
PR tree-optimization/51315
* gcc.c-torture/execute/20111208-1.c: Fix wrong assumption
sizeof(int)==4.

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

9 years ago2011-12-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Dec 2011 12:32:19 +0000 (12:32 +0000)]
2011-12-08  Richard Guenther  <rguenther@suse.de>

PR lto/50747
* lto-streamer-out.c (produce_symtab): Remove asserts.

* g++.dg/opt/pr50747-1_0.C: New testcase.
* g++.dg/opt/pr50747-2_0.C: Likewise.

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

9 years ago2011-12-08 Richard Guenther <rguenther@suse.de>
rguenth [Thu, 8 Dec 2011 11:43:12 +0000 (11:43 +0000)]
2011-12-08  Richard Guenther  <rguenther@suse.de>

PR lto/49945
* lto-streamer-out.c (tree_is_indexable): Localize variably
modified types and their FIELD_DECLs.

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

9 years ago * include/bits/atomic_base.h (__calculate_memory_order): Rename to...
redi [Thu, 8 Dec 2011 09:44:57 +0000 (09:44 +0000)]
* include/bits/atomic_base.h (__calculate_memory_order): Rename to...
(__cmpexch_failure_order): This, and rewrite as constexpr function.
(compare_exchange_strong, compare_exchange_weak): Use it.
* include/std/atomic (compare_exchange_strong, compare_exchange_weak):
Likewise.

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

9 years ago PR tree-optimization/51315
ebotcazou [Thu, 8 Dec 2011 09:05:38 +0000 (09:05 +0000)]
PR tree-optimization/51315
* tree.h (get_object_or_type_alignment): Declare.
* expr.c (get_object_or_type_alignment): Move to...
* builtins.c (get_object_or_type_alignment): ...here.  Add assertion.
* tree-sra.c (tree_non_mode_aligned_mem_p): Rename to...
(tree_non_aligned_mem_p): ...this.  Add ALIGN parameter.  Look into
MEM_REFs and use get_object_or_type_alignment for them.
(build_accesses_from_assign): Adjust for above change.
(access_precludes_ipa_sra_p): Likewise.

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