Richard Guenther [Mon, 2 Apr 2012 12:00:30 +0000 (12:00 +0000)]
re PR middle-end/52800 (eglibc build broken with internal compiler error in cfgloop .)
2012-04-02 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/52800
* cprop.c (execute_rtl_cprop): Call cleanup_cfg with
CLEANUP_CFG_CHANGED.
From-SVN: r186081
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
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
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
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
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
Arnaud Charlet [Mon, 2 Apr 2012 09:26:25 +0000 (11:26 +0200)]
Complete previous change.
From-SVN: r186073
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
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
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
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
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
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
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
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
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
GCC Administrator [Mon, 2 Apr 2012 00:17:25 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r186062
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
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
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
GCC Administrator [Sun, 1 Apr 2012 00:18:23 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r186054
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
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
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
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
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
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
GCC Administrator [Sat, 31 Mar 2012 00:19:50 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r186034
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
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
Ian Lance Taylor [Fri, 30 Mar 2012 22:09:55 +0000 (22:09 +0000)]
libgo: Update to weekly.2012-03-22.
From-SVN: r186026
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
Ian Lance Taylor [Fri, 30 Mar 2012 21:27:11 +0000 (21:27 +0000)]
libgo: Update to weekly.2012-03-13.
From-SVN: r186023
Ian Lance Taylor [Fri, 30 Mar 2012 21:10:32 +0000 (21:10 +0000)]
syscall: Convert errno to error after Exitsyscall.
From-SVN: r186020
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
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
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
Richard Henderson [Fri, 30 Mar 2012 18:00:03 +0000 (11:00 -0700)]
* dwarf2out.c (gen_variable_die): Initialize off.
From-SVN: r186016
Uros Bizjak [Fri, 30 Mar 2012 15:38:31 +0000 (17:38 +0200)]
* ChangeLog: Fix last entry.
From-SVN: r186015
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
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
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
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
Uros Bizjak [Fri, 30 Mar 2012 11:12:29 +0000 (13:12 +0200)]
* ChangeLog: Fix entry.
From-SVN: r186009
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
GCC Administrator [Fri, 30 Mar 2012 00:18:21 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185988
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
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
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
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
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
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
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
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
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
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
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
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
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
Anthony Green [Thu, 29 Mar 2012 12:41:52 +0000 (12:41 +0000)]
Restore trampled commits
From-SVN: r185955
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
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
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
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
GCC Administrator [Thu, 29 Mar 2012 00:19:04 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r185943
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
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
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
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
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
Eric Botcazou [Wed, 28 Mar 2012 21:59:23 +0000 (21:59 +0000)]
* tree.c (tree_size) <VECTOR_CST>: New case.
From-SVN: r185930
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
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
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
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
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
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
Jakub Jelinek [Wed, 28 Mar 2012 14:45:21 +0000 (16:45 +0200)]
Update Copyright year.
From-SVN: r185915
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
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
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
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
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
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
GCC Administrator [Wed, 28 Mar 2012 00:19:02 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r185902
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