gcc.git
12 years agoia64.c (ia64_promote_function_mode): Remove.
Tristan Gingold [Thu, 22 Dec 2011 16:40:11 +0000 (16:40 +0000)]
ia64.c (ia64_promote_function_mode): Remove.

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

* config/ia64/ia64.c (ia64_promote_function_mode): Remove.
(TARGET_PROMOTE_FUNCTION_MODE): Remove.
(ia64_function_value): Call promote_function_mode instead of
ia64_promote_function_mode.
* config/ia64/vms.h (PROMOTE_MODE): Define.
(TARGET_PROMOTE_FUNCTION_MODE): Define.

From-SVN: r182627

12 years agore PR rtl-optimization/27468 (sign-extending Alpha instructions not exploited)
Uros Bizjak [Thu, 22 Dec 2011 16:35:16 +0000 (17:35 +0100)]
re PR rtl-optimization/27468 (sign-extending Alpha instructions not exploited)

PR target/27468
* common/config/alpha/alpha-common.c (alpha_option_optimization_table):
Enable flag_ree at -O2 or higher.

From-SVN: r182626

12 years agore PR debug/51650 (LTO ICE in dwarf2out_finish, at dwarf2out.c:22501 while building...
Richard Guenther [Thu, 22 Dec 2011 15:28:24 +0000 (15:28 +0000)]
re PR debug/51650 (LTO ICE in dwarf2out_finish, at dwarf2out.c:22501 while building libxul)

2011-12-22  Richard Guenther  <rguenther@suse.de>

PR lto/51650
* lto.c (uniquify_nodes): Register TYPE_DECLs with the
debuginfo machinery.

* g++.dg/lto/pr51650-1_0.C: New testcase.
* g++.dg/lto/pr51650-2_0.C: Likewise.

From-SVN: r182625

12 years agotree-pass.h (pass_reload): Declare.
Bernd Schmidt [Thu, 22 Dec 2011 15:01:25 +0000 (15:01 +0000)]
tree-pass.h (pass_reload): Declare.

* tree-pass.h (pass_reload): Declare.
* ira.c (overall_cost_before, saved_flag_ira_share_spill_slots):
New global variables, moved out of ira.
(do_reload): New static function, split off from the second half
of ...
(ira): ... here.
(gate_ira): Remove.
(pass_ira): Use TV_IRA, set gate to NULL, and set flags to
TODO_dump_func.
(rest_of_handle_reload): New static function.
(pass_reload): New.

From-SVN: r182624

12 years agoi386-common.c (ix86_option_optimization_table): Move OPT_free processing from ...
Uros Bizjak [Thu, 22 Dec 2011 14:39:35 +0000 (15:39 +0100)]
i386-common.c (ix86_option_optimization_table): Move OPT_free processing from ...

* common/config/i386/i386-common.c (ix86_option_optimization_table):
Move OPT_free processing from ...
* config/i386/i386.c (ix86_option_override_internal):  ... here.

From-SVN: r182623

12 years agore PR target/51643 (Incorrect code produced for tail-call of weak function with ...
Richard Earnshaw [Thu, 22 Dec 2011 14:13:09 +0000 (14:13 +0000)]
re PR target/51643 (Incorrect code produced for tail-call of weak function with -O2/-O3 option)

PR target/51643
* arm.c (arm_function_ok_for_sibcall): Don't try to tailcall a
weak function on bare-metal EABI targets.

* gcc.target/arm/sibcall-2.c: New test.

From-SVN: r182621

12 years agore PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)
Jonathan Wakely [Thu, 22 Dec 2011 12:33:15 +0000 (12:33 +0000)]
re PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)

PR libstdc++/48362
* python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle empty
tuples.

From-SVN: r182620

12 years ago[multiple changes]
Arnaud Charlet [Thu, 22 Dec 2011 11:52:00 +0000 (12:52 +0100)]
[multiple changes]

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

* exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Create the objects
associated with exception handling unconditionally.
(Build_Adjust_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Components): Create the objects associated with exception
handling unconditionally.
(Build_Finalize_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Initialize_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Object_Declarations): Set the proper location of the data
record when exception propagation is forbidden.

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

* a-tienio.adb (Put): Test validity of Item parameters before
applying Image, and raise Constraint_Error for invalid values.

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

* a-stwima.ads (Initialize,Adjust,Finalize): Add overriding indicators.
* a-ststio.ads (AFCB_Allocate,AFCB_Close,AFCB_Free,Read,Write): Add
overriding indicators.

From-SVN: r182619

12 years ago* s-osinte-hpux-dce.ads: Update header to GPLv3
Arnaud Charlet [Thu, 22 Dec 2011 11:48:21 +0000 (11:48 +0000)]
* s-osinte-hpux-dce.ads: Update header to GPLv3

From-SVN: r182618

12 years agoa-cohase.ads, [...]: Update to latest RM version.
Ed Schonberg [Thu, 22 Dec 2011 08:54:26 +0000 (08:54 +0000)]
a-cohase.ads, [...]: Update to latest RM version.

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

* a-cohase.ads, a-cohase.adb: Update to latest RM version. Add
aspect Constant_Reference to set type, and corresponding
functions.
* a-cihama.ads, a-cihama.adb: Update to latest RM version. Add
function Reference to provide a proper element iterator construct
over indefinite maps.

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

* exp_attr.adb (Expand_N_Attribute, case 'Access): Do not insert
implicit conversion on prefix of Unrestricted_Access when prefix
is an explicit dereference.

From-SVN: r182617

12 years ago[multiple changes]
Arnaud Charlet [Thu, 22 Dec 2011 08:49:14 +0000 (09:49 +0100)]
[multiple changes]

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

* sem_dim.adb: Addressed all ??? comments. Replacement of warnings by
errors using continuation marks.
(Error_Dim_Msg_For_?): Renaming of Error_Dim_For_?.

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

* sem_ch3.adb, sem_ch3.ads, sem_prag.adb: Minor code clean up.

From-SVN: r182616

12 years agore PR testsuite/51645 (FAIL: g++.dg/cpp0x/alias-decl-debug-0.C (test for excess errors))
Uros Bizjak [Thu, 22 Dec 2011 08:16:12 +0000 (09:16 +0100)]
re PR testsuite/51645 (FAIL: g++.dg/cpp0x/alias-decl-debug-0.C (test for excess errors))

PR testsuite/51645
* g++.dg/cpp0x/alias-decl-debug-0.C: Add dg-skip-if.

From-SVN: r182615

12 years agoDaily bump.
GCC Administrator [Thu, 22 Dec 2011 00:19:15 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r182613

12 years ago* config/i386/morestack.S: Simplify CFI opcodes throughout.
Ian Lance Taylor [Thu, 22 Dec 2011 00:09:39 +0000 (00:09 +0000)]
* config/i386/morestack.S: Simplify CFI opcodes throughout.

From-SVN: r182609

12 years agoextend.texi (__builtin_expect): Improve example.
Jonathan Wakely [Thu, 22 Dec 2011 00:08:09 +0000 (00:08 +0000)]
extend.texi (__builtin_expect): Improve example.

2011-12-21  Jonathan Wakely  <jwakely.gcc@gmail.com>
    Jim Avera  <james_avera@yahoo.com>

* doc/extend.texi (__builtin_expect): Improve example.

Co-Authored-By: Jim Avera <james_avera@yahoo.com>
From-SVN: r182608

12 years agoruntime: Catch signals on altstack, disable splitstack signal blocking.
Ian Lance Taylor [Wed, 21 Dec 2011 22:24:47 +0000 (22:24 +0000)]
runtime: Catch signals on altstack, disable splitstack signal blocking.

From-SVN: r182607

12 years agoi386.c (ix86_option_override_internal): Enable flag_ree also for 32bit targets.
Uros Bizjak [Wed, 21 Dec 2011 20:56:30 +0000 (21:56 +0100)]
i386.c (ix86_option_override_internal): Enable flag_ree also for 32bit targets.

* config/i386/i386.c (ix86_option_override_internal): Enable flag_ree
also for 32bit targets.

testsuite/ChangeLog:

* gcc.dg/pr50038.c: Move to ...
* gcc.target/i386/pr50038.c: ... here.  Test on all targets.

From-SVN: r182605

12 years agore PR target/51552 (bfin generates bad assembly)
Richard Henderson [Wed, 21 Dec 2011 20:21:00 +0000 (12:21 -0800)]
re PR target/51552 (bfin generates bad assembly)

PR target/51552
        * dwarf2cfi.c (dwarf2out_frame_debug): Move any_cfis_emitted code...
        (scan_trace): ... here.

From-SVN: r182604

12 years agore PR c++/51611 ([c++0x] ICE with non-static data member initializer and virtual...
Jason Merrill [Wed, 21 Dec 2011 19:19:47 +0000 (14:19 -0500)]
re PR c++/51611 ([c++0x] ICE with non-static data member initializer and virtual base class)

PR c++/51611
* cp-tree.h (CONVERT_EXPR_VBASE_PATH): New.
* class.c (build_base_path): Defer vbase conversion in an NSDMI.
* tree.c (bot_replace): Expand it here.
* cp-gimplify.c (cp_genericize_r): Make sure deferred conversion
doesn't leak into GENERIC.

From-SVN: r182602

12 years ago* doc/standards.texi (C++ language): Update for C++11.
Jason Merrill [Wed, 21 Dec 2011 17:53:58 +0000 (12:53 -0500)]
* doc/standards.texi (C++ language): Update for C++11.

From-SVN: r182599

12 years agoAdd reference to PR middle-end/48660
Richard Sandiford [Wed, 21 Dec 2011 16:34:41 +0000 (16:34 +0000)]
Add reference to PR middle-end/48660

From-SVN: r182595

12 years agore PR c++/51305 ([C++11][constexpr] noexcept-specifier overconstraints constexpr...
Paolo Carlini [Wed, 21 Dec 2011 16:28:08 +0000 (16:28 +0000)]
re PR c++/51305 ([C++11][constexpr] noexcept-specifier overconstraints constexpr functions)

/cp
2011-12-21  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/51305
* semantics.c (massage_constexpr_body): Reorder conditionals, make
sure a BIND_EXPR embedded in a MUST_NOT_THROW_EXPR is handled.

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

PR c++/51305
* g++.dg/cpp0x/constexpr-noexcept6.C: New.

From-SVN: r182594

12 years agoMakefile.am (AM_CXXFLAGS): Put $(XCFLAGS) first.
Jakub Jelinek [Wed, 21 Dec 2011 16:14:11 +0000 (17:14 +0100)]
Makefile.am (AM_CXXFLAGS): Put $(XCFLAGS) first.

* Makefile.am (AM_CXXFLAGS): Put $(XCFLAGS) first.
* Makefile.in: Regenerated.

From-SVN: r182593

12 years agoProvide CLOCK_REALTIME on Tru64 UNIX
Rainer Orth [Wed, 21 Dec 2011 16:08:19 +0000 (16:08 +0000)]
Provide CLOCK_REALTIME on Tru64 UNIX

* s-oscons-tmplt.c [__alpha__ && __osf__] (_XOPEN_SOURCE): Define.

From-SVN: r182592

12 years agolto.c (GIMPLE_REGISTER_TYPE): New define.
Richard Guenther [Wed, 21 Dec 2011 15:56:11 +0000 (15:56 +0000)]
lto.c (GIMPLE_REGISTER_TYPE): New define.

2011-12-21  Richard Guenther  <rguenther@suse.de>

lto/
* lto.c (GIMPLE_REGISTER_TYPE): New define.
(LTO_FIXUP_TREE): Use it.
(uniquify_nodes): Mark new non-prevailing types and avoid
calling gimple_register_type on others.
(lto_read_decls): Add comment.

From-SVN: r182591

12 years agotree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize *op0 and *op1...
Jakub Jelinek [Wed, 21 Dec 2011 14:52:34 +0000 (15:52 +0100)]
tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize *op0 and *op1 to NULL_TREE first to avoid warnings.

* tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize
*op0 and *op1 to NULL_TREE first to avoid warnings.
* calls.c (initialize_argument_information): Initialize base to avoid
warnings.

From-SVN: r182590

12 years agore PR middle-end/51644 (va_list vs. warning: ‘noreturn’ function does return is not...
Jakub Jelinek [Wed, 21 Dec 2011 14:51:19 +0000 (15:51 +0100)]
re PR middle-end/51644 (va_list vs. warning: ‘noreturn’ function does return is not fixable)

PR middle-end/51644
PR middle-end/51647
* tree-eh.c (decide_copy_try_finally): At -O0, return true
even when ndests is not 1, if there are only gimple_clobber_p
(or debug) stmts in the finally sequence.
* tree-inline.c (estimate_num_insns): Return 0 for gimple_clobber_p
stmts.

* gcc.dg/pr51644.c: New test.
* g++.dg/warn/Wreturn-4.C: New test.

From-SVN: r182589

12 years agore PR middle-end/51472 (ICE: verify_gimple failed: invalid rhs for gimple memory...
Aldy Hernandez [Wed, 21 Dec 2011 14:30:07 +0000 (14:30 +0000)]
re PR middle-end/51472 (ICE: verify_gimple failed: invalid rhs for gimple memory store with -fgnu-tm --param tm-max-aggregate-size=32)

        PR middle-end/51472
        * trans-mem.c (tm_log_add): Use create_tmp_var_reg.

From-SVN: r182588

12 years agosem_ch3.ads, [...] (Check_CPP_Type): New subprogram.
Javier Miranda [Wed, 21 Dec 2011 13:54:55 +0000 (13:54 +0000)]
sem_ch3.ads, [...] (Check_CPP_Type): New subprogram.

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.

From-SVN: r182587

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 13:51:03 +0000 (14:51 +0100)]
[multiple changes]

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.

From-SVN: r182586

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 13:45:42 +0000 (14:45 +0100)]
[multiple changes]

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.

From-SVN: r182585

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 13:42:22 +0000 (14:42 +0100)]
[multiple changes]

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.

From-SVN: r182584

12 years agono-section-anchors-vect-31.c: Adjust array size and test diag-scans to fix fail on...
Michael Zolotukhin [Wed, 21 Dec 2011 13:34:40 +0000 (13:34 +0000)]
no-section-anchors-vect-31.c: Adjust array size and test diag-scans to fix fail on AVX.

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.

From-SVN: r182583

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 13:34:12 +0000 (14:34 +0100)]
[multiple changes]

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.

From-SVN: r182582

12 years agotree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.
Martin Jambor [Wed, 21 Dec 2011 12:44:31 +0000 (13:44 +0100)]
tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.

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.

From-SVN: r182581

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 12:08:32 +0000 (13:08 +0100)]
[multiple changes]

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.

From-SVN: r182578

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 12:03:53 +0000 (13:03 +0100)]
[multiple changes]

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

From-SVN: r182577

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 12:01:28 +0000 (13:01 +0100)]
[multiple changes]

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.

From-SVN: r182576

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 11:53:33 +0000 (12:53 +0100)]
[multiple changes]

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.

From-SVN: r182575

12 years agore PR target/50038 (redundant zero extensions)
Enkovich Ilya [Wed, 21 Dec 2011 11:52:27 +0000 (11:52 +0000)]
re PR target/50038 (redundant zero extensions)

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

From-SVN: r182574

12 years ago[multiple changes]
Arnaud Charlet [Wed, 21 Dec 2011 11:50:02 +0000 (12:50 +0100)]
[multiple changes]

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.

From-SVN: r182573

12 years agovms-protos.h (vms_function_section): New prototype.
Tristan Gingold [Wed, 21 Dec 2011 09:44:27 +0000 (09:44 +0000)]
vms-protos.h (vms_function_section): New prototype.

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.

From-SVN: r182571

12 years agore PR lto/41159 ([LTO] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:225)
Richard Guenther [Wed, 21 Dec 2011 09:22:58 +0000 (09:22 +0000)]
re PR lto/41159 ([LTO] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:225)

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.

From-SVN: r182570

12 years agofde-vms.c (UNW_IVMS_MODE): Define.
Tristan Gingold [Wed, 21 Dec 2011 08:52:47 +0000 (08:52 +0000)]
fde-vms.c (UNW_IVMS_MODE): Define.

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

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

From-SVN: r182568

12 years agoxm-vms.h (STANDARD_EXEC_PREFIX): Remove define.
Tristan Gingold [Wed, 21 Dec 2011 08:42:12 +0000 (08:42 +0000)]
xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.

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

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

From-SVN: r182567

12 years agoia64: Implement vec_perm_const.
Richard Henderson [Wed, 21 Dec 2011 01:03:00 +0000 (17:03 -0800)]
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.

From-SVN: r182564

12 years agoAlways simplify vector shifts by scalars.
Richard Henderson [Wed, 21 Dec 2011 00:41:24 +0000 (16:41 -0800)]
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.

From-SVN: r182563

12 years agoarm: Split xorsi with constant after reload.
Richard Henderson [Wed, 21 Dec 2011 00:35:41 +0000 (16:35 -0800)]
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.

From-SVN: r182562

12 years agoarm: Use arm_cmpdi_unsigned for thumb2 as well
Richard Henderson [Wed, 21 Dec 2011 00:34:09 +0000 (16:34 -0800)]
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.

From-SVN: r182561

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

From-SVN: r182560

12 years agore PR c++/51621 ([c++0x] [4.6/4.7 Regression] ICE with invalid constexpr and array...
Paolo Carlini [Tue, 20 Dec 2011 23:51:09 +0000 (23:51 +0000)]
re PR c++/51621 ([c++0x] [4.6/4.7 Regression] ICE with invalid constexpr and array class member)

/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.

From-SVN: r182556

12 years agomorestack.S (__morestack_non_split): If there is enough stack space already, don...
Ian Lance Taylor [Tue, 20 Dec 2011 22:34:30 +0000 (22:34 +0000)]
morestack.S (__morestack_non_split): If there is enough stack space already, don't split.

* 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.

From-SVN: r182555

12 years agotree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict handling of signedness...
Richard Sandiford [Tue, 20 Dec 2011 21:33:48 +0000 (21:33 +0000)]
tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict handling of signedness differences to integer types.

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.

From-SVN: r182554

12 years agore PR target/49865 (Unnecessary reload causes small bloat)
Vladimir Makarov [Tue, 20 Dec 2011 21:29:36 +0000 (21:29 +0000)]
re PR target/49865 (Unnecessary reload causes small bloat)

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.

From-SVN: r182553

12 years agounwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and `sys/sdt.h'.
Sergio Durigan Junior [Tue, 20 Dec 2011 20:54:25 +0000 (20:54 +0000)]
unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and `sys/sdt.h'.

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.

From-SVN: r182552

12 years agogcc:
Joseph Myers [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__.

From-SVN: r182551

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

From-SVN: r182550

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

From Rainer Orth.

From-SVN: r182549

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

From-SVN: r182548

12 years agowarnings.m4 (ACX_PROG_CC_WARNING_OPTS): Avoid leading dash in expr call.
Andreas Schwab [Tue, 20 Dec 2011 16:54:12 +0000 (16:54 +0000)]
warnings.m4 (ACX_PROG_CC_WARNING_OPTS): Avoid leading dash in expr call.

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.

From-SVN: r182546

12 years agoexpr.c (store_field): Avoid a direct store if the mode is larger than the size of...
Bernd Schmidt [Tue, 20 Dec 2011 16:46:22 +0000 (16:46 +0000)]
expr.c (store_field): Avoid a direct store if the mode is larger than the size of the bit field.

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.

From-SVN: r182545

12 years ago[multiple changes]
Arnaud Charlet [Tue, 20 Dec 2011 14:09:26 +0000 (15:09 +0100)]
[multiple changes]

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.

From-SVN: r182542

12 years ago[multiple changes]
Arnaud Charlet [Tue, 20 Dec 2011 14:04:19 +0000 (15:04 +0100)]
[multiple changes]

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.

From-SVN: r182540

12 years ago[multiple changes]
Arnaud Charlet [Tue, 20 Dec 2011 14:00:46 +0000 (15:00 +0100)]
[multiple changes]

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.

From-SVN: r182539

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

From-SVN: r182538

12 years agosem_ch4.adb (Operator_Check): Update the call to Is_Dimensioned_Type.
Hristian Kirtchev [Tue, 20 Dec 2011 13:55:31 +0000 (13:55 +0000)]
sem_ch4.adb (Operator_Check): Update the call to Is_Dimensioned_Type.

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

From-SVN: r182537

12 years agosem_ch13.adb (Check_Indexing_Functions): The return type of an indexing function...
Ed Schonberg [Tue, 20 Dec 2011 13:53:42 +0000 (13:53 +0000)]
sem_ch13.adb (Check_Indexing_Functions): The return type of an indexing function can be the default element type...

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.

From-SVN: r182536

12 years ago[multiple changes]
Arnaud Charlet [Tue, 20 Dec 2011 13:52:22 +0000 (14:52 +0100)]
[multiple changes]

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.

From-SVN: r182535

12 years ago[multiple changes]
Arnaud Charlet [Tue, 20 Dec 2011 13:47:44 +0000 (14:47 +0100)]
[multiple changes]

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.

From-SVN: r182534

12 years agosem_res.adb (Resolve_Allocator): Warning on allocation of tasks on a subpool and...
Hristian Kirtchev [Tue, 20 Dec 2011 13:41:00 +0000 (13:41 +0000)]
sem_res.adb (Resolve_Allocator): Warning on allocation of tasks on a subpool and rewrite the allocator into a...

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.

From-SVN: r182533

12 years agoPR debug/49951 - jumpy stepping at end of scope in C++
Dodji Seketeli [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.

From-SVN: r182532

12 years agoSupport 64-bit libjava multilib for i?86-linux
Rainer Orth [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.

From-SVN: r182528

12 years agoSupport 64-bit libgnat multilib on i?86-linux
Rainer Orth [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.

From-SVN: r182527

12 years agore PR c++/51612 ([c++0x] [4.6/4.7 Regression] ICE with constexpr constructor and...
Paolo Carlini [Tue, 20 Dec 2011 10:38:44 +0000 (10:38 +0000)]
re PR c++/51612 ([c++0x] [4.6/4.7 Regression] ICE with constexpr constructor and virtual base class)

/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.

From-SVN: r182526

12 years agore PR debug/46796 (debug info missing builtin type names with lto)
Richard Guenther [Tue, 20 Dec 2011 09:49:17 +0000 (09:49 +0000)]
re PR debug/46796 (debug info missing builtin type names with lto)

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__.

From-SVN: r182524

12 years agore PR libstdc++/51365 (cannot use final empty class in std::tuple)
Jonathan Wakely [Tue, 20 Dec 2011 09:09:50 +0000 (09:09 +0000)]
re PR libstdc++/51365 (cannot use final empty class in std::tuple)

PR libstdc++/51365
* include/std/tuple (_Tuple_impl): Check __is_final as well as
is_empty.
* testsuite/20_util/tuple/51365.cc: New.

From-SVN: r182523

12 years agolinux-unwind.h: Update copyright years.
Uros Bizjak [Tue, 20 Dec 2011 08:46:38 +0000 (09:46 +0100)]
linux-unwind.h: Update copyright years.

* config/alpha/linux-unwind.h: Update copyright years.
(MD_FROB_UPDATE_CONTEXT): New define.
(alpha_frob_update_context): New function.

From-SVN: r182522

12 years agoalpha.c (alpha_start_function): Adjust condition to create VMS trampoline entry point.
Tristan Gingold [Tue, 20 Dec 2011 08:35:12 +0000 (08:35 +0000)]
alpha.c (alpha_start_function): Adjust condition to create VMS trampoline entry point.

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

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

From-SVN: r182521

12 years agoaclocal.m4: Assume strncmp works in cross case.
Tristan Gingold [Tue, 20 Dec 2011 08:08:30 +0000 (08:08 +0000)]
aclocal.m4: Assume strncmp works in cross case.

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

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

From-SVN: r182520

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

From-SVN: r182516

12 years agoeh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMI...
Benjamin Kosnik [Tue, 20 Dec 2011 00:16:25 +0000 (00:16 +0000)]
eh_tm.cc (free_any_cxa_exception): Use __GCC_ATOMIC_INT_LOCK_FREE, not _GLIBCXX_ATOMIC_BUILTINS_4.

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.

From-SVN: r182512

12 years agosearch_n.cc: Disambiguate local variable.
Benjamin Kosnik [Mon, 19 Dec 2011 23:29:14 +0000 (23:29 +0000)]
search_n.cc: Disambiguate local variable.

2011-12-19  Benjamin Kosnik  <bkoz@redhat.com>

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

From-SVN: r182510

12 years agore PR c++/51328 (ICE on invalid template parameter)
Paolo Carlini [Mon, 19 Dec 2011 22:40:11 +0000 (22:40 +0000)]
re PR c++/51328 (ICE on invalid template parameter)

/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.

From-SVN: r182508

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

From-SVN: r182506

12 years agore PR c++/51530 ([C++0x] internal compiler error: in unify, at cp/pt.c:16854)
Jason Merrill [Mon, 19 Dec 2011 22:08:29 +0000 (17:08 -0500)]
re PR c++/51530 ([C++0x] internal compiler error: in unify, at cp/pt.c:16854)

PR c++/51530
* pt.c (unify): Handle NULLPTR_TYPE.

From-SVN: r182505

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

gcc/
* fwprop.c (forward_propagate_subreg): Skip the SIGN/ZERO_EXTEND
optimization if the source register is already extended.

From-SVN: r182504

12 years agomult-1.c: Require -O2.
Richard Sandiford [Mon, 19 Dec 2011 21:45:21 +0000 (21:45 +0000)]
mult-1.c: Require -O2.

gcc/testsuite/
* gcc.target/mips/mult-1.c: Require -O2.

From-SVN: r182502

12 years agoext-2.c: Add NOMIPS16.
Richard Sandiford [Mon, 19 Dec 2011 21:42:12 +0000 (21:42 +0000)]
ext-2.c: Add NOMIPS16.

gcc/testsuite/
* gcc.target/mips/ext-2.c: Add NOMIPS16.

From-SVN: r182501

12 years agolower-subreg.c (can_decompose_p): Check every word of a hard register.
Richard Sandiford [Mon, 19 Dec 2011 21:19:13 +0000 (21:19 +0000)]
lower-subreg.c (can_decompose_p): Check every word of a hard register.

gcc/
* lower-subreg.c (can_decompose_p): Check every word of a hard
register.

From-SVN: r182500

12 years agore PR c++/51526 ([C++11][constexpr] constexpr delegating constructor should be accepted)
Jason Merrill [Mon, 19 Dec 2011 21:06:44 +0000 (16:06 -0500)]
re PR c++/51526 ([C++11][constexpr] constexpr delegating constructor should be accepted)

PR c++/51526
* semantics.c (build_data_member_initialization): Handle
delegating constructor.
(build_constexpr_constructor_member_initializers): Likewise.

From-SVN: r182499

12 years agore PR rtl-optimization/50380 ([4.6 only] cc1 hangs eating 100% CPU)
Sandra Loosemore [Mon, 19 Dec 2011 20:29:21 +0000 (15:29 -0500)]
re PR rtl-optimization/50380 ([4.6 only] cc1 hangs eating 100% CPU)

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.

Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r182498

12 years agore PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran...
Tobias Burnus [Mon, 19 Dec 2011 20:18:18 +0000 (21:18 +0100)]
re PR fortran/51605 (internal compiler error gfc_trans_block_construct, at fortran/trans-stmt.c:984)

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.

From-SVN: r182497

12 years agore PR c++/51553 (brace initialization and conversion operators)
Jason Merrill [Mon, 19 Dec 2011 20:10:49 +0000 (15:10 -0500)]
re PR c++/51553 (brace initialization and conversion operators)

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.

From-SVN: r182496

12 years agore PR c++/51553 (brace initialization and conversion operators)
Jason Merrill [Mon, 19 Dec 2011 20:10:37 +0000 (15:10 -0500)]
re PR c++/51553 (brace initialization and conversion operators)

PR c++/51553
* call.c (add_function_candidate): Allow conversions for the copy
parm in list-initialization unless the argument is an init-list.

From-SVN: r182495

12 years agore PR c++/51228 (ICE with transparent union)
Jason Merrill [Mon, 19 Dec 2011 20:10:25 +0000 (15:10 -0500)]
re PR c++/51228 (ICE with transparent union)

PR c++/51228
* c-common.c (handle_transparent_union_attribute): Check the first
field if the type is complete.

From-SVN: r182494

12 years agoCommit forgotten testcase that goes along with this PR.
Aldy Hernandez [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.

From-SVN: r182493

12 years agore PR middle-end/51411 (ICE: in function_and_variable_visibility, at ipa.c:835 with...
Aldy Hernandez [Mon, 19 Dec 2011 19:31:17 +0000 (19:31 +0000)]
re PR middle-end/51411 (ICE: in function_and_variable_visibility, at ipa.c:835 with -O -fgnu-tm and overriding virtual transaction_safe function)

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

From-SVN: r182492

12 years agore PR tree-optimization/51580 (segfault during loop vectorization at -O3)
Eric Botcazou [Mon, 19 Dec 2011 19:17:10 +0000 (19:17 +0000)]
re PR tree-optimization/51580 (segfault during loop vectorization at -O3)

PR tree-optimization/51580
* gnat.dg/specs/loop_optimization1.ads: New test.
* gnat.dg/specs/loop_optimization1_pkg.ad[sb]: New helper.

From-SVN: r182491

12 years agore PR target/48743 (-march=native mis-detects AMD K6-2+ / K6-3 as Athlon - compiled...
Quentin Neill [Mon, 19 Dec 2011 17:57:32 +0000 (17:57 +0000)]
re PR target/48743 (-march=native mis-detects AMD K6-2+ / K6-3 as Athlon - compiled C fails with "illegal instruction")

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.

From-SVN: r182489

12 years agore PR lto/51573 (ICE (segfault) in lto_varpool_encoder_encode_initializer_p)
Richard Guenther [Mon, 19 Dec 2011 15:57:02 +0000 (15:57 +0000)]
re PR lto/51573 (ICE (segfault) in lto_varpool_encoder_encode_initializer_p)

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.

From-SVN: r182487