platform/upstream/gcc.git
12 years agore PR rtl-optimization/52803 (ICE: in ira, at ira.c:3616 with -fno-move-loop-invarian...
Richard Guenther [Mon, 2 Apr 2012 11:59:47 +0000 (11:59 +0000)]
re PR rtl-optimization/52803 (ICE: in ira, at ira.c:3616 with -fno-move-loop-invariants on almost any code)

2012-04-02  Richard Guenther  <rguenther@suse.de>

PR middle-end/52803
* loop-init.c (gate_handle_loop2): Destroy loops here if
we don't enter RTL loop optimizers.

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

From-SVN: r186080

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 10:51:58 +0000 (12:51 +0200)]
[multiple changes]

2012-04-02  Robert Dewar  <dewar@adacore.com>

* s-atopri.ads: Minor reformatting.

2012-04-02  Thomas Quinot  <quinot@adacore.com>

* sem_util.adb: Minor reformatting, minor code cleanup.

2012-04-02  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.adb (Generate_Reference): For a reference to an
operator symbol, set the sloc to point to the first character
of the operator name, and not to the initial quaote.
(Output_References): Ditto for the definition of an operator
symbol.

2012-04-02  Vincent Celier  <celier@adacore.com>

* ali.adb (Scan_Ali): Recognize Z lines. Set
Implicit_With_From_Instantiation to True in the With_Record for
Z lines.
* ali.ads (With_Record): New Boolean component
Implicit_With_From_Instantiation, defaulted to False.
* csinfo.adb: Indicate that Implicit_With_From_Instantiation
is special
* lib-writ.adb (Write_ALI): New array Implicit_With.
(Collect_Withs): Set Implicit_With for the unit is it is not Yes.
(Write_With_Lines): Write a Z line instead of a W line if
Implicit_With is Yes for the unit.
* sem_ch12.adb (Inherit_Context): Only add a unit in the context
if it is not there yet.
* sinfo.ads: New flag Implicit_With_From_Instantiation (Flag12)
added.

From-SVN: r186079

12 years agoPartially revert:
Uros Bizjak [Mon, 2 Apr 2012 10:04:10 +0000 (12:04 +0200)]
Partially revert:

2012-03-29  Richard Guenther  <rguenther@suse.de>

* rtl.h (extended_count): Remove.
* combine.c (extended_count): Remove.

From-SVN: r186077

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 09:47:18 +0000 (11:47 +0200)]
[multiple changes]

2012-04-02  Yannick Moy  <moy@adacore.com>

* osint.adb, osint.ads (Add_Default_Search_Dirs): Add library
search dirs in file specified with option -gnateO.

2012-04-02  Robert Dewar  <dewar@adacore.com>

* sem_ch5.adb, exp_util.adb, sem_util.adb, exp_ch4.adb: Minor
reformatting.

2012-04-02  Olivier Hainque  <hainque@adacore.com>

* g-sse.ads: Add x86-solaris and x86_64-darwin to the set of
platforms where the use of this spec is supported. Add current
year to the copyright notice.
* gcc-interfaces/Makefile.in: Add g-sse.o and g-ssvety.o to
EXTRA_GNATRTL_NONTASKING_OBJS on x86 32/64 targets that support
it and where they were missing (x86-solaris, x86-freebsd,
x86_64-freebsd, and x86-darwin).

2012-04-02  Gary Dismukes  <dismukes@adacore.com>

* bindgen.adb (Gen_Ada_Init): When compiling for the AAMP small
library, where we no longer suppress the Standard_Library,
generate an empty body rather than the usual generation of
assignments to imported globals, since those aren't present in
the small library.

2012-04-02  Ed Schonberg  <schonberg@adacore.com>

* sinfo.ads: Minor documentation fix.

2012-04-02  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_res.adb (Resolve_Conditional_Expression): Add local variables
Else_Typ and Then_Typ. Add missing type conversions to the "then" and
"else" expressions when their respective types are scalar.

2012-04-02  Vincent Pucci  <pucci@adacore.com>

* exp_ch9.adb: Reordering of the local subprograms. New Table
for the lock free implementation that maps each protected
subprograms with the protected component it references.
(Allow_Lock_Free_Implementation): New routine. Check if
the protected body enables the lock free implementation.
(Build_Lock_Free_Protected_Subprogram_Body): New routine.
(Build_Lock_Free_Unprotected_Subprogram_Body): New routine.
(Comp_Of): New routine.
* Makefile.rtl: Add s-atopri.o
* debug.adb: New compiler debug flag -gnatd9 for lock free
implementation.
* rtsfind.ads: RE_Atomic_Compare_Exchange_8,
RE_Atomic_Compare_Exchange_16, RE_Atomic_Compare_Exchange_32,
RE_Atomic_Compare_Exchange_64, RE_Atomic_Load_8,
RE_Atomic_Load_16, RE_Atomic_Load_32, RE_Atomic_Load_64, RE_Uint8,
RE_Uint16, RE_Uint32, RE_Uint64 added.
* s-atropi.ads: New file. Defines atomic primitives used
by the lock free implementation.

From-SVN: r186076

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 09:28:52 +0000 (11:28 +0200)]
[multiple changes]

2012-04-02  Emmanuel Briot  <briot@adacore.com>

* g-expect.adb (Expect_Internal): Fix leak of the input file descriptor.

2012-04-02  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Expand_N_Quantified_Expression): Reimplemented.
The expansion no longer uses the copy of the original QE created
during analysis.
* sem.adb (Analyze): Add processing for loop parameter specifications.
* sem_ch4.adb (Analyze_Quantified_Expression): Reimplemented. The
routine no longer creates a copy of the original QE. All
constituents of a QE are now preanalyzed and resolved.
* sem_ch5.adb (Analyze_Iteration_Scheme): Remove the guard which
bypasses all processing when the iteration scheme is related to a
QE. Relovate the code which analyzes loop parameter specifications
to a separate routine. (Analyze_Iterator_Specification):
Preanalyze the iterator name. This action was originally
done in Analyze_Iteration_Scheme. Update the check which
detects an iterator specification in the context of a QE.
(Analyze_Loop_Parameter_Specification): New routine. This
procedure allows for a stand-alone analysis of a loop parameter
specification without the need of a parent iteration scheme. Add
code to update the type of the loop variable when the range
generates an itype and the context is a QE.
(Pre_Analyze_Range): Renamed to Preanalyze_Range. Update all references
to the routine.
* sem_ch5.ads: Code reformatting.
(Analyze_Loop_Parameter_Specification): New routine.
* sem_ch6.adb (Fully_Conformant_Expressions): Detect a case
when establishing conformance between two QEs utilizing different
specifications.
* sem_res.adb (Proper_Current_Scope): New routine.
(Resolve): Do not resolve a QE as there is nothing to be done now.
Ignore any loop scopes generated for QEs when detecting an expression
function as the scopes are cosmetic and do not appear in the tree.
(Resolve_Quantified_Expression): Removed. All resolution of
QE constituents is now performed during analysis. This ensures
that loop variables appearing in array aggregates are properly
resolved.

2012-04-02  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (Build_Default_Subtype): If the base type is
private and its full view is available, use the full view in
the subtype declaration.

From-SVN: r186074

12 years agoComplete previous change.
Arnaud Charlet [Mon, 2 Apr 2012 09:26:25 +0000 (11:26 +0200)]
Complete previous change.

From-SVN: r186073

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 09:25:18 +0000 (11:25 +0200)]
[multiple changes]

2012-04-02  Jose Ruiz  <ruiz@adacore.com>

* gnat_ugn.texi: Add some minimal documentation about how to
use GNATtest for cross platforms.

2012-04-02  Vincent Celier  <celier@adacore.com>

* opt.ads (Object_Path_File_Name): New variable.
* prj-attr.adb: New Compiler attribute Object_Path_Switches.
* prj-nmsc.adb (Process_Compiler): Recognize new attribute
Object_Path_Switches.
* snames.ads-tmpl: New standard name Object_Path_Switches.
* switch-c.adb (Scan_Front_End_Switches): Recognize new switch
-gnateO= and put its value in Opt.Object_Path_File_Name.

From-SVN: r186072

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 09:23:01 +0000 (11:23 +0200)]
[multiple changes]

2012-04-02  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Declarations): Detect a case where
a source object was initialized by another source object,
but the expression was rewritten as a class-wide conversion
of Ada.Tags.Displace.
* exp_util.adb (Initialized_By_Ctrl_Function): Removed.
(Is_Controlled_Function_Call): New routine.
(Is_Displacement_Of_Ctrl_Function_Result): Removed.
(Is_Displacement_Of_Object_Or_Function_Result): New routine.
(Is_Source_Object): New routine.
(Requires_Cleanup_Actions): Detect a case where a source object was
initialized by another source object, but the expression was rewritten
as a class-wide conversion of Ada.Tags.Displace.
* exp_util.ads (Is_Displacement_Of_Ctrl_Function_Result): Removed.
(Is_Displacement_Of_Object_Or_Function_Result): New routine.

2012-04-02  Ed Schonberg  <schonberg@adacore.com>

* sem_res.adb (Resolve_Call): A call to an expression function
does not freeze if it appears in a different scope from the
expression function itself. Such calls appear in the generated
bodies of other expression functions, or in pre/postconditions
of subsequent subprograms.

From-SVN: r186071

12 years ago[multiple changes]
Arnaud Charlet [Mon, 2 Apr 2012 09:19:30 +0000 (11:19 +0200)]
[multiple changes]

2012-04-02  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb: Code clean up.

2012-04-02  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Analyze_Subprogram_Instantiation): Do not suppress
style checks, because the subprogram instance itself may contain
violations of syle rules.
* style.adb (Missing_Overriding): Check for missing overriding
indicator on a subprogram instance.

2012-04-02  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch6.adb (Last_Implicit_Declaration): New routine.
(Process_PPCs): Insert the body of _postconditions after the
last internally generated declaration. This ensures that actual
subtypes created for formal parameters are visible and properly
frozen as _postconditions may reference them.

From-SVN: r186070

12 years ago2012-04-02 Robert Dewar <dewar@adacore.com>
Robert Dewar [Mon, 2 Apr 2012 09:14:47 +0000 (09:14 +0000)]
2012-04-02  Robert Dewar  <dewar@adacore.com>

* einfo.adb (First_Component_Or_Discriminant) Now applies to
all types with discriminants, not just records.
* exp_attr.adb (Expand_N_Attribute): Add Scalar_Values handling
for arrays, scalars and non-variant records.
* sem_attr.adb (Analyze_Attribute): Handle Valid_Scalars
* sem_attr.ads (Valid_Scalars): Update description
* sem_util.ads, sem_util.adb (No_Scalar_Parts): New function.

From-SVN: r186069

12 years agoPR c++/40942 - Failure of template specialization partial ordering
Dodji Seketeli [Mon, 2 Apr 2012 08:51:26 +0000 (08:51 +0000)]
PR c++/40942 - Failure of template specialization partial ordering

gcc/cp/

* pt.c (more_specialized_fn):  Don't apply decay conversion to
types of function parameters.

gcc/testsuite/

* g++.old-deja/g++.pt/spec40.C: Adjust to take the resolution of
DR 214 in account.

From-SVN: r186067

12 years agocrossconfig.m4 (*-*-*vms*): Add.
Tristan Gingold [Mon, 2 Apr 2012 07:59:27 +0000 (07:59 +0000)]
crossconfig.m4 (*-*-*vms*): Add.

2012-04-02  Tristan Gingold  <gingold@adacore.com>

        * crossconfig.m4 (*-*-*vms*): Add.
        * configure: Regenerate.

From-SVN: r186066

12 years ago2012-04-02 Tristan Gingold <gingold@adacore.com>
Tristan Gingold [Mon, 2 Apr 2012 07:53:58 +0000 (07:53 +0000)]
2012-04-02  Tristan Gingold  <gingold@adacore.com>

        * ggc-page.c (PAGE_L1_SIZE, PAGE_L2_SIZE, LOOKUP_L1, LOOKUP_L2)
        (ggc_allocated_p, lookup_page_table_entry, set_page_table_entry)
        (alloc_page, init_ggc, clear_marks, struct ggc_pch_data)
        (ggc_pch_this_base): Use uintptr_t instead of size_t.

From-SVN: r186065

12 years agostack-limit.c: Includes ansidecl.h.
Tristan Gingold [Mon, 2 Apr 2012 07:51:26 +0000 (07:51 +0000)]
stack-limit.c: Includes ansidecl.h.

2012-04-02  Tristan Gingold  <gingold@adacore.com>

        * stack-limit.c: Includes ansidecl.h.
        (stack_limit_increase): Add ATTRIBUTE_UNUSED

From-SVN: r186064

12 years agomath.m4 (GCC_CHECK_MATH_FUNC): Remove if-present argument.
Tristan Gingold [Mon, 2 Apr 2012 07:46:39 +0000 (07:46 +0000)]
math.m4 (GCC_CHECK_MATH_FUNC): Remove if-present argument.

config/
2012-04-02  Tristan Gingold  <gingold@adacore.com>

* math.m4 (GCC_CHECK_MATH_FUNC): Remove if-present
argument.  Define the variable.

libgfortran/
2012-04-02  Tristan Gingold  <gingold@adacore.com>

* configure.ac: Use new version of GCC_CHECK_MATH_FUNC.
* configure: Regenerate
* config.h.in: Regenerate.

From-SVN: r186063

12 years agoDaily bump.
GCC Administrator [Mon, 2 Apr 2012 00:17:25 +0000 (00:17 +0000)]
Daily bump.

From-SVN: r186062

12 years agore PR c++/50043 ([C++0x] Implement core/1123)
Paolo Carlini [Mon, 2 Apr 2012 00:13:30 +0000 (00:13 +0000)]
re PR c++/50043 ([C++0x] Implement core/1123)

/cp
2012-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50043
* class.c (deduce_noexcept_on_destructor,
deduce_noexcept_on_destructors): New.
(check_bases_and_members): Call the latter.
* decl.c (grokfndecl): Call the former.
* method.c (implicitly_declare_fn): Not static.
* cp-tree.h (deduce_noexcept_on_destructor, implicitly_declare_fn):
Declare

/testsuite
2012-04-01  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/50043
* g++.dg/cpp0x/noexcept17.C: New.
* g++.old-deja/g++.eh/cleanup1.C: Adjust.
* g++.dg/tree-ssa/ehcleanup-1.C: Likewise.
* g++.dg/cpp0x/noexcept01.C: Likewise.
* g++.dg/eh/init-temp1.C: Likewise.
* g++.dg/eh/ctor1.C: Likwise.

From-SVN: r186058

12 years agore PR libstdc++/52591 ([C++0x] [4.7 Regression] moving std::vector relies on movable...
Jonathan Wakely [Sun, 1 Apr 2012 22:04:54 +0000 (22:04 +0000)]
re PR libstdc++/52591 ([C++0x] [4.7 Regression] moving std::vector relies on movable elements)

PR libstdc++/52591
* include/bits/stl_vector.h (vector::operator=(vector&&)): Dispatch
to _M_move_assign depending on whether allocator is moved.
(vector::_M_move_assign): Add overloaded functions.
* testsuite/23_containers/vector/52591.cc: New.
* testsuite/23_containers/vector/requirements/dr438/assign_neg.cc:
Adjust dg-error line number.
* testsuite/23_containers/vector/requirements/dr438/constructor_1_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/constructor_2_neg.cc:
Likewise.
* testsuite/23_containers/vector/requirements/dr438/insert_neg.cc:
Likewise.

From-SVN: r186057

12 years agofunctional (__callable_functor): Overload for volatile-qualified pointers.
Jonathan Wakely [Sun, 1 Apr 2012 17:10:57 +0000 (17:10 +0000)]
functional (__callable_functor): Overload for volatile-qualified pointers.

* include/std/functional (__callable_functor): Overload for
volatile-qualified pointers.
* testsuite/20_util/function/10.cc: New.

From-SVN: r186055

12 years agoDaily bump.
GCC Administrator [Sun, 1 Apr 2012 00:18:23 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r186054

12 years agoHandle -mx32 like -m64
H.J. Lu [Sat, 31 Mar 2012 21:08:22 +0000 (21:08 +0000)]
Handle -mx32 like -m64

libgomp/

2012-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/52812
* configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.

libitm/

2012-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/52812
* configure.tgt (i[456]86-*-linux*): Handle -mx32 like -m64.

From-SVN: r186050

12 years agoDon't check TARGET_64BIT if TARGET_64BIT_DEFAULT is false
H.J. Lu [Sat, 31 Mar 2012 21:03:36 +0000 (21:03 +0000)]
Don't check TARGET_64BIT if TARGET_64BIT_DEFAULT is false

2012-03-31  H.J. Lu  <hongjiu.lu@intel.com>

PR bootstrap/52784
* config/i386/i386.c (ix86_option_override_internal): Don't
check TARGET_64BIT if TARGET_64BIT_DEFAULT is false.

From-SVN: r186049

12 years agotree-cfg.c (call_can_make_abnormal_goto): New predicate.
Eric Botcazou [Sat, 31 Mar 2012 17:21:01 +0000 (17:21 +0000)]
tree-cfg.c (call_can_make_abnormal_goto): New predicate.

* tree-cfg.c (call_can_make_abnormal_goto): New predicate.
(stmt_can_make_abnormal_goto): Use it.
(is_ctrl_altering_stmt): Likewise.

From-SVN: r186047

12 years agounwind-ia64.c (uw_install_context): Manually save LC if it hasn't been previously...
Eric Botcazou [Sat, 31 Mar 2012 16:24:04 +0000 (16:24 +0000)]
unwind-ia64.c (uw_install_context): Manually save LC if it hasn't been previously saved.

* config/ia64/unwind-ia64.c (uw_install_context): Manually save LC
if it hasn't been previously saved.

From-SVN: r186045

12 years agoRevert
Eric Botcazou [Sat, 31 Mar 2012 08:27:32 +0000 (08:27 +0000)]
Revert
2012-03-25  Eric Botcazou  <ebotcazou@adacore.com>

* gcc-interface/decl.c (SS_MARK_NAME): New define.
(gnat_to_gnu_entity) <E_Function>: Prepend leaf attribute on entities
whose name is SS_MARK_NAME.

From-SVN: r186038

12 years agore PR libstdc++/52799 (deque::emplace(iterator, ...) tries to call push_front(.....
Jeffrey Yasskin [Sat, 31 Mar 2012 01:56:55 +0000 (01:56 +0000)]
re PR libstdc++/52799 (deque::emplace(iterator, ...) tries to call push_front(...), which doesn't exist)

2012-03-30  Jeffrey Yasskin  <jyasskin@gcc.gnu.org>
    Paolo Carlini  <paolo.carlini@oracle.com>

PR libstdc++/52799
* include/bits/deque.tcc (emplace): Fix thinko, replace push_front
-> emplace_front, and likewise for *_back.
* testsuite/23_containers/deque/modifiers/emplace/52799.cc: New.
* testsuite/23_containers/list/modifiers/emplace/52799.cc: Likewise.
* testsuite/23_containers/vector/modifiers/emplace/52799.cc: Likewise.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r186035

12 years agoDaily bump.
GCC Administrator [Sat, 31 Mar 2012 00:19:50 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r186034

12 years agolibgo: Update to weekly.2012-03-27 aka go1 release.
Ian Lance Taylor [Fri, 30 Mar 2012 22:36:44 +0000 (22:36 +0000)]
libgo: Update to weekly.2012-03-27 aka go1 release.

From-SVN: r186029

12 years agoFile removed in weekly.2012-03-22 release.
Ian Lance Taylor [Fri, 30 Mar 2012 22:14:14 +0000 (22:14 +0000)]
File removed in weekly.2012-03-22 release.

From-SVN: r186028

12 years agolibgo: Update to weekly.2012-03-22.
Ian Lance Taylor [Fri, 30 Mar 2012 22:09:55 +0000 (22:09 +0000)]
libgo: Update to weekly.2012-03-22.

From-SVN: r186026

12 years agosh.c (push_regs): Skip banked registers when resbank attribute is specified.
Naveen H.S [Fri, 30 Mar 2012 21:41:45 +0000 (21:41 +0000)]
sh.c (push_regs): Skip banked registers when resbank attribute is specified.

* config/sh/sh.c (push_regs): Skip banked registers when
resbank attribute is specified.
(sh_expand_epilogue): Likewise.

Co-Authored-By: Kaz Kojima <kkojima@gcc.gnu.org>
From-SVN: r186024

12 years agolibgo: Update to weekly.2012-03-13.
Ian Lance Taylor [Fri, 30 Mar 2012 21:27:11 +0000 (21:27 +0000)]
libgo: Update to weekly.2012-03-13.

From-SVN: r186023

12 years agosyscall: Convert errno to error after Exitsyscall.
Ian Lance Taylor [Fri, 30 Mar 2012 21:10:32 +0000 (21:10 +0000)]
syscall: Convert errno to error after Exitsyscall.

From-SVN: r186020

12 years agore PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)
Richard Henderson [Fri, 30 Mar 2012 18:23:06 +0000 (11:23 -0700)]
re PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)

PR debug/52727
* g++.dg/opt/pr52727.C: New testcase.

From-SVN: r186019

12 years agore PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)
Richard Henderson [Fri, 30 Mar 2012 18:00:37 +0000 (11:00 -0700)]
re PR debug/52727 (internal compiler error at dwarf2cfi.c2:685)

PR debug/52727
        * combine-stack-adj.c (prev_active_insn_bb): New.
        (next_active_insn_bb): New.
        (force_move_args_size_note): New.
        (combine_stack_adjustments_for_block): Use it.

From-SVN: r186018

12 years agoi386: Add and use one_operand_p to vec_perm control struct.
Richard Henderson [Fri, 30 Mar 2012 18:00:21 +0000 (11:00 -0700)]
i386: Add and use one_operand_p to vec_perm control struct.

* config/i386/i386.c (struct expand_vec_perm_d): Add one_operand_p.
(ix86_expand_vector_init_duplicate): Initialize it.
(expand_vec_perm_palignr): Likewise.
(ix86_expand_vec_perm_const): Likewise.
(ix86_vectorize_vec_perm_const_ok): Likewise.
(expand_vec_perm_blend): Use it.
(expand_vec_perm_vpermil): Likewise.
(expand_vec_perm_pshufb): Likewise.
(expand_vec_perm_1): Likewise.
(expand_vec_perm_pshuflw_pshufhw): Likewise.
(expand_vec_perm_interleave2): Likewise.
(expand_vec_perm_vpermq_perm_1): Likewise.
(expand_vec_perm_vperm2f128): Likewise.
(expand_vec_perm_interleave3): Likewise.
(expand_vec_perm_vperm2f128_vblend): Likewise.
(expand_vec_perm_vpshufb2_vpermq): Likewise.
(expand_vec_perm_vpshufb2_vpermq_even_odd): Likewise,.
(expand_vec_perm_broadcast): Likewise.
(expand_vec_perm_vpshufb4_vpermq2): Likewise.

From-SVN: r186017

12 years ago* dwarf2out.c (gen_variable_die): Initialize off.
Richard Henderson [Fri, 30 Mar 2012 18:00:03 +0000 (11:00 -0700)]
* dwarf2out.c (gen_variable_die): Initialize off.

From-SVN: r186016

12 years ago* ChangeLog: Fix last entry.
Uros Bizjak [Fri, 30 Mar 2012 15:38:31 +0000 (17:38 +0200)]
* ChangeLog: Fix last entry.

From-SVN: r186015

12 years agovms-f.c: New file.
Tristan Gingold [Fri, 30 Mar 2012 13:54:23 +0000 (13:54 +0000)]
vms-f.c: New file.

2012-03-30  Tristan Gingold  <gingold@adacore.com>

* config/vms/vms-f.c: New file.
* config/vms/t-vms (vms-f.o): New rule.
* config.gcc (*-*-*vms*): Define fortran_target_objs.

From-SVN: r186013

12 years agore PR other/52754 (indirect indexing broken with -fpredictive-commoning)
Richard Guenther [Fri, 30 Mar 2012 13:41:24 +0000 (13:41 +0000)]
re PR other/52754 (indirect indexing broken with -fpredictive-commoning)

2012-03-30  Richard Guenther  <rguenther@suse.de>

PR tree-optimization/52754
* tree-ssa-forwprop.c (forward_propagate_addr_expr_1): Only
propagate arbitrary addresses into really plain dereferences.

* gcc.target/i386/pr52754.c: New testcase.

From-SVN: r186012

12 years agore PR c++/52772 (internal compiler error: Segmentation fault)
Richard Guenther [Fri, 30 Mar 2012 13:40:17 +0000 (13:40 +0000)]
re PR c++/52772 (internal compiler error: Segmentation fault)

2012-03-30  Richard Guenther <rguenther@suse.de>

PR middle-end/52772
* except.c (emit_to_new_bb_before): Move loop updating ...
(dw2_build_landing_pads): ... here.  Use a proper block for
querying the loop father.

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

From-SVN: r186011

12 years agoia64.c (ia64_section_type_flags): Remove common_object attribute handling.
Tristan Gingold [Fri, 30 Mar 2012 13:25:45 +0000 (13:25 +0000)]
ia64.c (ia64_section_type_flags): Remove common_object attribute handling.

2012-03-30  Tristan Gingold  <gingold@adacore.com>

* config/ia64/ia64.c (ia64_section_type_flags): Remove
common_object attribute handling.
(SECTION_VMS_OVERLAY): Remove
(ia64_vms_common_object_attribute): Replace abort with an assert.
Do not set DECL_SECTION_NAME.
(ia64_vms_output_aligned_decl_common): Handle common_object
attribute.
(ia64_vms_elf_asm_named_section): Remove.
* config/ia64/vms.h (TARGET_ASM_NAMED_SECTION): Remove.

From-SVN: r186010

12 years ago* ChangeLog: Fix entry.
Uros Bizjak [Fri, 30 Mar 2012 11:12:29 +0000 (13:12 +0200)]
* ChangeLog: Fix entry.

From-SVN: r186009

12 years agore PR libfortran/52758 (libgfortran/intrinsics/chmod.c: Array index out of bounds)
Uros Bizjak [Fri, 30 Mar 2012 11:07:46 +0000 (13:07 +0200)]
re PR libfortran/52758 (libgfortran/intrinsics/chmod.c: Array index out of bounds)

PR libgfortran/52758
* intrinsics/chmod.c: Remove out-of-bound initialization of rwxXstugo.

From-SVN: r186008

12 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Mar 2012 09:32:55 +0000 (11:32 +0200)]
[multiple changes]

2012-03-30  Robert Dewar  <dewar@adacore.com>

* exp_ch5.adb, sem_util.adb, exp_ch4.adb: Minor comment updates.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb (Add_Alfa_File): Treat possibly 2 units at the same
time, putting all scopes in the same Alfa file.
(Add_Alfa_Xrefs): Correct errors in comparison function. Correct value
of Def component.
(Collect_Alfa): Possibly pass 2 units to Add_Alfa_File.

From-SVN: r186006

12 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Mar 2012 09:29:15 +0000 (11:29 +0200)]
[multiple changes]

2012-03-30  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_util.adb (Is_Secondary_Stack_BIP_Func_Call): Handle a case where
a build-in-place call appears as Prefix'Reference'Reference.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb: Minor refactoring to remove internal package.

2012-03-30  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch5.adb (Analyze_Iteration_Scheme): Preanalyze the subtype
definition of a loop when the context is a quantified expression.

2012-03-30  Vincent Celier  <celier@adacore.com>

* prj.ads: Minor comment update.

From-SVN: r186005

12 years agolib-xref-alfa.adb, [...]: Minor addition of comments and refactoring.
Yannick Moy [Fri, 30 Mar 2012 09:26:59 +0000 (09:26 +0000)]
lib-xref-alfa.adb, [...]: Minor addition of comments and refactoring.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb, alloc.ads, lib-xref.ads: Minor addition of
comments and refactoring.

From-SVN: r186004

12 years agolib-xref.adb, [...]: Minor reformatting & code reorganization.
Robert Dewar [Fri, 30 Mar 2012 09:26:00 +0000 (09:26 +0000)]
lib-xref.adb, [...]: Minor reformatting & code reorganization.

2012-03-30  Robert Dewar  <dewar@adacore.com>

* lib-xref.adb, lib-xref-alfa.adb: Minor reformatting & code
reorganization.

From-SVN: r186003

12 years agolib-xref-alfa.adb (Generate_Dereference): Use Get_Code_Unit instead of Get_Source_Uni...
Yannick Moy [Fri, 30 Mar 2012 09:24:09 +0000 (09:24 +0000)]
lib-xref-alfa.adb (Generate_Dereference): Use Get_Code_Unit instead of Get_Source_Unit to get file for reference.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb (Generate_Dereference): Use Get_Code_Unit
instead of Get_Source_Unit to get file for reference.
(Traverse_Compilation_Unit): Do not add scopes for generic units.
* lib-xref.adb (Generate_Reference): Use Get_Code_Unit instead
of Get_Source_Unit to get file for reference.
* sem_ch12.adb (Analyze_Package_Instantiation): Enable
instantiation in Alfa mode.

From-SVN: r186002

12 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Mar 2012 09:21:43 +0000 (11:21 +0200)]
[multiple changes]

2012-03-30  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Process_Declarations): Replace
the call to Is_Null_Access_BIP_Func_Call with
Is_Secondary_Stack_BIP_Func_Call. Update the related comment.
* exp_util.adb (Is_Null_Access_BIP_Func_Call): Removed.
(Is_Secondary_Stack_BIP_Func_Call): New routine.
(Requires_Cleanup_Actions): Replace
the call to Is_Null_Access_BIP_Func_Call with
Is_Secondary_Stack_BIP_Func_Call. Update the related comment.
* exp_util.ads (Is_Null_Access_BIP_Func_Call): Removed.
(Is_Secondary_Stack_BIP_Func_Call): New routine.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb, lib-xref.adb: Code clean ups.

From-SVN: r186001

12 years agore PR other/52786 (double-int.c:231:31: error: comparison between signed and unsigned)
Richard Guenther [Fri, 30 Mar 2012 09:20:54 +0000 (09:20 +0000)]
re PR other/52786 (double-int.c:231:31: error: comparison between signed and unsigned)

2012-03-30  Richard Guenther  <rguenther@suse.de>

PR middle-end/52786
* double-int.c (rshift_double): Remove not needed cast.

From-SVN: r186000

12 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Mar 2012 09:17:34 +0000 (11:17 +0200)]
[multiple changes]

2012-03-30  Gary Dismukes  <dismukes@adacore.com>

* exp_ch5.adb (Expand_Iterator_Loop_Over_Array): For the case of a
loop entity which is rewritten as a renaming
of the indexed array, explicitly mark the entity as needing
debug info so that Materialize entity will be set later by
Debug_Renaming_Declaration when the renaming is expanded.

2012-03-30  Robert Dewar  <dewar@adacore.com>

* sem_attr.ads: Update comment.

From-SVN: r185999

12 years ago[multiple changes]
Arnaud Charlet [Fri, 30 Mar 2012 09:15:22 +0000 (11:15 +0200)]
[multiple changes]

2012-03-30  Vincent Celier  <celier@adacore.com>

* prj.ads: New Dependency_Kind: ALI_Closure.

2012-03-30  Thomas Quinot  <quinot@adacore.com>

* exp_pakd.adb: Minor reformatting.

From-SVN: r185998

12 years agolib-xref-alfa.adb (Add_Alfa_File): Take into account possible absence of compilation...
Yannick Moy [Fri, 30 Mar 2012 09:13:48 +0000 (09:13 +0000)]
lib-xref-alfa.adb (Add_Alfa_File): Take into account possible absence of compilation unit for unit in Sdep_Table.

2012-03-30  Yannick Moy  <moy@adacore.com>

* lib-xref-alfa.adb (Add_Alfa_File): Take into account possible absence
of compilation unit for unit in Sdep_Table.

From-SVN: r185997

12 years agofreeze.adb (Freeze_Record_Type): For a type with reversed bit order and reversed...
Thomas Quinot [Fri, 30 Mar 2012 09:11:38 +0000 (09:11 +0000)]
freeze.adb (Freeze_Record_Type): For a type with reversed bit order and reversed storage order...

2012-03-30  Thomas Quinot  <quinot@adacore.com>

* freeze.adb (Freeze_Record_Type): For a type with reversed bit
order and reversed storage order, disable front-end relayout.

From-SVN: r185996

12 years agotree-affine.h (print_aff): Remove.
Richard Guenther [Fri, 30 Mar 2012 08:52:32 +0000 (08:52 +0000)]
tree-affine.h (print_aff): Remove.

2012-03-30  Richard Guenther  <rguenther@suse.de>

* tree-affine.h (print_aff): Remove.
* tree-affine.c (print_aff): Make static.
* tree-data-ref.h (access_matrix_get_index_for_parameter): Remove.
(get_references_in_stmt): Likewise.
(print_direction_vector): Likewise.
(print_dir_vectors): Likewise.
(print_dist_vectors): Likewise.
(dump_subscript): Likewise.
(dump_ddrs): Likewise.
(dump_dist_dir_vectors): Likewise.
(dump_data_references): Likewise.
(dump_data_dependence_relation): Likewise.
(dump_data_dependence_direction): Likewise.
(dump_rdg_vertex): Likewise.
(dump_rdg_component): Likewise.
(debug_ddrs): Declare.
(struct data_ref_loc_d): Move ...
* tree-data-ref.c (struct data_ref_loc_d): ... here.
(get_references_in_stmt): Make static.
(dump_data_references): Likewise.
(dump_subscript): Likewise.
(print_direction_vector): Likewise.
(print_dir_vectors): Likewise.
(print_dist_vectors): Likewise.
(dump_data_dependence_relation): Likewise.
(dump_dist_dir_vectors): Likewise.
(dump_ddrs): Likewise.
(dump_rdg_vertex): Likewise.
(dump_rdg_component): Likewise.
(debug_ddrs): New function.
(access_matrix_get_index_for_parameter): Remove.

From-SVN: r185994

12 years agovms.c (VMS_CRTL_FLOAT32): Rename.
Tristan Gingold [Fri, 30 Mar 2012 08:42:47 +0000 (08:42 +0000)]
vms.c (VMS_CRTL_FLOAT32): Rename.

2012-03-30  Tristan Gingold  <gingold@adacore.com>

* config/vms/vms.c (VMS_CRTL_FLOAT32): Rename.
(VMS_CRTL_FLOAT64, VMS_CRTL_FLOAT64_VAXD): New.
(VMS_CRTL_FLOAT128, VMS_CRTL_DPML, VMS_CRTL_NODMPL)
(VMS_CRTL_32ONLY, VMS_CRTL_G_MASK, VMS_CRTL_G_NONE)
(VMS_CRTL_GA, VMS_CRTL_GL, VMS_CRTL_FLOATV2): New.
(vms_patch_builtins): Handle new flags
* config/vms/vms-crtlmap.map: Completed using nm on
c and math system libraries.
* config/vms/make-crtlmap.awk: Handle any number of flags.

From-SVN: r185993

12 years agocompiler: Fix order of evaluation of struct composite literals.
Ian Lance Taylor [Fri, 30 Mar 2012 04:59:02 +0000 (04:59 +0000)]
compiler: Fix order of evaluation of struct composite literals.

From-SVN: r185990

12 years agoDaily bump.
GCC Administrator [Fri, 30 Mar 2012 00:18:21 +0000 (00:18 +0000)]
Daily bump.

From-SVN: r185988

12 years agore PR c++/52718 (-Wzero-as-null-pointer-constant: misleading location for 0 as defaul...
Paolo Carlini [Thu, 29 Mar 2012 22:45:46 +0000 (22:45 +0000)]
re PR c++/52718 (-Wzero-as-null-pointer-constant: misleading location for 0 as default argument)

/cp
2012-03-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52718
* decl.c (check_default_argument): With -Wzero-as-null-pointer-constant
warn for a zero as null pointer constant default argument.

/testsuite
2012-03-29  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/52718
* g++.dg/warn/Wzero-as-null-pointer-constant-5.C: New.

From-SVN: r185983

12 years agotree-ssa-ccp.c (insert_clobbers_for_var): Do not assert that there is a builtin_stack...
Martin Jambor [Thu, 29 Mar 2012 22:29:10 +0000 (00:29 +0200)]
tree-ssa-ccp.c (insert_clobbers_for_var): Do not assert that there is a builtin_stack_save in a dominating BB.

2012-03-30  Martin Jambor  <mjambor@suse.cz>

* tree-ssa-ccp.c (insert_clobbers_for_var): Do not assert that there
is a builtin_stack_save in a dominating BB.

From-SVN: r185982

12 years agosse.md (avx_h<plusminus_insn>v4df3): Fix results crossing 128bit lane boundary.
Uros Bizjak [Thu, 29 Mar 2012 21:57:30 +0000 (23:57 +0200)]
sse.md (avx_h<plusminus_insn>v4df3): Fix results crossing 128bit lane boundary.

* config/i386/sse.md (avx_h<plusminus_insn>v4df3): Fix results
crossing 128bit lane boundary.

From-SVN: r185978

12 years agore PR java/52730 (Java front end emits assembly)
Steven Bosscher [Thu, 29 Mar 2012 21:00:23 +0000 (21:00 +0000)]
re PR java/52730 (Java front end emits assembly)

PR java/52730
* class.c (emit_register_classes_in_jcr_section): New function.
(emit_Jv_RegisterClass_calls): New function, split out from ...
(emit_register_classes): ... here. Reorganize.  Do not call
output_constant.

From-SVN: r185977

12 years agoira-color.c (setup_left_conflict_sizes_p): Process all conflicting objects.
Vladimir Makarov [Thu, 29 Mar 2012 17:23:39 +0000 (17:23 +0000)]
ira-color.c (setup_left_conflict_sizes_p): Process all conflicting objects.

2012-03-29  Vladimir Makarov  <vmakarov@redhat.com>

* ira-color.c (setup_left_conflict_sizes_p): Process all
conflicting objects.

From-SVN: r185971

12 years agore PR c++/52685 (ICE in copy_binfo)
Jason Merrill [Thu, 29 Mar 2012 15:55:01 +0000 (11:55 -0400)]
re PR c++/52685 (ICE in copy_binfo)

PR c++/52685
* tree.c (copy_binfo): Handle BINFO_DEPENDENT_BASE_P.

From-SVN: r185968

12 years agore PR c++/52759 (ICE in cp/mangle.c)
Jakub Jelinek [Thu, 29 Mar 2012 15:02:38 +0000 (17:02 +0200)]
re PR c++/52759 (ICE in cp/mangle.c)

PR c++/52759
* decl.c (start_decl): Don't call maybe_apply_pragma_weak
if processing_template_decl.

* g++.dg/ext/weak4.C: New test.

From-SVN: r185966

12 years agore PR tree-optimization/52760 (Revision 185599 causes miscompare on sphinx3)
Jakub Jelinek [Thu, 29 Mar 2012 14:55:53 +0000 (16:55 +0200)]
re PR tree-optimization/52760 (Revision 185599 causes miscompare on sphinx3)

PR tree-optimization/52760
* tree-vect-slp.c (vect_get_constant_vectors): Convert constant_p
shift count for {L,R}{SHIFT,ROTATE}_EXPR to TREE_TYPE (vector_type).

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

From-SVN: r185965

12 years agore PR c++/52743 (g++-4.7.0 seg faults on overload functions.)
Jason Merrill [Thu, 29 Mar 2012 14:14:00 +0000 (10:14 -0400)]
re PR c++/52743 (g++-4.7.0 seg faults on overload functions.)

PR c++/52743
* call.c (compare_ics): Handle ck_aggr like ck_list.

From-SVN: r185963

12 years agocgraph.h (cgraph_materialize_all_clones): Remove.
Richard Guenther [Thu, 29 Mar 2012 13:54:16 +0000 (13:54 +0000)]
cgraph.h (cgraph_materialize_all_clones): Remove.

2012-03-29  Richard Guenther  <rguenther@suse.de>

* cgraph.h (cgraph_materialize_all_clones): Remove.
(reset_inline_failed): Likewise.
* cgraphunit.c (cgraph_materialize_all_clones): Make static.
* cgraphbuild.c (reset_inline_failed): Remove.
* rtl.h (cse_main): Remove.
(extended_count): Likewise.
* cse.c (dump_class): Mark as DEBUG_FUNCTION.
(cse_main): Make static.
* combine.c (extended_count): Remove.
(dump_combine_stats): Mark as DEBUG_FUNCTION.
* basic-block.h (reorder_basic_blocks): Remove.
* bb-reorder.c (reorder_basic_blocks): Make static.
* Makefile.in (dse.o): Remove dse.h dependency.
* dse.h: Remove.
* dse.c (gate_dse): Remove.
(clear_alias_mode_eq): Likewise.
(clear_alias_mode_hash): Likewise.
(dse_record_singleton_alias_set): Likewise.
(dse_invalidate_singleton_alias_set): Likewise.

From-SVN: r185962

12 years agoUse crtbegin_so%O%s/crtend_so%O%s for -mandroid -shared
H.J. Lu [Thu, 29 Mar 2012 12:57:05 +0000 (12:57 +0000)]
Use crtbegin_so%O%s/crtend_so%O%s for -mandroid -shared

2012-03-29  H.J. Lu  <hongjiu.lu@intel.com>

* config/linux-android.h (ANDROID_STARTFILE_SPEC): Use
crtbegin_so%O%s for -shared.
(ANDROID_ENDFILE_SPEC): Use crtend_so%O%s for -shared.

From-SVN: r185958

12 years agoDefine x86_64_fallback_frame_state only for glibc
H.J. Lu [Thu, 29 Mar 2012 12:48:08 +0000 (12:48 +0000)]
Define x86_64_fallback_frame_state only for glibc

2012-03-29  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/linux-unwind.h (x86_64_fallback_frame_state): Define
only for glibc.

From-SVN: r185957

12 years agotree-flow.h (struct pre_expr_d): Remove forward declaration.
Richard Guenther [Thu, 29 Mar 2012 12:47:51 +0000 (12:47 +0000)]
tree-flow.h (struct pre_expr_d): Remove forward declaration.

2012-03-29  Richard Guenther  <rguenther@suse.de>

* tree-flow.h (struct pre_expr_d): Remove forward declaration.
(add_to_value): Remove.
(print_value_expressions): Likewise.
* tree-ssa-pre.c (add_to_value): Make static.
(print_value_expressions): Likewise.
* gimple.h (gimple_adjust_this_by_delta): Remove.
* gimple-fold.c (gimple_adjust_this_by_delta): Likewise.

From-SVN: r185956

12 years agoRestore trampled commits
Anthony Green [Thu, 29 Mar 2012 12:41:52 +0000 (12:41 +0000)]
Restore trampled commits

From-SVN: r185955

12 years agore PR middle-end/50708 (Infinite loop between rshift_double and lshift_double if...
Richard Guenther [Thu, 29 Mar 2012 08:27:04 +0000 (08:27 +0000)]
re PR middle-end/50708 (Infinite loop between rshift_double and lshift_double if count is LONG_MIN)

2012-03-29  Richard Guenther  <rguenther@suse.de>

PR middle-end/50708
* double-int.h (rshift_double): Remove.
* double-int.c (lshift_double): Use absu_hwi to make count
positive.
(rshift_double): Make static, take unsigned count argument,
remove handling of negative count argument.
(double_int_rshift): Dispatch to lshift_double.

From-SVN: r185951

12 years agore PR libstdc++/52689 (static linking with libstdc++ fails)
Benjamin Kosnik [Thu, 29 Mar 2012 06:14:32 +0000 (06:14 +0000)]
re PR libstdc++/52689 (static linking with libstdc++ fails)

2012-03-28  Benjamin Kosnik  <bkoz@redhat.com>

PR libstdc++/52689
* libsupc++/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
* libsupc++/Makefile.in: Regenerated.
* src/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
(libstdc___la_SOURCES): Add in compatiblity files, with content
that varies with -DPIC.
* src/Makefile.in: Regenerated.
* src/c++11/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
* src/c++11/Makefile.in: Regenerated.
* src/c++11/compatibility-atomic-c++0x.cc: Guard with PIC.
* src/c++11/compatibility-c++0x.cc: Same.
* src/c++11/future.cc: Consolidate compatibility bits into..
* src/c++11/mutex.cc: Consolidate compatibility bits into..
* src/c++11/compatibility-thread-cxx0x.cc: ...here. New.
* src/c++98/Makefile.am (LTCXXCOMPILE, CXXLINK): Tweak.
* src/c++98/Makefile.in: Regenerated.
* src/c++98/compatibility-ldbl.cc: Guard with PIC
* src/c++98/compatibility-list-2.cc: Same.
* src/c++98/compatibility-list.cc: Same.
* src/c++98/compatibility.cc: Tweak comments.

From-SVN: r185950

12 years agocompiler, libgo: unsafe.{Sizeof,Alignof,Offsetof} return uintptr.
Ian Lance Taylor [Thu, 29 Mar 2012 03:53:13 +0000 (03:53 +0000)]
compiler, libgo: unsafe.{Sizeof,Alignof,Offsetof} return uintptr.

From-SVN: r185946

12 years agore PR c++/52746 (Explicit virtual destructor call replaced by direct call in template...
Jason Merrill [Thu, 29 Mar 2012 02:58:29 +0000 (22:58 -0400)]
re PR c++/52746 (Explicit virtual destructor call replaced by direct call in template function)

PR c++/52746
* typeck.c (lookup_destructor): Clear BASELINK_QUALIFIED_P if
we didn't get an explicit scope.
* pt.c (tsubst_baselink): Likewise.

From-SVN: r185945

12 years agoDaily bump.
GCC Administrator [Thu, 29 Mar 2012 00:19:04 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r185943

12 years agomksysinfo: Fix use of _in6_addr in _zone_net_addr_t.
Ian Lance Taylor [Wed, 28 Mar 2012 23:19:06 +0000 (23:19 +0000)]
mksysinfo: Fix use of _in6_addr in _zone_net_addr_t.

From Rainer Orth.

From-SVN: r185938

12 years agoAdd ABI_64 and replace ISA_X32 with ABI_X32
H.J. Lu [Wed, 28 Mar 2012 22:42:28 +0000 (22:42 +0000)]
Add ABI_64 and replace ISA_X32 with ABI_X32

2012-03-28  H.J. Lu  <hongjiu.lu@intel.com>

* config/i386/biarch64.h (TARGET_64BIT_DEFAULT): Add
OPTION_MASK_ABI_64.

* config/i386/gnu-user64.h (SPEC_64): Support TARGET_BI_ARCH == 2.
(SPEC_X32): Likewise.
(MULTILIB_DEFAULTS): Likewise.

* config/i386/i386.c (isa_opts): Remove -m64.
(ix86_target_string): Properly handle -m32/-m64/-mx32.
(ix86_option_override_internal): Properly
set OPTION_MASK_ISA_64BIT and OPTION_MASK_ISA_X32 as well as
handle -m32, -m64 and -mx32.

* config/i386/i386.h (TARGET_X32): Replace OPTION_ISA_X32
with OPTION_ABI_X32.  Moved after TARGET_LP64.
(TARGET_LP64): Changed to OPTION_ABI_64.

* config/i386/i386.opt (m64): Replace ISA_64BIT with ABI_64.
(mx32): Replace ISA_X32 with ABI_X32.

From-SVN: r185937

12 years agocompiler: fix null-dereference on invalid len() arg.
Ian Lance Taylor [Wed, 28 Mar 2012 22:31:02 +0000 (22:31 +0000)]
compiler: fix null-dereference on invalid len() arg.

This patch fixes an ICE caused by syntax errors in arguments
to unary built-in functions like len().

Updates issue 7.

From Rémy Oudompheng.

From-SVN: r185935

12 years agocompiler: avoid an ICE on bound interface methods used as values.
Ian Lance Taylor [Wed, 28 Mar 2012 22:25:37 +0000 (22:25 +0000)]
compiler: avoid an ICE on bound interface methods used as values.

Updates issue 7.

From-SVN: r185933

12 years agocompiler: fix method finalization of unnamed structs.
Ian Lance Taylor [Wed, 28 Mar 2012 22:21:57 +0000 (22:21 +0000)]
compiler: fix method finalization of unnamed structs.

Used to trigger an ICE on
  var v struct{I}; type I interface{}

Updates issue 7.

From-SVN: r185931

12 years ago* tree.c (tree_size) <VECTOR_CST>: New case.
Eric Botcazou [Wed, 28 Mar 2012 21:59:23 +0000 (21:59 +0000)]
* tree.c (tree_size) <VECTOR_CST>: New case.

From-SVN: r185930

12 years agocompiler: fix crashes.
Ian Lance Taylor [Wed, 28 Mar 2012 21:33:15 +0000 (21:33 +0000)]
compiler: fix crashes.

The compiler would crash on:
        if true || x, y := 1, 2 {}
and
        var s string
        s = append(s, "hello")

Reported in issue 3186.

From-SVN: r185928

12 years agoi386.c (ix86_modes_tieable_p): Handle 32bit AVX modes.
Uros Bizjak [Wed, 28 Mar 2012 21:28:15 +0000 (23:28 +0200)]
i386.c (ix86_modes_tieable_p): Handle 32bit AVX modes.

* config/i386/i386.c (ix86_modes_tieable_p): Handle 32bit AVX modes.
(ix86_expand_vector_move_misalign): Remove un-needed gen_lowpart calls.

From-SVN: r185927

12 years agocompiler: Rewrite handling of untyped numeric constants.
Ian Lance Taylor [Wed, 28 Mar 2012 21:27:28 +0000 (21:27 +0000)]
compiler: Rewrite handling of untyped numeric constants.

Fixes various bugs when, e.g., using float or complex
constants in integer contexts.

From-SVN: r185925

12 years agore PR fortran/52652 (call to gfc_match_asynchronous for allocatable at parse.c line...
Paul Thomas [Wed, 28 Mar 2012 20:45:16 +0000 (20:45 +0000)]
re PR fortran/52652 (call to gfc_match_asynchronous for allocatable at parse.c line 164)

2012-03-28  Paul Thomas  <pault@gcc.gnu.org>
Tobias Burnus  <burnus@gcc.gnu.org>

PR fortran/52652
* match.c (gfc_match_allocate, gfc_match_deallocate): Change
"not.. or" to "neither.. nor".
* parse.c (decode_specification_statement): Correct error in
chpice of matching function for "allocatable".

2012-03-28  Paul Thomas  <pault@gcc.gnu.org>
Tobias Burnus  <burnus@gcc.gnu.org>

PR fortran/52652
* gfortran.dg/allocate_class_1.f90 : Change error test.
* gfortran.dg/allocate_with_typespec_4.f90 : Change error test.
* gfortran.dg/allocate_alloc_opt_1.f90 : Change error test.
* gfortran.dg/deallocate_alloc_opt_1.f90 : Change error test.

Co-Authored-By: Tobias Burnus <burnus@gcc.gnu.org>
From-SVN: r185924

12 years agotypeck2.c (process_init_constructor_array): Use the proper type for computing the...
Richard Guenther [Wed, 28 Mar 2012 15:04:23 +0000 (15:04 +0000)]
typeck2.c (process_init_constructor_array): Use the proper type for computing the array length.

2012-03-28  Richard Guenther  <rguenther@suse.de>

* typeck2.c (process_init_constructor_array): Use the proper
type for computing the array length.

From-SVN: r185919

12 years agore PR middle-end/52691 (va_start to builtin_next_arg optimization lost)
Jakub Jelinek [Wed, 28 Mar 2012 14:47:45 +0000 (16:47 +0200)]
re PR middle-end/52691 (va_start to builtin_next_arg optimization lost)

PR middle-end/52691
* tree-ssa-ccp.c (optimize_stdarg_builtin): Optimize
__builtin_va_start to __builtin_next_arg if the latter is
builtin_decl_explicit_p rather than when it is not.

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

From-SVN: r185917

12 years agoUpdate Copyright year.
Jakub Jelinek [Wed, 28 Mar 2012 14:45:21 +0000 (16:45 +0200)]
Update Copyright year.

From-SVN: r185915

12 years agore PR middle-end/52750 (32xsigned char __builtin_shuffle)
Jakub Jelinek [Wed, 28 Mar 2012 14:40:57 +0000 (16:40 +0200)]
re PR middle-end/52750 (32xsigned char __builtin_shuffle)

PR middle-end/52750
* tree-vect-generic.c (vector_element): Perform multiplication
for pos in bitsizetype type instead of idx type.

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

From-SVN: r185914

12 years agoloop-init.c (loop_optimizer_init): If loops are preserved perform incremental initial...
Richard Guenther [Wed, 28 Mar 2012 12:14:26 +0000 (12:14 +0000)]
loop-init.c (loop_optimizer_init): If loops are preserved perform incremental initialization of required loop features.

2012-03-28  Richard Guenther  <rguenther@suse.de>

* loop-init.c (loop_optimizer_init): If loops are preserved
perform incremental initialization of required loop features.
(loop_optimizer_finalize): If loops are to be preserved only
clean up optional loop features.
(rtl_loop_done): Forcefully free loops here.
* cgraph.c (cgraph_release_function_body): Forcefully free
loops.
* cfgexpand.c (expand_gimple_cond): Properly add new basic-blocks
to existing loops.
(construct_init_block): Likewise.
(construct_exit_block): Likewise.
(gimple_expand_cfg): Clear LOOP_CLOSED_SSA loop state.  Cleanup
the CFG after expanding.
* cfgloop.c (verify_loop_structure): Calculate or verify
dominators.  If we needed to calculate them, free them afterwards.
* tree-pass.h (PROP_loops): New define.
* tree-ssa-loop.c (pass_tree_loop_init): Provide PROP_loops.
* basic-block.h (CLEANUP_CFG_CHANGED): New.
* cfgcleanup.c (merge_blocks_move): Protect loop latches.
(cleanup_cfg): If we did something and have loops around, fix
them up.
* cse.c (rest_of_handle_cse_after_global_opts): Call cleanup_cfg
with CLEANUP_CFG_CHANGED.
* cfghooks.c (merge_blocks): If we merge a loop header into
its predecessor, update the loop structure.
(duplicate_block): If we copy a loop latch, adjust loop state
to note we may have multiple latches.
(delete_basic_block): Mark loops for fixup if we remove a loop.
* cfganal.c (forwarder_block_p): Protect loop latches, headers
and preheaders.
* cfgrtl.c (rtl_can_merge_blocks): Protect loop latches.
(cfg_layout_can_merge_blocks_p): Likewise.
* cprop.c (bypass_block): If we create a loop with multiple
entries, mark it for removal.
* except.c (emit_to_new_bb_before): Add the new basic-block
to existing loops.
* tree-eh.c (lower_resx): Likewise.
* omp-low.c (finalize_task_copyfn): Do not copy PROP_loops.
(expand_omp_taskreg): Likewise.
* tree-inline.c (initialize_cfun): Likewise.
* tree-mudflap.c (add_bb_to_loop): Prototype.
(mf_build_check_statement_for): Properly add new basic-blocks
to existing loops.
* tree-ssa-threadupdate.c (thread_block): Mark loops for fixup
if we remove a loop.
(thread_through_loop_header): Likewise.
* trans-mem.c (tm_log_emit_save_or_restores): Properly add
new basic-blocks to existing loops.
(expand_transaction): Likewise.
* Makefile.in (except.o): Add $(CFGLOOP_H).
(expr.o): Likewise.
(cgraph.o): Likewise.
(cprop.o): Likewise.
(cfgexpand.o): Likewise.
(cfganal.o): Likewise.
(trans-mem.o): Likewise.
(tree-eh.o): Likewise.

From-SVN: r185913

12 years agore PR target/52692 ([avr]: Add support for avr-specific built-ins + LTO)
Georg-Johann Lay [Wed, 28 Mar 2012 09:13:41 +0000 (09:13 +0000)]
re PR target/52692 ([avr]: Add support for avr-specific built-ins + LTO)

gcc/
PR target/52692
* config/avr/avr.c (TARGET_BUILTIN_DECL): New define.
(avr_builtin_decl): New static function.
(struct avr_builtin_description, avr_bdesc): Move up.
Add GTY marker. Add field fndecl. Remove redundant field id.
(avr_init_builtins): Initialize avr_bdesc[ID].fndecl.
(avr_expand_builtin): Code cleanup because .id is removed.

testsuite/
PR target/52692
* gcc.target/avr/torture/builtins-2.c: New test.

From-SVN: r185910

12 years agore PR target/52737 ([avr]: -mtiny-stack shall not influence multilib selection)
Georg-Johann Lay [Wed, 28 Mar 2012 08:31:26 +0000 (08:31 +0000)]
re PR target/52737 ([avr]: -mtiny-stack shall not influence multilib selection)

PR target/52737
* contrib/gcc_update (files_and_dependencies):
Remove gcc/config/avr/t-multilib from touch data.

gcc/
PR target/52737
* config.gcc (tm_file): Remove avr/multilib.h.

* doc/invoke.texi (AVR Options): Adjust
documentation of -mtiny-stack.

* config/avr/genmultilib.awk: Remove code to generate multilib.h.
(BEGIN): Use -msp8 as multilib option instead of -mtiny-stack.
* config/avr/t-avr: Remove generation of multilib.h.
* config/avr/t-multilib: Regenerate.
* config/avr/multilib.h: Remove.
* config/avr/avr.opt (-msp8): New option.
(avr_sp8): New variable.
* config/avr/driver-avr.c (avr_device_to_sp8): New function.
* config/avr/avr.h (AVR_HAVE_SPH): New define.
(AVR_HAVE_8BIT_SP): Also set by avr_sp8 i.e. -msp8.
(avr_device_to_sp8): New prototype.
(EXTRA_SPEC_FUNCTIONS): Add { "device_to_sp8", avr_device_to_sp8 }
(DRIVER_SELF_SPECS): New define.
* config/avr/avr-c.c (avr_cpu_cpp_builtins): New built-in defines:
__AVR_SP8__, __AVR_HAVE_SPH__.
* config/avr/avr.c (output_movhi): Use AVR_HAVE_SPH instead of
AVR_HAVE_8BIT_SP to decide if SP_H is present.
(avr_file_start): Ditto.

libgcc/
PR target/52737
* config/avr/lib1funcs.S: Use __AVR_HAVE_SPH__ for SP_H checks
instead of __AVR_HAVE_8BIT_SP__.

From-SVN: r185907

12 years agore PR target/52736 (miscompilation: store to aliased __m128d is 8 Bytes off)
Jakub Jelinek [Wed, 28 Mar 2012 08:01:00 +0000 (10:01 +0200)]
re PR target/52736 (miscompilation: store to aliased __m128d is 8 Bytes off)

PR target/52736
* config/i386/sse.md (sse2_loadlpd splitter): Use offset 0
instead of 8 in adjust_address.

* gcc.target/i386/pr52736.c: New test.

From-SVN: r185904

12 years agoMakefile.am (TEST_GCC_EXEC_PREFIX): New.
Terry Guo [Wed, 28 Mar 2012 01:34:07 +0000 (01:34 +0000)]
Makefile.am (TEST_GCC_EXEC_PREFIX): New.

libstdc++-v3:
* testsuite/Makefile.am (TEST_GCC_EXEC_PREFIX): New.
* testsuite/Makefile.in: Regenerated.

From-SVN: r185903

12 years agoDaily bump.
GCC Administrator [Wed, 28 Mar 2012 00:19:02 +0000 (00:19 +0000)]
Daily bump.

From-SVN: r185902

12 years agore PR middle-end/51893 (Wrong subword index computation in store_bit_field_1 on BIG_E...
Aurelien Buhrig [Tue, 27 Mar 2012 20:50:16 +0000 (20:50 +0000)]
re PR middle-end/51893 (Wrong subword index computation in store_bit_field_1 on BIG_ENDIAN targets)

PR middle-end/51893
* expmed.c (store_bit_field_1): Fix wordnum value for big-endian
targets.

From-SVN: r185897

12 years agofunctional (mem_fn): Qualify to prevent ADL.
Jonathan Wakely [Tue, 27 Mar 2012 20:25:12 +0000 (20:25 +0000)]
functional (mem_fn): Qualify to prevent ADL.

* include/std/functional (mem_fn): Qualify to prevent ADL.
* testsuite/20_util/function_objects/mem_fn/adl.cc: New.

From-SVN: r185895