Jakub Jelinek [Tue, 20 Mar 2012 11:18:06 +0000 (12:18 +0100)]
i386.c (ix86_decompose_address): If operand isn't UNSPEC, return 0.
* config/i386/i386.c (ix86_decompose_address) <case ZERO_EXTEND>:
If operand isn't UNSPEC, return 0.
From-SVN: r185568
Arnaud Charlet [Tue, 20 Mar 2012 10:01:05 +0000 (11:01 +0100)]
Minor reformatting.
From-SVN: r185567
Arnaud Charlet [Tue, 20 Mar 2012 10:00:00 +0000 (10:00 +0000)]
hlo.ads, hlo.adb: Removed, no longer used.
2012-03-20 Arnaud Charlet <charlet@adacore.com>
* hlo.ads, hlo.adb: Removed, no longer used.
* gcc-interface/Make-lang.in: Remove hlo.o. Update dependencies.
* gcc-interface/Makefile.in: Remove EXTRA_LIBGNAT_SRCS (temporarly)
and compute it from EXTRA_LIBGNAT_OBJS.
Clean up comments, reorder LIBGNAT_SRCS and LIBGNAT_OBJS.
From-SVN: r185565
Richard Guenther [Tue, 20 Mar 2012 09:52:02 +0000 (09:52 +0000)]
tree-pass.h (pass_rtl_eh): Remove.
2012-03-20 Richard Guenther <rguenther@suse.de>
* tree-pass.h (pass_rtl_eh): Remove.
* except.c (gate_handle_eh): Likewise.
(rest_of_handle_eh): Likewise.
(pass_rtl_eh): Likewise.
(finish_eh_generation): Export.
* except.h (finish_eh_generation): Declare.
* passes.c (init_optimization_passes): Remove pass_rtl_eh.
* cfgexpand.c (gimple_expand_cfg): Call finish_eh_generation
after expanding stack alignment. Instead of compacting blocks
call cleanup_cfg.
From-SVN: r185564
Richard Guenther [Tue, 20 Mar 2012 09:31:40 +0000 (09:31 +0000)]
stor-layout.c (finish_bitfield_representative): Fallback to conservative maximum size if the padding up to the next field...
2012-03-20 Richard Guenther <rguenther@suse.de>
* stor-layout.c (finish_bitfield_representative): Fallback
to conservative maximum size if the padding up to the next
field cannot be computed as a constant.
(finish_bitfield_layout): If we cannot compute the distance
between the start of the bitfield representative and the
bitfield member start a new representative.
* expr.c (get_bit_range): The distance between the start of
the bitfield representative and the bitfield member is zero
if the field offsets are not constants.
* gnat.dg/pack16.adb: New testcase.
* gnat.dg/pack16_pkg.ads: Likewise.
* gnat.dg/specs/pack8.ads: Likewise.
* gnat.dg/specs/pack8_pkg.ads: Likewise.
From-SVN: r185563
Yannick Moy [Tue, 20 Mar 2012 09:23:26 +0000 (09:23 +0000)]
gnat_rm.texi, [...]: Update documentation.
2012-03-20 Yannick Moy <moy@adacore.com>
* gnat_rm.texi, sem_attr.ads: Update documentation.
From-SVN: r185562
Tristan Gingold [Tue, 20 Mar 2012 08:47:27 +0000 (08:47 +0000)]
tree.h (enum size_type_kind): Add stk_ prefix to constants, convert in lowercase.
2012-03-20 Tristan Gingold <gingold@adacore.com>
* tree.h (enum size_type_kind): Add stk_ prefix to constants,
convert in lowercase.
(sizetype_tab, sizetype, bitsizetype, ssizetype, sbitsizetype)
(size_int, ssize_int, bitsize_int, sbitsize_int): Adjust.
* stor-layout.c (sizetype_tab): Adjust.
(initialize_sizetypes): Use SIZETYPE instead of SIZE_TYPE.
* tree-streamer.c (preload_common_nodes): Use stk_type_kind_last
instead of type_kind_last.
* tree-scalar-evolution.c (interpret_rhs_expr): Use size_int
instead of size_int_kind.
* doc/tm.texi.in (Type Layout): Document SIZETYPE.
* doc/tm.texi: Regenerate.
* defaults.h (SIZETYPE): Provide a default value.
* config/vms/vms.h (SIZE_TYPE): Define as "unsigned int".
(SIZETYPE): Define.
From-SVN: r185561
Oleg Endo [Tue, 20 Mar 2012 00:37:19 +0000 (00:37 +0000)]
sh.md: Use braced string notation where applicable.
* config/sh/sh.md: Use braced string notation where applicable.
From-SVN: r185555
GCC Administrator [Tue, 20 Mar 2012 00:19:20 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r185552
Paolo Carlini [Mon, 19 Mar 2012 23:48:16 +0000 (23:48 +0000)]
[multiple changes]
2012-03-19 Paweł Sikora <pawel.sikora@agmk.net>
PR libstdc++/52540
* include/Makefile.am (c++config.h): Fix sed rule to not break
the _GLIBCXX_EXTERN_TEMPLATE redefinition.
* include/Makefile.in: Regenerate.
2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
* testsuite/Makefile.in: Regenerate.
From-SVN: r185548
Uros Bizjak [Mon, 19 Mar 2012 22:16:45 +0000 (23:16 +0100)]
i386.md (allocate_stack): Simplify.
* config/i386/i386.md (allocate_stack): Simplify.
From-SVN: r185545
Benjamin Kosnik [Mon, 19 Mar 2012 21:41:15 +0000 (21:41 +0000)]
allocator.h (std::allocator): Base class is __allocator_base.
2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
* include/bits/allocator.h (std::allocator): Base class is
__allocator_base.
(uses_allocator): Add to sub-grouping.
* include/ext/new_allocator.h: Doxygen markup for tparm.
* config/allocator/bitmap_allocator_base.h: Use __allocator_base
template alias in C++11.
* config/allocator/malloc_allocator_base.h: Same.
* config/allocator/mt_allocator_base.h: Same.
* config/allocator/new_allocator_base.h: Same.
* config/allocator/pool_allocator_base.h: Same.
From-SVN: r185544
Benjamin Kosnik [Mon, 19 Mar 2012 20:43:30 +0000 (20:43 +0000)]
constructors_destructor_fn_imps.hpp: Increment after recursion.
2012-03-19 Benjamin Kosnik <bkoz@redhat.com>
* include/ext/pb_ds/detail/pat_trie_/
constructors_destructor_fn_imps.hpp: Increment after recursion.
* include/ext/pb_ds/detail/pat_trie_/pat_trie_base.hpp: Convert
node_type markup from brief.
From-SVN: r185542
Uros Bizjak [Mon, 19 Mar 2012 20:35:59 +0000 (21:35 +0100)]
builtins.c (expand_builtin_cexpi): Use copy_addr_to_reg instead of copy_to_mode_reg (Pmode, ...).
* builtins.c (expand_builtin_cexpi): Use copy_addr_to_reg instead of
copy_to_mode_reg (Pmode, ...).
(expand_builtin_frame_address): Ditto.
* expr.c (emit_block_move_via_libcall): Ditto.
(set_storage_via_libcall): Ditto.
* config/i386/i386.c (ix86_expand_movmem): Ditto.
(ix86_expand_setmem): Ditto.
(ix86_trampoline_init): DItto.
* config/i386/i386.md (cmpstrnsi): Ditto.
(allocate_stack): Ditto.
From-SVN: r185541
Sandra Loosemore [Mon, 19 Mar 2012 20:34:29 +0000 (16:34 -0400)]
sh.opt (madjust-unroll): Mark as ignored/obsolete.
2012-03-19 Sandra Loosemore <sandra@codesourcery.com>
gcc/
* config/sh/sh.opt (madjust-unroll): Mark as ignored/obsolete.
* config/sh/sh.h (TARGET_OPT_DEFAULT): Don't use MASK_ADJUST_UNROLL.
* doc/invoke.texi (Option Summary): Remove -madjust-unroll.
(SH Options): Likewise.
From-SVN: r185540
Uros Bizjak [Mon, 19 Mar 2012 19:11:03 +0000 (20:11 +0100)]
i386.c (get_thread_pointer): Add tp_mode argument.
* config/i386/i386.c (get_thread_pointer): Add tp_mode argument.
Generate ZERO_EXTEND in place if GET_MODE (tp) != tp_mode.
(legitimize_tls_address) <TLS_MODEL_INITIAL_EXEC>: Always generate
DImode UNSPEC_GOTNTPOFF references on TARGET_64BIT.
(ix86_decompose_address): Allow zero extended UNSPEC_TP references.
Revert:
2012-03-13 Uros Bizjak <ubizjak@gmail.com>
* config/i386/i386.h (TARGET_TLS_INDIRECT_SEG_REFS): New.
* config/i386/i386.c (ix86_decompose_address): Use
TARGET_TLS_INDIRECT_SEG_REFS to prevent %fs:(%reg) addresses.
(legitimize_tls_address): Use TARGET_TLS_INDIRECT_SEG_REFS to load
thread pointer to a register.
Revert:
2012-03-10 H.J. Lu <hongjiu.lu@intel.com>
* config/i386/i386.c (ix86_decompose_address): Disallow fs:(reg)
if Pmode != word_mode.
(legitimize_tls_address): Call gen_tls_initial_exec_x32 if
Pmode == SImode for TARGET_X32.
* config/i386/i386.md (UNSPEC_TLS_IE_X32): New.
(tls_initial_exec_x32): Likewise.
From-SVN: r185536
Oleg Endo [Mon, 19 Mar 2012 19:04:20 +0000 (19:04 +0000)]
Fix ChangeLog formatting.
From-SVN: r185535
Oleg Endo [Mon, 19 Mar 2012 18:59:16 +0000 (18:59 +0000)]
re PR target/50751 (SH Target: Displacement addressing does not work for QImode and HImode)
PR target/50751
* config/sh/sh.h (CONST_OK_FOR_K04, CONST_OK_FOR_K12, DISP_ADDR_P,
DISP_ADDR_OFFSET): New macros.
* config/sh/sh.c (sh_address_cost): Add SH2A special case.
(sh_legitimate_index_p): Allow QImode displacements for non-SH2A.
(sh_legitimize_address): Add QImode displacement handling.
(sh_cannot_change_mode_class): Disallow GENERAL_REGS for SFmode
vector subregs.
(sh_secondary_reload): Add QImode displacement handling.
* config/sh/predicates.md (movsrc_no_disp_mem_operand): New predicate.
* config/sh/constraints.md (K04, Snd, Sdd): New constraints.
* config/sh/sh.md (extendqisi2): Remove constraints from expander.
(*extendqisi2_compact): Rename to *extendqisi2_compact_reg, restrict
to register operands only.
(*extendqisi2_compact_mem_disp, *extendqisi2_compact_snd): New insns.
(extendqihi2): Change insn to expander.
(*extendqihi2_compact_reg): New insn.
(movqi_i, movqi): Replace with ...
(movqi, *movqi_reg_reg, *movqi_store_mem_disp12,
*movqi_load_mem_disp, *movqi_load_mem_disp): ... these.
Add new peepholes for QImode displacement addressing.
From-SVN: r185534
Paolo Carlini [Mon, 19 Mar 2012 17:55:11 +0000 (17:55 +0000)]
Wuseless-cast.C: Extend.
2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
* g++.dg/warn/Wuseless-cast.C: Extend.
From-SVN: r185531
Paolo Carlini [Mon, 19 Mar 2012 17:23:40 +0000 (17:23 +0000)]
2012-03-19 Paolo Carlini <paolo.carlini@oracle.com>
Complete previous commit.
From-SVN: r185529
Arnaud Charlet [Mon, 19 Mar 2012 16:41:25 +0000 (17:41 +0100)]
[multiple changes]
2012-03-19 Yannick Moy <moy@adacore.com>
* sem_ch6.adb: Minor code clean up.
2012-03-19 Vincent Celier <celier@adacore.com>
* make.adb (Scan_Make_Arg): Make sure all significant -m switches
on the command line are counted.
2012-03-19 Robert Dewar <dewar@adacore.com>
* sem_elab.adb (Generate_Elab_Warnings): Fix spec, fix attribute
reference case
2012-03-19 Robert Dewar <dewar@adacore.com>
* par-ch4.adb (Check_Bad_Exp): New procedure
2012-03-19 Robert Dewar <dewar@adacore.com>
* exp_attr.adb, sem_attr.adb, sem_attr.ads, snames.ads-tmpl: Add
initial framework for Valid_Scalars attribute.
2012-03-19 Robert Dewar <dewar@adacore.com>
* scng.adb (Scan): Recognize incorrect preprocessor directive
2012-03-19 Robert Dewar <dewar@adacore.com>
* atree.adb (Allocate_Initialize_Node): Use Num_Extension_Nodes
* atree.ads (Num_Extension_Nodes): New variable
* debug.adb: New debug flag -gnatd.N
* gnat1drv.adb (Adjust_Global_Switches): Adjust
Num_Extension_Nodes if -gnatd.N set
2012-03-19 Eric Botcazou <ebotcazou@adacore.com>
* einfo.ads: Minor update to First_Rep_Item and Has_Gigi_Rep_Item
descriptions.
2012-03-19 Robert Dewar <dewar@adacore.com>
* opt.ads: Remove HLO_Active flag.
* sem.adb: Remove call of high level optimizer.
* sem.ads (New_Nodes_OK): Removed.
* sem_ch10.adb: Remove references to New_Nodes_OK.
* switch-c.adb: Remove handling of -gnatH switch.
From-SVN: r185528
Arnaud Charlet [Mon, 19 Mar 2012 16:31:20 +0000 (17:31 +0100)]
[multiple changes]
2012-03-19 Yannick Moy <moy@adacore.com>
* sem_ch6.adb (Check_Subprogram_Contract): Do not emit warnings
on trivially True or False postconditions and Ensures components
of contract-cases.
2012-03-19 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Fix index entry for -gnatei (now we have
ug_words entry).
From-SVN: r185527
Arnaud Charlet [Mon, 19 Mar 2012 16:29:27 +0000 (17:29 +0100)]
[multiple changes]
2012-03-19 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch3.adb (Get_Discriminant_Value): Instead of looking
at the immediate correcponsing discriminant, traverse a
potential chain of discriminants produced by type derivations.
(Root_Corresponding_Discriminant): Traverse a chain of inherited
discriminants and return the topmost discriminant.
2012-03-19 Bob Duff <duff@adacore.com>
* debug.adb: Minor comment change.
* gnat_ugn.texi: Update documentation for elaboration regarding
indirect calls.
2012-03-19 Gary Dismukes <dismukes@adacore.com>
* exp_ch3.adb (Expand_N_Object_Declaration): In
the case of an object of a class-wide interface type, where the
declaration is rewritten as a renaming, call Set_Debug_Info_Needed
on the renaming entity so that Materialize_Entity will be
set. Also, change existing call (for other than interface cases)
to call Set_Debug_Info_Needed rather than Set_Needs_Debug_Info
(as specified for that flag).
From-SVN: r185526
Arnaud Charlet [Mon, 19 Mar 2012 16:27:18 +0000 (17:27 +0100)]
[multiple changes]
2012-03-19 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch4.adb (Analyze_Allocator): Detect an allocator generated
by the build-in-place machinery where the designated type is
indefinite, but the underlying type is not. Do not emit errors
related to missing initialization in this case.
2012-03-19 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Add documentation for -gnateinnn switch.
* sem_elab.adb, put_alfa.adb, lib-xref-alfa.adb: Minor reformatting.
* sem_prag.adb: Minor comment update.
From-SVN: r185525
Paolo Carlini [Mon, 19 Mar 2012 15:51:25 +0000 (15:51 +0000)]
re PR c++/14710 (Warning about useless casts)
2012-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/14710
* doc/invoke.texi: Document -Wuseless-cast.
/c-family
2012-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/14710
* c.opt ([Wuseless-cast]): Add.
/cp
2012-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/14710
* cp-tree.h (maybe_warn_about_useless_cast): Declare.
* typeck.c (maybe_warn_about_useless_cast): Define.
(build_reinterpret_cast, build_const_cast,
build_static_cast, cp_build_c_cast): Use it.
* rtti.c (build_dynamic_cast): Likewise.
* pt.c (tsubst_copy_and_build, case CAST_EXPR): Increment/decrement
c_inhibit_evaluation_warnings before/after the build_* calls.
/testsuite
2012-03-16 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/14710
* g++.dg/warn/Wuseless-cast.C: New.
From-SVN: r185524
Eric Botcazou [Mon, 19 Mar 2012 15:35:55 +0000 (15:35 +0000)]
tree.def (REALPART_EXPR, [...]): Move.
* tree.def (REALPART_EXPR, IMAGPART_EXPR, VIEW_CONVERT_EXPR): Move.
* tree.h (handled_component_p): Reorder cases.
* dwarf2out.c (loc_list_for_address_of_addr_expr_of_indirect_ref): Do
not initialize unsignedp.
(loc_list_from_tree): Likewise.
(fortran_common): Likewise.
* simplify-rtx.c (delegitimize_mem_from_attrs): Likewise.
From-SVN: r185522
Uros Bizjak [Mon, 19 Mar 2012 13:09:44 +0000 (14:09 +0100)]
i386.c (ix86_expand_prologue): Use Pmode mode consistently.
* config/i386/i386.c (ix86_expand_prologue) <CM_LARGE_PIC>: Use Pmode
mode consistently. Use ix86_gen_add3. Assert that Pmode == DImode.
(ix86_expand_split_stack_prologue): Use ix86_gen_add3.
(ix86_split_long_move): Ditto.
(legitimize_tls_address): Use ix86_gen_sub3.
(construct_plt_address): Assert that Pmode == DImode.
From-SVN: r185520
Francois-Xavier Coudert [Mon, 19 Mar 2012 09:50:35 +0000 (09:50 +0000)]
re PR fortran/52559 (Spurious \x00 in error messages of lines with tab)
PR fortran/52559
* error.c (gfc_widechar_display_length): Consider tabs as
one character wide, as they're displayed as spaces.
(show_locus): Move tab handling to...
(print_wide_char_into_buffer): ... here.
From-SVN: r185517
GCC Administrator [Mon, 19 Mar 2012 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185514
Joseph Myers [Sun, 18 Mar 2012 14:07:21 +0000 (14:07 +0000)]
* cpplib.pot: Regenerate.
From-SVN: r185508
Joseph Myers [Sun, 18 Mar 2012 14:06:34 +0000 (14:06 +0000)]
* gcc.pot: Regenerate.
From-SVN: r185507
Uros Bizjak [Sun, 18 Mar 2012 09:14:23 +0000 (10:14 +0100)]
i386.md: Remove empty predicates and/or constraints.
* config/i386/i386.md: Remove empty predicates and/or constraints.
* config/i386/sync.md: Ditto.
* config/i386/sse.md: Ditto.
* config/i386/mmx.md: Ditto.
* config/i386/pentium.md: Ditto.
* config/i386/athlon.md: Ditto.
From-SVN: r185505
David Edelsohn [Sun, 18 Mar 2012 00:45:24 +0000 (20:45 -0400)]
Add missing ChangeLog entry from 2012-03-09 commit.
From-SVN: r185499
GCC Administrator [Sun, 18 Mar 2012 00:18:53 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185498
Janne Blomqvist [Sat, 17 Mar 2012 18:25:51 +0000 (20:25 +0200)]
Typo in ChangeLog
From-SVN: r185489
Janne Blomqvist [Sat, 17 Mar 2012 18:24:09 +0000 (20:24 +0200)]
PR libfortran/52608 Add dejagnu directive to testcase
From-SVN: r185488
Janne Blomqvist [Sat, 17 Mar 2012 18:20:34 +0000 (20:20 +0200)]
re PR libfortran/52608 (The test FM110 of the NIST test suite fails since revision 185433)
2012-03-17 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/52608
* gfortran.dh/pr52608.f90: New test.
From-SVN: r185487
Janne Blomqvist [Sat, 17 Mar 2012 17:19:49 +0000 (19:19 +0200)]
PR libfortran/52608 Move the removal of initial zeros.
2012-03-17 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/52608
* io/write_float.def (output_float): Move removal of initial zeros
until after the scale factor has been applied.
From-SVN: r185486
Tobias Burnus [Sat, 17 Mar 2012 17:03:59 +0000 (18:03 +0100)]
re PR fortran/52585 (Wrong result for ASSOCIATED with dummy procedure pointer)
2012-03-17 Tobias Burnus <burnus@net-b.de>
PR fortran/52585
* trans-intrinsic.c (gfc_conv_associated): Fix handling of
procpointer dummy arguments.
2012-03-17 Tobias Burnus <burnus@net-b.de>
PR fortran/52585
* gfortran.dg/proc_ptr_36.f90: New.
From-SVN: r185485
GCC Administrator [Sat, 17 Mar 2012 00:18:52 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185481
François Dumont [Fri, 16 Mar 2012 21:03:15 +0000 (21:03 +0000)]
re PR libstdc++/52476 ([DR 518] Unordered multimap reorders equivalent elements)
2012-03-15 François Dumont <fdumont@gcc.gnu.org>
PR libstdc++/52476
* include/bits/hashtable.h (_Hashtable<>::_M_rehash_aux): Add.
(_Hashtable<>::_M_rehash): Use the latter.
* testsuite/23_containers/unordered_multimap/insert/52476.cc: New.
* testsuite/23_containers/unordered_multiset/insert/52476.cc: New.
From-SVN: r185476
Richard Guenther [Fri, 16 Mar 2012 16:48:31 +0000 (16:48 +0000)]
re PR middle-end/52603 (Test failures in gcc.dg/vect: vectorizing unaligned access)
2012-03-16 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52603
* tree-vect-data-refs.c (vect_can_force_dr_alignment_p): Clarify
comment.
Revert
2012-03-14 Richard Guenther <rguenther@suse.de>
PR tree-optimization/52571
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Move
flag_section_anchors check ...
(vect_can_force_dr_alignment_p): ... here.
From-SVN: r185474
Martin Jambor [Fri, 16 Mar 2012 15:02:41 +0000 (16:02 +0100)]
expr.c (expand_expr_real_1): handle misaligned scalar reads from memory through MEM_REFs by calling...
2012-03-16 Martin Jambor <mjambor@suse.cz>
* expr.c (expand_expr_real_1): handle misaligned scalar reads from
memory through MEM_REFs by calling extract_bit_field.
* testsuite/gcc.dg/misaligned-expand-1.c: New test.
* testsuite/gcc.dg/misaligned-expand-3.c: Likewise.
From-SVN: r185470
Richard Guenther [Fri, 16 Mar 2012 14:49:48 +0000 (14:49 +0000)]
fold-const.c (native_interpret_expr): Also support POINTER_TYPE and REFERENCE_TYPE interpretations.
2012-03-16 Richard Guenther <rguenther@suse.de>
* fold-const.c (native_interpret_expr): Also support POINTER_TYPE
and REFERENCE_TYPE interpretations.
(can_native_interpret_type_p): New function.
(fold_ternary_loc): Use native encode/interpret to fold
BIT_FIELD_REFs of constants.
From-SVN: r185469
Richard Guenther [Fri, 16 Mar 2012 14:49:05 +0000 (14:49 +0000)]
re PR middle-end/52584 (Fails to constant fold vector upper/lower half BIT_FIELD_REFs)
2012-03-16 Richard Guenther <rguenther@suse.de>
PR middle-end/52584
* fold-const.c (fold_ternary_loc): Fold vector typed BIT_FIELD_REFs
of vector constants and constructors.
From-SVN: r185468
Richard Guenther [Fri, 16 Mar 2012 13:20:55 +0000 (13:20 +0000)]
tree-vect-stmts.c (vect_get_vec_def_for_operand): Use VIEW_CONVERT_EXPR to convert constants.
2012-03-16 Richard Guenther <rguenther@suse.de>
* tree-vect-stmts.c (vect_get_vec_def_for_operand): Use
VIEW_CONVERT_EXPR to convert constants.
(vect_is_simple_use): Treat all constants as vec_constant_def.
From-SVN: r185466
Richard Guenther [Fri, 16 Mar 2012 11:48:48 +0000 (11:48 +0000)]
re PR middle-end/48814 (Incorrect scalar increment result)
2012-03-16 Richard Guenther <rguenther@suse.de>
Kai Tietz <ktietz@redhat.com>
PR middle-end/48814
* gimplify.c (gimplify_self_mod_expr): Evaluate postfix
side-effects completely in the pre-queue and use a temporary
for the result.
* gcc.c-torture/execute/pr48814-1.c: New test.
* gcc.c-torture/execute/pr48814-2.c: New test.
* gcc.dg/tree-ssa/assign-1.c: New test.
* gcc.dg/tree-ssa/assign-2.c: New test.
* gcc.dg/tree-ssa/assign-3.c: New test.
Co-Authored-By: Kai Tietz <ktietz@redhat.com>
From-SVN: r185465
Richard Guenther [Fri, 16 Mar 2012 11:47:26 +0000 (11:47 +0000)]
stor-layout.c (finish_bitfield_representative): Fall back to the conservative maximum size if...
2012-03-16 Richard Guenther <rguenther@suse.de>
* stor-layout.c (finish_bitfield_representative): Fall back
to the conservative maximum size if we cannot compute the
size of the tail padding.
* gnat.dg/specs/pack7.ads: New testcase.
From-SVN: r185464
Tristan Gingold [Fri, 16 Mar 2012 10:58:28 +0000 (10:58 +0000)]
vms-unwind.h: Remove ulong (and replace it by unw_reg where used).
2012-03-16 Tristan Gingold <gingold@adacore.com>
* config/ia64/vms-unwind.h: Remove ulong (and replace
it by unw_reg where used). Define unw_reg with __int64.
From-SVN: r185463
Tristan Gingold [Fri, 16 Mar 2012 09:55:56 +0000 (09:55 +0000)]
vms.h (TARGET_OS_CPP_BUILTINS): Define __CRTL_VER and __VMS_VER.
2012-03-16 Tristan Gingold <gingold@adacore.com>
* config/vms/vms.h (TARGET_OS_CPP_BUILTINS): Define
__CRTL_VER and __VMS_VER.
* config/vms/vms-protos.h: Declare vms_c_get_crtl_ver
and vms_c_get_vms_ver.
* config/vms/vms-c.c (vms_c_get_crtl_ver, vms_c_get_vms_ver): New
functions.
* config/alpha/vms.h (VMS_DEFAULT_CRTL_VER)
(VMS_DEFAULT_VMS_VER): Define.
* config/ia64/vms.h (VMS_DEFAULT_CRTL_VER)
(VMS_DEFAULT_VMS_VER): Define.
From-SVN: r185462
Richard Guenther [Fri, 16 Mar 2012 09:54:36 +0000 (09:54 +0000)]
tree-vect-loop.c (get_initial_def_for_induction): Use build_constructor directly.
2012-03-16 Richard Guenther <rguenther@suse.de>
* tree-vect-loop.c (get_initial_def_for_induction): Use
build_constructor directly.
* tree-vect-stmts.c (vect_get_vec_def_for_operand): Use
build_vector_from_val.
* tree.c (build_vector_from_val): Avoid creating a constructor
first when we want a constant vector.
From-SVN: r185461
Bernhard Reutner-Fischer [Fri, 16 Mar 2012 09:51:06 +0000 (10:51 +0100)]
lib{gomp,itm}/testsuite: load missing fortran-modules.exp
libgomp/ChangeLog
2012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* testsuite/lib/libgomp.exp: load fortran-modules.exp
libitm/ChangeLog
2012-03-16 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* testsuite/lib/libitm.exp: load fortran-modules.exp
From-SVN: r185460
Rainer Orth [Fri, 16 Mar 2012 09:50:29 +0000 (09:50 +0000)]
Improve wording in GCC 4.7 Solaris update to install.texi
* doc/install.texi (Specific, *-*-solaris2*): Improve wording.
From-SVN: r185459
Richard Guenther [Fri, 16 Mar 2012 09:47:09 +0000 (09:47 +0000)]
tree.h (TREE_VECTOR_CST_ELTS): Remove.
2012-03-16 Richard Guenther <rguenther@suse.de>
* tree.h (TREE_VECTOR_CST_ELTS): Remove.
(VECTOR_CST_NELTS, VECTOR_CST_ELTS, VECTOR_CST_ELT): New defines.
(struct tree_vector): Remove elements member, add variable size
elts array member.
(build_vector_stat): Declare.
(build_vector): Define in terms of build_vector_stat.
* tree.c (build_vector): Rename to ...
(build_vector_stat): ... this. Take array of trees as parameter.
(build_vector_from_ctor): Adjust.
(integer_zerop, integer_onep, integer_all_onesp, iterative_hash_expr,
initializer_zerop): Adjust.
* cfgexpand.c (expand_debug_expr): Likewise.
* expr.c (categorize_ctor_elements_1, expand_expr_real_1,
const_vector_from_tree): Likewise.
* fold-const.c (const_binop, operand_equal_p, native_encode_vector,
native_interpret_vector, fold_unary_loc, vec_cst_ctor_to_array,
fold_vec_perm, fold_binary_loc, fold_ternary_loc): Likewise.
* tree-streamer-in.c (streamer_alloc_tree): Handle TS_VECTOR.
(lto_input_ts_vector_tree_pointers): Adjust.
* tree-streamer-out.c (streamer_write_tree_header): Handle TS_VECTOR.
(write_ts_vector_tree_pointers): Adjust.
* varasm.c (const_hash_1, compare_constant, copy_constant,
output_constant): Adjust.
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Adjust.
* print-tree.c (print_node): Adjust.
* tree-pretty-print.c (dump_generic_node): Adjust.
* tree-vect-generic.c (uniform_vector_p, vector_element,
lower_vec_perm): Adjust.
* tree-vect-loop.c (get_initial_def_for_reduction): Adjust.
* tree-vect-slp.c (vect_get_constant_vectors,
vect_transform_slp_perm_load): Adjust.
* tree-vect-stmts.c (vect_gen_perm_mask): Adjust.
* expmed.c (make_tree): Adjust.
* config/i386/i386.c (ix86_expand_builtin): Adjust.
* config/sparc/sparc.c (sparc_handle_vis_mul8x16): Adjust interface
and implementation.
(sparc_fold_builtin): Adjust.
c-family/
* c-pretty-print.c (pp_c_initializer_list): Adjust.
From-SVN: r185458
Tristan Gingold [Fri, 16 Mar 2012 09:29:56 +0000 (09:29 +0000)]
config.gcc (*-*-*vms*): Define use_gcc_stdint and tm_file.
2012-03-16 Tristan Gingold <gingold@adacore.com>
* config.gcc (*-*-*vms*): Define use_gcc_stdint and tm_file.
* config/vms/vms-stdint.h: New file.
From-SVN: r185456
Tristan Gingold [Fri, 16 Mar 2012 09:18:57 +0000 (09:18 +0000)]
2012-03-16 Tristan Gingold <gingold@adacore.com>
* config.host (alpha64-dec-*vms*, alpha*-dec-*vms*)
(ia64-hp-*vms*): Replaced by ...
(*-*-*vms*): ... This new entry.
From-SVN: r185455
Janne Blomqvist [Fri, 16 Mar 2012 08:30:26 +0000 (10:30 +0200)]
Share vtables instead of replicating them for each unit.
2012-03-16 Janne Blomqvist <jb@gcc.gnu.org>
* io/unix.h (struct stream): Rename to stream_vtable.
(struct stream): New struct definition.
(sread): Dereference vtable pointer.
(swrite): Likewise.
(sseek): Likewise.
(struncate): Likewise.
(sflush): Likewise.
(sclose): Likewise.
* io/unix.c (raw_vtable): New variable.
(buf_vtable): Likewise.
(mem_vtable): Likewise.
(mem4_vtable): Likewise.
(raw_init): Assign vtable pointer.
(buf_init): Likewise.
(open_internal): Likewise.
(open_internal4): Likewise.
From-SVN: r185454
Janne Blomqvist [Fri, 16 Mar 2012 08:14:01 +0000 (10:14 +0200)]
Don't use BUILT_IN_IROUND for __float128.
2012-03-16 Janne Blomqvist <jb@gcc.gnu.org>
* trans-intrinsic.c (build_round_expr): Don't use BUILT_IN_IROUND
for __float128.
From-SVN: r185453
GCC Administrator [Fri, 16 Mar 2012 00:18:55 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185451
Jakub Jelinek [Thu, 15 Mar 2012 23:46:34 +0000 (00:46 +0100)]
re PR target/52568 (suboptimal __builtin_shuffle on cycles with AVX)
PR target/52568
* config/i386/i386.c (expand_vec_perm_vperm2f128_vblend): New
function.
(ix86_expand_vec_perm_const_1): Use it.
* gcc.dg/torture/vshuf-4.inc: Add two new tests.
* gcc.dg/torture/vshuf-8.inc: Likewise.
* gcc.dg/torture/vshuf-16.inc: Likewise.
* gcc.dg/torture/vshuf-32.inc: Likewise.
From-SVN: r185447
Jakub Jelinek [Thu, 15 Mar 2012 23:45:45 +0000 (00:45 +0100)]
re PR target/52568 (suboptimal __builtin_shuffle on cycles with AVX)
PR target/52568
* config/i386/sse.md (UNSPEC_VPERMDF): Remove.
(avx2_permv4df): Remove.
(avx2_permv4di): Macroize into...
(avx2_perm<mode>): ... this using VI8F_256 iterator.
(avx2_permv4di_1): Macroize into...
(avx2_perm<mode>_1): ... this using VI8F_256 iterator.
From-SVN: r185446
Janne Blomqvist [Thu, 15 Mar 2012 21:56:13 +0000 (23:56 +0200)]
Remove commented out debug printf:s
From-SVN: r185444
Jason Merrill [Thu, 15 Mar 2012 21:22:38 +0000 (17:22 -0400)]
re PR c++/52582 (g++ ICE when compiling qt-4.8.0 with -O2 on PPC (32bit))
PR c++/52582
* method.c (implicitly_declare_fn): Set DECL_EXTERNAL.
From-SVN: r185443
Janne Blomqvist [Thu, 15 Mar 2012 20:27:07 +0000 (22:27 +0200)]
Enable BUILT_IN_IROUND.
2012-03-15 Janne Blomqvist <jb@gcc.gnu.org>
* f95-lang.c (gfc_init_builtin_functions): Initialize
BUILT_IN_IROUND.
* mathbuiltins.def: Add IROUND.
* trans-intrinsic.c (build_round_expr): Use BUILT_IN_IROUND if
type size matches.
(gfc_build_intrinsic_lib_fndecls): Build iround functions.
From-SVN: r185442
Bernhard Reutner-Fischer [Thu, 15 Mar 2012 16:55:12 +0000 (17:55 +0100)]
fortran-modules.exp: New file which was forgotten in r185430.
2012-03-15 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* lib/fortran-modules.exp: New file which was forgotten in r185430.
From-SVN: r185439
Ulrich Weigand [Thu, 15 Mar 2012 16:43:08 +0000 (16:43 +0000)]
* combine.c (apply_distributive_law): Do not distribute SUBREG.
From-SVN: r185438
Ira Rosen [Thu, 15 Mar 2012 16:38:14 +0000 (16:38 +0000)]
tree-vect-patterns.c (widened_name_p): Rename to ...
ChangeLog:
* tree-vect-patterns.c (widened_name_p): Rename to ...
(type_conversion_p): ... this. Add new argument to determine
if it's a promotion or demotion operation. Check for
CONVERT_EXPR_CODE_P instead of NOP_EXPR.
(vect_recog_dot_prod_pattern): Call type_conversion_p instead
widened_name_p.
(vect_recog_widen_mult_pattern, vect_recog_widen_sum_pattern,
vect_operation_fits_smaller_type, vect_recog_widen_shift_pattern):
Likewise.
(vect_recog_mixed_size_cond_pattern): Likewise and allow
non-constant then and else clauses.
testsuite/ChangeLog:
* gcc.dg/vect/slp-cond-3.c: New test.
* gcc.dg/vect/slp-cond-4.c: New test.
Co-Authored-By: Ulrich Weigand <ulrich.weigand@linaro.org>
From-SVN: r185437
Ira Rosen [Thu, 15 Mar 2012 16:36:48 +0000 (16:36 +0000)]
tree-vectorizer.h (vect_pattern_recog): Add new argument.
ChangeLog:
* tree-vectorizer.h (vect_pattern_recog): Add new argument.
* tree-vect-loop.c (vect_analyze_loop_2): Update call to
vect_pattern_recog.
* tree-vect-patterns.c (widened_name_p): Pass basic block
info to vect_is_simple_use.
(vect_recog_dot_prod_pattern): Fail for basic blocks.
(vect_recog_widen_sum_pattern): Likewise.
(vect_handle_widen_op_by_const): Support basic blocks.
(vect_operation_fits_smaller_type,
vect_recog_over_widening_pattern): Likewise.
(vect_recog_vector_vector_shift_pattern): Support basic blocks.
Update call to vect_is_simple_use.
(vect_recog_mixed_size_cond_pattern): Support basic blocks.
Add printing.
(check_bool_pattern): Add an argument, update call to
vect_is_simple_use and the recursive calls.
(vect_recog_bool_pattern): Update relevant function calls.
Add printing.
(vect_mark_pattern_stmts): Update calls to new_stmt_vec_info.
(vect_pattern_recog_1): Check for reduction only in loops.
(vect_pattern_recog): Add new argument. Support basic blocks.
* tree-vect-stmts.c (vectorizable_conversion): Pass basic block
info to vect_is_simple_use_1.
* tree-vect-slp.c (vect_get_and_check_slp_defs): Support basic
blocks.
(vect_slp_analyze_bb_1): Call vect_pattern_recog.
testsuite/ChangeLog:
* gcc.dg/vect/bb-slp-pattern-1.c: New test.
* gcc.dg/vect/bb-slp-pattern-2.c: New test.
Co-Authored-By: Ulrich Weigand <ulrich.weigand@linaro.org>
From-SVN: r185436
Janne Blomqvist [Thu, 15 Mar 2012 15:14:43 +0000 (17:14 +0200)]
re PR libfortran/52434 (Insufficient number of digits in floating point formatting)
2012-03-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/52434
PR libfortran/48878
PR libfortran/38199
* io/unit.c (get_internal_unit): Default to ROUND_UNSPECIFIED.
(init_units): Likewise.
* io/write_float.def (determine_precision): New function.
(output_float): Take into account buffer with %f format, no need
for our own rounding if unspecified or processor specified
rounding.
(DTOA): Simplify format string, add parameters.
(FDTOA): New macros similar to DTOA, but using %f format.
(OUTPUT_FLOAT_FMT_G): Stack allocate newf, determine correct
precision and fill buffer.
(EN_PREC): New macro.
(determine_en_precision): New function.
(WRITE_FLOAT): For G format, move buffer filling into
output_float_FMT_G, use FDTOA for F format.
(write_float): Increase buffer due to F format.
testsuite ChangeLog:
2012-03-15 Janne Blomqvist <jb@gcc.gnu.org>
PR libfortran/52434
PR libfortran/48878
PR libfortran/38199
* gfortran.dg/edit_real_1.f90: Don't assume roundTiesToAway.
* gfortran.dg/round_1.f03: Likewise.
From-SVN: r185433
Jakub Jelinek [Thu, 15 Mar 2012 13:30:04 +0000 (14:30 +0100)]
re PR middle-end/52592 (compilation failure with undefined reference to `__builtin_iround')
PR middle-end/52592
* builtins.c (expand_builtin_int_roundingfn_2): If expanding
BUILT_IN_IR{INT,OUND}* using optab fails, emit lr{int,ound}*
calls instead of __builtin_ir{int,ound}*.
* gcc.dg/pr52592.c: New test.
Co-Authored-By: Andrew Pinski <apinski@cavium.com>
From-SVN: r185431
Bernhard Reutner-Fischer [Thu, 15 Mar 2012 12:25:47 +0000 (13:25 +0100)]
gfortran testsuite: implicitly cleanup-modules
gcc/ChangeLog:
2012-03-15 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* doc/sourcebuild.texi (cleanup-modules, keep-modules): Update
documentation.
gcc/testsuite/ChangeLog:
2012-03-15 Bernhard Reutner-Fischer <aldot@gcc.gnu.org>
* gfortran.fortran-torture/compile/compile.exp: Simplify.
* gfortran.fortran-torture/execute/execute.exp: Likewise.
* lib/gcc-dg.exp (cleanup-modules): Move to ..
* lib/fortran-modules.exp: .. this new file. Adjust users.
* lib/gfortran-dg.exp (gfortran-dg-runtest,
gfortran-dg-debug-runtest): Call cleanup-modules.
* lib/fortran-torture.exp (fortran-torture-execute,
fortran-torture): Likewise.
* gfortran.dg/coarray/caf.exp: Likewise.
* lib/lto.exp: Likewise.
* gfortran.dg/class_4a.f03: Adjust cleanup-modules and keep-modules.
* gfortran.dg/class_4b.f03: Likewise.
* gfortran.dg/class_4c.f03: Likewise.
* gfortran.dg/class_45a.f03: Likewise.
* gfortran.dg/binding_label_tests_10.f03: Likewise.
* gfortran.dg/binding_label_tests_10_main.f03: Likewise.
* gfortran.dg/binding_label_tests_11.f03: Likewise.
* gfortran.dg/binding_label_tests_11_main.f03: Likewise.
* gfortran.dg/binding_label_tests_13.f03: Likewise.
* gfortran.dg/binding_label_tests_13_main.f03: Likewise.
* gfortran.dg/test_common_binding_labels_2.f03: Likewise.
* gfortran.dg/test_common_binding_labels_2_main.f03: Likewise.
* gfortran.dg/test_common_binding_labels_3.f03: Likewise.
* gfortran.dg/test_common_binding_labels_3_main.f03: Likewise.
* gfortran.dg/whole_file_28.f90: Likewise.
* gfortran.dg/whole_file_29.f90: Likewise.
* gfortran.dg/whole_file_30.f90: Likewise.
* gfortran.dg/whole_file_31.f90: Likewise.
From-SVN: r185430
Ramana Radhakrishnan [Thu, 15 Mar 2012 10:53:30 +0000 (10:53 +0000)]
Fix date from last commit.
From-SVN: r185429
Ramana Radhakrishnan [Thu, 15 Mar 2012 10:50:58 +0000 (10:50 +0000)]
Fix gnu_unique_object handling for arm-linux-gnueabi
2012-03-15 Ramana Radhakrishnan <ramana.radhakrishnan@linaro.org>
* config.gcc (target_type_format_char): New. Document it. Set it for
arm*-*-* .
* configure.ac (gnu_unique_option): Use target_type_format_char in test.
Comment rationale.
* configure: Regenerate .
From-SVN: r185428
Jakub Jelinek [Thu, 15 Mar 2012 10:37:27 +0000 (11:37 +0100)]
re PR tree-optimization/52267 (a&~N where N has all the bits set up till a specific point can be folded to ((unsigned)a) < N)
PR tree-optimization/52267
* tree-vrp.c (masked_increment): New function.
(register_edge_assert_for_2): Derive ASSERT_EXPRs
from (X & CST1) cmp CST2 tests.
* gcc.dg/pr52267.c: New test.
* gcc.dg/tree-ssa/vrp65.c: New test.
* gcc.dg/tree-ssa/vrp66.c: New test.
From-SVN: r185427
Richard Guenther [Thu, 15 Mar 2012 10:04:55 +0000 (10:04 +0000)]
re PR middle-end/52580 (171.swim performance drop on x86 – vectorization doesn’t happen anymore)
2012-03-15 Richard Guenther <rguenther@suse.de>
PR middle-end/52580
* tree-data-ref.c (subscript_dependence_tester_1): Check
all dimensions for non-conflicting access functions.
* gfortran.dg/vect/pr52580.f: New testcase.
From-SVN: r185426
Manuel López-Ibáñez [Thu, 15 Mar 2012 09:57:29 +0000 (09:57 +0000)]
re PR c++/44783 (implement -ftemplate-backtrace-limit=)
/c-family
2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/44783
* c.opt (ftemplate-backtrace-limit) Add.
/cp
2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/44783
* error.c (print_instantiation_partial_context): Use
template_backtrace_limit.
/doc
2012-03-15 Manuel López-Ibáñez <manu@gcc.gnu.org>
PR c++/44783
* doc/invoke.texi [C++ Language Options]: Document
-ftemplate-backtrace-limit.
From-SVN: r185424
Arnaud Charlet [Thu, 15 Mar 2012 09:15:49 +0000 (10:15 +0100)]
[multiple changes]
2012-03-15 Robert Dewar <dewar@adacore.com>
* errout.ads: Add entry for translating -gnateinn to
/MAX_INSTANTIATIONS for VMS.
* hostparm.ads (Max_Instantiations): Moved to Opt.
* opt.ads (Maximum_Instantiations): Moved from Hostparm, and renamed.
* sem_ch12.adb (Maximum_Instantiations): New name of
Max_Instantiations (Analyze_Package_Instantiation): Change error
msg for too many instantiations (mention -gnateinn switch).
* switch-c.adb (Scan_Front_End_Switches): Implement -gnateinn switch.
* switch.ads: Minor comment update.
* usage.adb (Usage): Output line for -maxeinn switch.
* vms_data.ads: Add entry for MAX_INSTANTIATIONS (-gnateinn).
2012-03-15 Yannick Moy <moy@adacore.com>
* alfa.ads Update the decription of ALI sections.
(Alfa_File_Record): Add a component Unit_File_Name to store the
unit file name for subunits.
* get_alfa.adb, put_alfa.adb Adapt to the possible presence of
a unit file name.
* lib-xref-alfa.adb (Add_Alfa_File): For subunits, retrieve the
file name of the unit.
2012-03-15 Yannick Moy <moy@adacore.com>
* sem_ch6.adb (Check_Subprogram_Contract): Do
not issue warning on missing 'Result in postcondition if all
postconditions and contract-cases already get a warning for only
referring to pre-state.
2012-03-15 Bob Duff <duff@adacore.com>
* debug.adb: Add new debug switch -gnatd.U, which disables the
support added below, in case someone trips over a cycle, and needs
to disable this.
* sem_attr.adb (Analyze_Access_Attribute):
Treat Subp'Access as a call for elaboration purposes.
* sem_elab.ads, sem_elab.adb (Check_Elab_Call): Add support
for Subp'Access.
From-SVN: r185422
Vincent Pucci [Thu, 15 Mar 2012 09:11:57 +0000 (09:11 +0000)]
sem.ads, sem.adb (Preanalyze): New routine.
2012-03-15 Vincent Pucci <pucci@adacore.com>
* sem.ads, sem.adb (Preanalyze): New routine.
* sem_ch4.adb (Analyze_Quantified_Expression): Call to the
Preanalyze routine in Sem added. Renaming of Needs_Expansion
into Need_Preanalysis.
* sem_ch6.adb (Preanalyze): Removed.
From-SVN: r185421
Robert Dewar [Thu, 15 Mar 2012 09:10:42 +0000 (09:10 +0000)]
sem_ch4.adb (Analyze_Quantified_Expression): Add comment.
2012-03-15 Robert Dewar <dewar@adacore.com>
* sem_ch4.adb (Analyze_Quantified_Expression): Add comment.
* sem_prag.adb: Minor comment additions.
* sem_attr.adb (Check_First_Last_Valid): Make sure prefix type
is frozen.
From-SVN: r185420
Arnaud Charlet [Thu, 15 Mar 2012 09:09:31 +0000 (10:09 +0100)]
[multiple changes]
2012-03-15 Vincent Pucci <pucci@adacore.com>
* sem_ch4.adb (Analyze_Quantified_Expression):
Preanalyze the condition when the quantified expression will be
further expanded.
2012-03-15 Yannick Moy <moy@adacore.com>
* sem_prag.adb, sem_util.adb, sem_util.ads, sem_attr.adb, sem_ch6.adb,
sem_warn.adb: Minor refactoring, renaming Case_Pragma in CTC_Pragma,
to refer to both Test_Case pragma and Contract_Case pragma (same
acronym as in Spec_CTC_List).
From-SVN: r185419
Robert Dewar [Thu, 15 Mar 2012 09:07:53 +0000 (09:07 +0000)]
sem_prag.adb, [...]: Minor reformatting.
2012-03-15 Robert Dewar <dewar@adacore.com>
* sem_prag.adb, sem_prag.ads, sem_util.ads, sem_attr.adb, sem_ch6.adb,
sem_warn.adb: Minor reformatting.
From-SVN: r185418
Arnaud Charlet [Thu, 15 Mar 2012 09:05:07 +0000 (10:05 +0100)]
[multiple changes]
2012-03-15 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb (Initialized_By_Ctrl_Function): Do not loop over
selector names as the function call always appears at the top selected
component.
2012-03-15 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validate_Access_Subprogram_Instance): keep
Mode_Conformance check for older versions of the language.
2012-03-15 Yannick Moy <moy@adacore.com>
* gnat_ugn.texi Document the extension of option -gnatw.t.
* sem_ch3.adb (Analyze_Declaration): Check for suspicious
contracts only after contract cases have been semantically
analyzed.
* sem_ch6.adb (Check_Subprogram_Contract): Consider also Ensures
components of contract cases for detecting suspicious contracts.
From-SVN: r185417
Tristan Gingold [Thu, 15 Mar 2012 08:50:41 +0000 (08:50 +0000)]
README (EXAMPLES OF FIXES): Update.
2012-03-15 Tristan Gingold <gingold@adacore.com>
* README (EXAMPLES OF FIXES): Update.
From-SVN: r185416
Yannick Moy [Thu, 15 Mar 2012 08:48:36 +0000 (08:48 +0000)]
aspects.adb, [...] (Aspect_Id): New GNAT aspect Aspect_Contract_Case.
2012-03-15 Yannick Moy <moy@adacore.com>
* aspects.adb, aspects.ads (Aspect_Id): New GNAT aspect
Aspect_Contract_Case.
* gnat_rm.texi Document the new pragma/aspect
Contract_Case. Correct the documentation of the existing
pragma/aspect Test_Case with the new semantics.
* sem_attr.adb (Analyze_Attribute): Allow use of 'Result in the
Ensures component of a Contract_Case pragma.
* sem_ch13.adb (Analyze_Aspect_Specifications): Check new aspect
and translate it into a pragma.
(Check_Aspect_At_Freeze_Point): Take into account the new aspect.
* sem_ch3.adb, sinfo.adb, sinfo.ads Renaming of TC (for test case)
into CTC (for contract and test case).
* sem_ch6.adb (Process_PPCs): Generate Check pragmas from
Contract_Case pragmas, similarly to what is done already for
postconditions.
* sem_prag.adb, sem_prag.ads (Check_Contract_Or_Test_Case):
Renaming of Check_Test_Case.
(Analyze_Pragma, Sig_Flags): Take into account the new pragma.
* sem_util.adb, sem_util.ads Renaming to take into account the
new pragma, so that functions which applied only to Test_Case
now apply to both Test_Case and Contract_Case.
* par-prag.adb, sem_warn.adb, snames.ads-tmpl Take into account
the new pragma.
From-SVN: r185415
Tristan Gingold [Thu, 15 Mar 2012 08:47:20 +0000 (08:47 +0000)]
c-parser.c (c_parser_parameter_declaration): Handle #pragma before a parameter.
2012-03-15 Tristan Gingold <gingold@adacore.com>
* c-parser.c (c_parser_parameter_declaration): Handle #pragma
before a parameter.
From-SVN: r185413
Robert Dewar [Thu, 15 Mar 2012 08:46:38 +0000 (08:46 +0000)]
sem_ch6.ads: Minor comment updates.
2012-03-15 Robert Dewar <dewar@adacore.com>
* sem_ch6.ads: Minor comment updates.
* sem_ch12.adb: Minor comment clarification.
From-SVN: r185412
Tristan Gingold [Thu, 15 Mar 2012 08:44:42 +0000 (08:44 +0000)]
dwarf2out.c (gen_subprogram_die): Require dwarf unwinding to use DW_OP_call_frame_cfa.
2012-03-15 Tristan Gingold <gingold@adacore.com>
* dwarf2out.c (gen_subprogram_die): Require dwarf unwinding to
use DW_OP_call_frame_cfa.
From-SVN: r185411
Arnaud Charlet [Thu, 15 Mar 2012 08:44:33 +0000 (09:44 +0100)]
[multiple changes]
2012-03-15 Ed Falis <falis@adacore.com>
* s-vxwork-ppc.ads: Update copyright.
2012-03-15 Robert Dewar <dewar@adacore.com>
* sem_ch5.adb: Minor reformatting.
2012-03-15 Ed Schonberg <schonberg@adacore.com>
* exp_ch3.adb (Expand_N_Object_Declaration): When rewriting the
declaration of a class-wide object, retain the Ekind to prevent
subsequent misuse of constants.
2012-03-15 Yannick Moy <moy@adacore.com>
* gnat_rm.texi, gnat_ugn.texi: Minor correction of invariant
terminology.
2012-03-15 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb (Initialized_By_Ctrl_Function): Add code to
process the case when a function call appears in object.operation
format.
2012-03-15 Ed Schonberg <schonberg@adacore.com>
* sem_ch6.ads, sem_ch6.adb (Check_Subtype_Conformant): add
Get_Inst formal, so that conformance within an instantiation
follows renamings of formals. This is similar to what is already
done in Check_Mode_conformant.
* sem_ch12.adb (Vailidate_Access_Subprogram_Instance): check that
formal and actual are subtype conformant. Previously only mode
conformance was required.
From-SVN: r185410
Arnaud Charlet [Thu, 15 Mar 2012 08:39:05 +0000 (09:39 +0100)]
[multiple changes]
2012-03-15 Robert Dewar <dewar@adacore.com>
* par-ch6.adb, einfo.ads, sem_eval.adb, sem_eval.ads,
sem_case.adb: Minor reformatting.
2012-03-15 Robert Dewar <dewar@adacore.com>
* exp_attr.adb (Expand_N_Attribute_Reference): Add handling
of First_Valid/Last_Valid.
* sem_attr.adb (Check_First_Last_Valid): New procedure
(Analyze_Attribute): Add handling of First_Valid and Last_Valid
(Eval_Attribute): ditto.
* snames.ads-tmpl: Add entries for First_Valid and Last_Valid.
2012-03-15 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_Predicated_Loop): Suppress warnings on
loop variable, for the unusual case where the range has a single
element and the loop variable has no visible assignment to it.
2012-03-15 Vincent Pucci <pucci@adacore.com>
* exp_ch4.adb (Expand_N_Quantified_Expression): Expand the
original quantified expression node.
* sem_ch4.adb (Analyze_Quantified_Expression): Properly analyze
the quantified expression and preserve the original non-analyzed
quantified expression when an expansion is needed.
* sem_ch5.adb (Analyze_Iteration_Scheme): Special treatment
for quantified expressions.
(Analyze_Iterator_Specification): Special treatment for quantified
expressions.
2012-03-15 Ed Falis <falis@adacore.com>
* s-vxwork-ppc.ads: Update FP_CONTEXT so name of former pad
field matches VxWorks headers.
From-SVN: r185409
Oleg Endo [Thu, 15 Mar 2012 01:18:04 +0000 (01:18 +0000)]
fpul-usage-1.c: New.
* gcc.target/sh/fpul-usage-1.c: New.
From-SVN: r185406
Joseph Myers [Thu, 15 Mar 2012 00:28:23 +0000 (00:28 +0000)]
* sv.po: Update.
From-SVN: r185404
GCC Administrator [Thu, 15 Mar 2012 00:18:42 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r185403
Oleg Endo [Wed, 14 Mar 2012 22:57:58 +0000 (22:57 +0000)]
re PR target/49468 (SH Target: inefficient integer abs code)
PR target/49468
* gcc.target/sh/pr49468-si.c: Make dg-skip-if not the first directive.
* gcc.target/sh/pr49468-di.c: Likewise.
From-SVN: r185397
H.J. Lu [Wed, 14 Mar 2012 22:20:17 +0000 (22:20 +0000)]
Add -maddress-mode=short|long for x86
2012-03-14 H.J. Lu <hongjiu.lu@intel.com>
PR target/50797
* config/i386/i386-opts.h (pmode): New.
* config/i386/i386.c (ix86_option_override_internal): Properly
check and set ix86_pmode.
* config/i386/i386.h (Pmode): Check ix86_pmode instead of
TARGET_64BIT.
* config/i386/i386.opt (maddress-mode=): New.
* doc/invoke.texi: Document -maddress-mode=short|long for x86.
From-SVN: r185396
Rainer Orth [Wed, 14 Mar 2012 18:01:06 +0000 (18:01 +0000)]
Remove MIPS_DEBUGGING_INFO support
* dwarf2cfi.c (def_cfa_0): Remove MIPS_DEBUGGING_INFO handling.
(dwarf2out_do_cfi_asm): Likewise.
* dwarf2out.c (output_call_frame_info): Remove MIPS_DEBUGGING_INFO
handling.
(add_data_member_location_attribute): Likewise.
(gen_array_type_die): Likewise.
(gen_subprogram_die): Likewise.
(gen_producer_string): Likewise.
* sdbout.c (sdbout_begin_prologue): Declare unconditionally.
Remove MIPS_DEBUGGING_INFO handling.
(sdb_debug_hooks): Likewise.
(sdbout_begin_block): Likewise.
(sdbout_end_block): Likewise.
(sdbout_begin_prologue): Likewise.
(sdbout_start_source_file): Likewise.
(sdbout_end_source_file): Likewise.
(sdbout_init): Likewise.
* system.h (MIPS_DEBUGGING_INFO): Poison.
From-SVN: r185395
Rainer Orth [Wed, 14 Mar 2012 17:58:35 +0000 (17:58 +0000)]
Remove non-GAS non-ELF support in alpha backend
* config/alpha/alpha.c [HAVE_STAMP_H]: Remove.
(alpha_file_start) [MS_STAMP]: Remove.
* config/alpha/elf.h (TARGET_GAS): Remove.
* config/alpha/freebsd.h (TARGET_DEFAULT): Remove.
* config/alpha/linux.h (TARGET_DEFAULT): Remove.
* config/alpha/netbsd.h (TARGET_DEFAULT): Remove.
* config/alpha/vms.h (TARGET_DEFAULT): Remove.
* config.gcc (alpha*-*-linux*): Remove target_cpu_default.
(alpha*-*-freebsd*): Likewise.
(alpha*-*-netbsd*): Likewise.
(alpha*-*-openbsd*): Likewise.
(alpha*-*-*): Remove target_cpu_default2.
* config/alpha/alpha.c (alpha_output_filename): Remove !TARGET_GAS
handling.
* config/alpha/alpha.h (TARGET_AS_CAN_SUBTRACT_LABELS): Remove.
(TARGET_AS_SLASH_BEFORE_SUFFIX): Remove.
* config/alpha/alpha.c (print_operand): Always assume
TARGET_AS_SLASH_BEFORE_SUFFIX.
* config/alpha/alpha.md ("*builtin_setjmp_receiver_er_sl_1"):
Remove TARGET_AS_CAN_SUBTRACT_LABELS.
("*builtin_setjmp_receiver_er_1"): Remove.
* config/alpha/alpha.opt (malpha-as): Remove.
(mgas): Ignore.
* doc/invoke.texi (Option Summary, DEC Alpha Options): Remove
-malpha-as, -mgas.
Remove DEC Unix reference.
* config/alpha/alpha.h (OBJECT_FORMAT_COFF): Remove.
(EXTENDED_COFF): Remove.
* config/alpha/elf.h (OBJECT_FORMAT_COFF): Don't undef.
(EXTENDED_COFF): Don't undef.
* config/alpha/alpha.c (alpha_file_start): Always assume
OBJECT_FORMAT_ELF.
Don't set targetm.asm_file_start_file_directive.
[!OBJECT_FORMAT_ELF]: Remove.
(TARGET_ASM_FILE_START_FILE_DIRECTIVE): Remove.
* config/alpha/alpha.h (SDB_DEBUGGING_INFO): Remove.
(DBX_DEBUGGING_INFO): Remove.
(MIPS_DEBUGGING_INFO): Remove.
(PREFERRED_DEBUGGING_TYPE): Remove.
(DBX_OUTPUT_SOURCE_LINE): Remove.
(SDB_OUTPUT_SOURCE_LINE): Remove.
(DBX_CONTIN_LENGTH): Remove.
(NO_DBX_FUNCTION_END): Remove.
(ASM_STABS_OP): Remove.
(ASM_STABN_OP): Remove.
(ASM_STABD_OP): Remove.
(SDB_ALLOW_FORWARD_REFERENCES): Remove.
(SDB_ALLOW_UNKNOWN_REFERENCES): Remove.
(PUT_SDB_DEF): Remove.
(PUT_SDB_PLAIN_DEF): Remove.
(PUT_SDB_TYPE): Remove.
(sdb_label_count): Remove.
(PUT_SDB_BLOCK_START): Remove.
(PUT_SDB_BLOCK_END): Remove.
(PUT_SDB_FUNCTION_START): Remove.
(PUT_SDB_FUNCTION_END): Remove.
(PUT_SDB_EPILOGUE_END): Remove.
* config/alpha/elf.h (SDB_DEBUGGING_INFO): Don't undef.
(MIPS_DEBUGGING_INFO): Don't undef.
(DBX_DEBUGGING_INFO): Don't undef.
* config/alpha/vms.h (SDB_DEBUGGING_INFO): Don't undef.
(MIPS_DEBUGGING_INFO): Don't undef.
(DBX_DEBUGGING_INFO): Don't undef.
* config/alpha/freebsd.h (DBX_CONTIN_CHAR): Remove.
* config/alpha/alpha.c (alpha_option_override): Remove SDB_DEBUG
handling.
(alpha_start_function): Likewise.
(sdb_label_count): Remove.
(alpha_output_filename): Remove DBX_DEBUG handling.
(alpha_file_start): Likewise.
From-SVN: r185394
Rainer Orth [Wed, 14 Mar 2012 17:08:03 +0000 (17:08 +0000)]
Remove obsolete Solaris 8 support
libstdc++-v3:
* config/os/solaris/solaris2.8: Rename to ...
* config/os/solaris/solaris2.9: ... this.
* config/abi/post/solaris2.8: Rename to ...
* config/abi/post/solaris2.9: ... this.
* configure.host (os_include_dir): Remove solaris2.8.
Reflect renaming.
(abi_baseline_pair): Remove *-*-solaris2.8.
Reflect renaming.
* configure.ac (GLIBCXX_CHECK_MATH_PROTO): Remove
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
* acinclude.m4 (GLIBCXX_CHECK_MATH_PROTO): Remove
(GLIBCXX_CHECK_STDLIB_PROTO): Remove.
(GLIBCXX_CHECK_GTHREADS): Remove Solaris 8 handling.
* crossconfig.m4 (GLIBCXX_CROSSCONFIG): Remove *-solaris2.8
handling.
* configure: Regenerate.
* config.h.in: Regenerate.
* config/os/solaris/solaris2.9/os_defines.h
(__CORRECT_ISO_CPP_MATH_H_PROTO): Define.
(__CORRECT_ISO_CPP_STDLIB_H_PROTO): Define.
* include/c_global/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1
to __CORRECT_ISO_CPP_MATH_H_PROTO.
[!__CORRECT_ISO_CPP_MATH_H_PROTO2]: Remove.
* include/tr1/cmath: Rename __CORRECT_ISO_CPP_MATH_H_PROTO1 to
__CORRECT_ISO_CPP_MATH_H_PROTO.
* doc/xml/manual/configure.xml (Configure, --enable-libstdcxx-threads):
Remove Solaris 8 reference.
* testsuite/27_io/basic_istream/extractors_arithmetic/char/12.cc:
Don't xfail on *-*-solaris2.8.
* testsuite/27_io/basic_istream/extractors_arithmetic/wchar_t/12.cc:
Likewise.
* testsuite/ext/enc_filebuf/char/13598.cc: Don't xfail on
*-*-solaris2.8.
libjava:
* configure.ac (THREADLIBS): Remove *-*-solaris2.8 handling.
* configure: Regenerate.
libgcc:
* config/i386/sol2-unwind.h (x86_fallback_frame_state): Remove
Solaris 8 handling.
* config/sparc/sol2-unwind.h (sparc64_is_sighandler): Remove
Solaris 8 handling.
(sparc_is_sighandler): Likewise.
libcpp:
* lex.c: Remove Solaris 8 reference.
gcc/testsuite:
* g++.dg/warn/miss-format-1.C: Remove *-*-solaris2.8 handling.
* gcc.dg/c99-stdint-6.c: Likewise.
* gcc.dg/lto/20090210_0.c: Likewise.
* gcc.dg/pr28796-2.c: Don't skip on sparc*-sun-solaris2.8.
* gcc.dg/pragma-init-fini.c: Don't skip on i?86-*-solaris2.8.
* gcc.dg/pragma-init-fini-2.c: Likewise.
* gcc.dg/torture/pr47917.c: Remove *-*-solaris2.8 handling.
* gcc.target/i386/pr22076.c: Remove i?86-*-solaris2.8 handling.
* gcc.target/i386/pr22152.c: Likewise.
* gcc.target/i386/vect8-ret.c: Likewise.
* lib/target-supports.exp (add_options_for_tls): Remove Solaris 8
handling.
gcc:
* config.gcc (enable_obsolete): Remove *-*-solaris2.8*.
(*-*-solaris2.[0-8], *-*-solaris2.[0-8].*): Mark unsupported.
(i[34567]86-*-solaris2*, x86_64-*-solaris2.1[0-9]*): Remove
Solaris 8 support.
* configure.ac (gcc_cv_ld_hidden): Remove *-*-solaris2.8*.
(ld_tls_support): Remove Solaris 8 references.
(lwp_dir, lwp_spec): Remove support for alternate thread library.
* acinclude.m4 (gcc_cv_initfini_array): Remove *-*-solaris2.*
tests.
* configure: Regenerate.
* config.in: Regenerate.
* config/sol2.h (LINK_SPEC): Remove LIB_THREAD_LDFLAGS_SPEC.
* config/i386/sol2.h: Remove Solaris 8 references.
* doc/install.texi (Specific, i?86-*-solaris2.[89]): Rename to ...
(i?86-*-solaris2.9): ... this.
Remove Solaris 8 references.
(Specific, *-*-solaris2*): Document Solaris 8 removal.
Remove Solaris 8 references.
fixincludes:
* inclhack.def (math_exception): Remove duplicate.
(solaris_cond_init): Remove.
(solaris_sys_va_list): Remove Solaris 8 support.
* fixincl.x: Regenerate.
* tests/base/pthread.h [SOLARIS_COND_INIT_CHECK]: Remove.
From-SVN: r185392
Paolo Carlini [Wed, 14 Mar 2012 17:00:24 +0000 (17:00 +0000)]
2012-03-14 Paolo Carlini <paolo.carlini@oracle.com>
Tweak ChangeLog.
From-SVN: r185391
Rainer Orth [Wed, 14 Mar 2012 16:33:37 +0000 (16:33 +0000)]
Remove obsolete IRIX 6.5 support
libstdc++-v3:
* configure.host (irix6.5*): Remove.
* config/os/irix: Remove.
* config/io/basic_file_stdio.cc (__basic_file<char>::showmanyc())
[_GLIBCXX_FIONREAD_TAKES_OFF_T]: Remove.
* doc/xml/faq.xml: Remove IRIX reference.
* doc/xml/manual/using.xml (Finding Dynamic or Shared Libraries):
Remove IRIX example.
* testsuite/20_util/shared_ptr/thread/default_weaktoshared.cc:
Remove mips-sgi-irix6* handling.
* testsuite/20_util/shared_ptr/thread/mutex_weaktoshared.cc: Likewise.
* testsuite/21_strings/basic_string/pthread18185.cc: Likewise.
* testsuite/21_strings/basic_string/pthread4.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-1.cc: Likewise.
* testsuite/22_locale/locale/cons/12658_thread-2.cc: Likewise.
* testsuite/23_containers/list/pthread1.cc: Likewise.
* testsuite/23_containers/list/pthread5.cc: Likewise.
* testsuite/23_containers/map/pthread6.cc: Likewise.
* testsuite/23_containers/vector/debug/multithreaded_swap.cc: Likewise.
* testsuite/27_io/basic_ofstream/pthread2.cc: Likewise.
* testsuite/27_io/basic_ostringstream/pthread3.cc: Likewise.
* testsuite/30_threads/async/42819.cc: Likewise.
* testsuite/30_threads/async/49668.cc: Likewise.
* testsuite/30_threads/async/any.cc: Likewise.
* testsuite/30_threads/async/async.cc: Likewise.
* testsuite/30_threads/async/launch.cc: Likewise.
* testsuite/30_threads/async/sync.cc: Likewise.
* testsuite/30_threads/call_once/39909.cc: Likewise.
* testsuite/30_threads/call_once/49668.cc: Likewise.
* testsuite/30_threads/call_once/call_once1.cc: Likewise.
* testsuite/30_threads/condition_variable/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable/members/2.cc: Likewise.
* testsuite/30_threads/condition_variable/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/condition_variable_any/50862.cc: Likewise.
* testsuite/30_threads/condition_variable_any/cons/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/1.cc: Likewise.
* testsuite/30_threads/condition_variable_any/members/2.cc: Likewise.
* testsuite/30_threads/future/cons/move.cc: Likewise.
* testsuite/30_threads/future/members/45133.cc: Likewise.
* testsuite/30_threads/future/members/get.cc: Likewise.
* testsuite/30_threads/future/members/get2.cc: Likewise.
* testsuite/30_threads/future/members/share.cc: Likewise.
* testsuite/30_threads/future/members/valid.cc: Likewise.
* testsuite/30_threads/future/members/wait.cc: Likewise.
* testsuite/30_threads/future/members/wait_for.cc: Likewise.
* testsuite/30_threads/future/members/wait_until.cc: Likewise.
* testsuite/30_threads/lock/1.cc: Likewise.
* testsuite/30_threads/lock/2.cc: Likewise.
* testsuite/30_threads/lock/3.cc: Likewise.
* testsuite/30_threads/lock/4.cc: Likewise.
* testsuite/30_threads/lock_guard/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/cons/1.cc: Likewise.
* testsuite/30_threads/mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/mutex/lock/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/packaged_task/49668.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/1.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/2.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/3.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/alloc.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move.cc: Likewise.
* testsuite/30_threads/packaged_task/cons/move_assign.cc: Likewise.
* testsuite/30_threads/packaged_task/members/get_future.cc: Likewise.
* testsuite/30_threads/packaged_task/members/get_future2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke3.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke4.cc: Likewise.
* testsuite/30_threads/packaged_task/members/invoke5.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset.cc: Likewise.
* testsuite/30_threads/packaged_task/members/reset2.cc: Likewise.
* testsuite/30_threads/packaged_task/members/swap.cc: Likewise.
* testsuite/30_threads/packaged_task/members/valid.cc: Likewise.
* testsuite/30_threads/promise/cons/1.cc: Likewise.
* testsuite/30_threads/promise/cons/alloc.cc: Likewise.
* testsuite/30_threads/promise/cons/move.cc: Likewise.
* testsuite/30_threads/promise/cons/move_assign.cc: Likewise.
* testsuite/30_threads/promise/members/get_future.cc: Likewise.
* testsuite/30_threads/promise/members/get_future2.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception.cc: Likewise.
* testsuite/30_threads/promise/members/set_exception2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value.cc: Likewise.
* testsuite/30_threads/promise/members/set_value2.cc: Likewise.
* testsuite/30_threads/promise/members/set_value3.cc: Likewise.
* testsuite/30_threads/promise/members/swap.cc: Likewise.
* testsuite/30_threads/recursive_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/dest/destructor_locked.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/native_handle/typesizes.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_for/3.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/1.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/try_lock_until/2.cc:
Likewise.
* testsuite/30_threads/recursive_timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/shared_future/cons/move.cc: Likewise.
* testsuite/30_threads/shared_future/members/45133.cc: Likewise.
* testsuite/30_threads/shared_future/members/get.cc: Likewise.
* testsuite/30_threads/shared_future/members/get2.cc: Likewise.
* testsuite/30_threads/shared_future/members/valid.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_for.cc: Likewise.
* testsuite/30_threads/shared_future/members/wait_until.cc: Likewise.
* testsuite/30_threads/this_thread/1.cc: Likewise.
* testsuite/30_threads/this_thread/2.cc: Likewise.
* testsuite/30_threads/this_thread/3.cc: Likewise.
* testsuite/30_threads/this_thread/4.cc: Likewise.
* testsuite/30_threads/thread/cons/1.cc: Likewise.
* testsuite/30_threads/thread/cons/2.cc: Likewise.
* testsuite/30_threads/thread/cons/3.cc: Likewise.
* testsuite/30_threads/thread/cons/4.cc: Likewise.
* testsuite/30_threads/thread/cons/49668.cc: Likewise.
* testsuite/30_threads/thread/cons/5.cc: Likewise.
* testsuite/30_threads/thread/cons/6.cc: Likewise.
* testsuite/30_threads/thread/cons/7.cc: Likewise.
* testsuite/30_threads/thread/cons/8.cc: Likewise.
* testsuite/30_threads/thread/cons/9.cc: Likewise.
* testsuite/30_threads/thread/cons/moveable.cc: Likewise.
* testsuite/30_threads/thread/members/1.cc: Likewise.
* testsuite/30_threads/thread/members/2.cc: Likewise.
* testsuite/30_threads/thread/members/3.cc: Likewise.
* testsuite/30_threads/thread/members/4.cc: Likewise.
* testsuite/30_threads/thread/members/5.cc: Likewise.
* testsuite/30_threads/thread/members/hardware_concurrency.cc: Likewise.
* testsuite/30_threads/thread/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/thread/swap/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/cons/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/dest/destructor_locked.cc: Likewise.
* testsuite/30_threads/timed_mutex/lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/native_handle/typesizes.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_for/3.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/1.cc: Likewise.
* testsuite/30_threads/timed_mutex/try_lock_until/2.cc: Likewise.
* testsuite/30_threads/timed_mutex/unlock/1.cc: Likewise.
* testsuite/30_threads/try_lock/1.cc: Likewise.
* testsuite/30_threads/try_lock/2.cc: Likewise.
* testsuite/30_threads/try_lock/3.cc: Likewise.
* testsuite/30_threads/try_lock/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/1.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/2.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/3.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/4.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/5.cc: Likewise.
* testsuite/30_threads/unique_lock/cons/6.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/1.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/2.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/3.cc: Likewise.
* testsuite/30_threads/unique_lock/locking/4.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/1.cc: Likewise.
* testsuite/30_threads/unique_lock/modifiers/2.cc: Likewise.
* testsuite/ext/rope/pthread7-rope.cc: Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/default_weaktoshared.cc:
Likewise.
* testsuite/tr1/2_general_utilities/shared_ptr/thread/mutex_weaktoshared.cc:
Likewise.
* testsuite/23_containers/vector/capacity/resize/1.cc: Remove
dg-options for mips*-*-irix6*.
* testsuite/27_io/ios_base/storage/1.cc: Likewise.
* testsuite/27_io/ios_base/storage/2.cc: Likewise.
* testsuite/27_io/ios_base/storage/3.cc: Likewise.
* testsuite/lib/libstdc++.exp (v3-build_support): Remove IRIX 6
workaround.
libjava:
* configure.ac (libgcj_cv_exidx): Remove IRIX 6 ld workaround.
(mips-sgi-irix6*): Remove.
(mips-sgi-irix*): Remove.
(AC_CHECK_HEADERS): Remove bstring.h.
* configure: Regenerate.
* include/config.h.in: Regenerate.
* configure.host (mips-sgi-irix6*): Remove.
* include/posix-signal.h [__sgi__]: Remove.
* gnu/java/net/natPlainDatagramSocketImplPosix.cc
[HAVE_BSTRING_H]: Remove.
* gnu/java/net/natPlainDatagramSocketImplWin32.cc: Likewise.
* gnu/java/net/natPlainSocketImplPosix.cc: Likewise.
libitm:
* configure.tgt (*-*-irix6*): Remove.
libgomp:
* configure.tgt (mips-sgi-irix6*): Remove.
libgfortran:
* intrinsics/c99_functions.c [__sgi__ && !HAVE_COMPLEX_H]: Remove.
libgcc:
* config.host (mips-sgi-irix6.5*): Remove.
* config/mips/irix-crti.S: Remove.
* config/mips/irix-crtn.S: Remove.
* config/mips/irix6-unwind.h: Remove.
* config/mips/t-irix6: Remove.
* config/mips/t-slibgcc-irix: Remove.
gnattools:
* configure.ac (mips-sgi-irix*): Remove.
* configure: Regenerate.
gcc/testsuite:
* g++.dg/other/anon5.C: Don't skip on mips-sgi-irix*.
* g++.dg/tree-prof/partition1.C: Likewise.
* g++.dg/tree-prof/partition2.C: Likewise.
* g++.old-deja/g++.other/init19.C: Remove mips-sgi-irix*
handling.
* gcc.c-torture/compile/labels-3.c: Remove dg-options.
* gcc.c-torture/execute/
20010724-1.c: Remove.
* gcc.c-torture/execute/
20010724-1.x: Remove.
* gcc.c-torture/execute/
20040208-2.c: Remove.
* gcc.c-torture/execute/
20040208-2.x: Remove.
* gcc.c-torture/execute/ieee/
20000320-1.c [__mips__ && __sgi__]:
Remove.
(main) [__mips__ && __sgi__]: Remove.
* gcc.c-torture/execute/ieee/copysign1.c: Remove IRIX reference.
* gcc.c-torture/execute/ieee/copysign2.c: Likewise.
* gcc.c-torture/execute/ieee/mul-subnormal-single-1.x: Remove
mips-sgi-irix6* handling.
* gcc.dg/cpp/assert4.c [__mips__]: Remove __sgi__, sgi.
* gcc.dg/torture/
20090618-1.c: Don't skip on mips-sgi-irix*.
* gcc.dg/torture/builtin-frexp-1.c: Remove mips*-*-irix6*
handling.
* gcc.dg/torture/builtin-logb-1.c: Likewise.
* gcc.dg/torture/pr47917.c: Remove mips-sgi-irix6.5 handling.
* gcc.dg/tree-ssa/ssa-store-ccp-3.c: Don't skip on mips*-*-irix*.
* gcc.misc-tests/linkage.exp: Remove mips-sgi-irix6* handling.
* gcc.target/mips/args-1.c [!__sgi__]: Remove.
* gcc.target/mips/interrupt_handler-2.c: Don't skip on
mips-sgi-irix6*.
* gcc.target/mips/interrupt_handler-3.c: Likewise.
* gcc.target/mips/save-restore-1.c: Don't skip on mips-sgi-irix6*.
* gcc.target/mips/save-restore-3.c: Likewise.
* gcc.target/mips/save-restore-4.c: Likewise.
* gcc.target/mips/save-restore-5.c: Likewise.
* gfortran.dg/g77/cabs.f: Don't xfail on mips-sgi-irix6*.
* lib/prune.exp (prune_gcc_output): Remove pruning of IRIX 6 ld
messages.
* lib/target-libpath.exp (set_ld_library_path_env_vars): Remove
IRIX 6 handling.
(restore_ld_library_path_env_vars): Likewise.
* lib/target-supports.exp (check_profiling_available): Remove
mips*-*-irix* handling.
(check_ascii_locale_available): Remove mips-sgi-irix* handling.
(add_options_for_c99_runtime): Remove mips-sgi-irix6.5* handling.
* objc.dg/stabs-1.m: Don't xfail on mips-sgi-irix6.5.
gcc/ada:
* gcc-interface/Makefile.in (mips-sgi-irix6*): Remove.
* a-intnam-irix.ads, mlib-tgt-specific-irix.adb,
s-intman-irix.adb, s-mastop-irix.adb, s-osinte-irix.adb,
s-osinte-irix.ads, s-proinf-irix-athread.adb,
s-proinf-irix-athread.ads, s-taprop-irix.adb, s-tasinf-irix.ads,
system-irix-n32.ads, system-irix-n64.ads, system-irix-o32.ads:
Remove.
* adaint.c [__mips && __sgi]: Remove.
(__gnat_number_of_cpus) [__mips && __sgi]: Remove.
[IS_CROSS && !(__mips && __sgi)]: Remove.
* adaint.h [sgi && _LFAPI]: Remove.
* cstreams.c (__gnat_full_name) [sgi]: Remove.
* env.c (__gnat_unsetenv) [__mips && __sgi]: Remove.
(__gnat_clearenv) [__mips && __sgi]: Remove.
* errno.c (_SGI_MP_SOURCE): Remove.
* gsocket.h [sgi]: Remove.
* init.c: Remove IRIX reference.
[sgi]: Remove.
* link.c [sgi]: Remove.
* s-oscons-tmplt.c [__mips && __sgi] (IOV_MAX): Don't define.
(main) [__mips && __sgi] (MAX_tv_sec): Don't define.
(CLOCK_SGI_FAST, CLOCK_SGI_CYCLE): Remove.
* sysdep.c [sgi]: Remove.
(getc_immediate_common) [sgi]: Remove.
(__gnat_localtime_tzoff) [sgi]: Remove.
* terminals.c [__mips && __sgi] (IRIX): Don't define.
[IRIX] (USE_GETPTY): Don't define.
(allocate_pty_desc) [USE_GETPTY]: Remove.
* g-traceb.ads: Remove IRIX reference.
* g-trasym.ads: Likewise.
* memtrack.adb: Likewise.
* s-interr-sigaction.adb: Likewise.
* gnat_rm.texi (Implementation Advice): Remove SGI info.
(Implementation Defined Characteristics): Likewise.
* gnat_ugn.texi (Summary of Run-Time Configurations, mips-irix):
Remove.
(Irix-Specific Considerations): Remove.
gcc/cp:
* Make-lang.in (doc/g++.1): Remove IRIX 6.5 reference.
gcc:
* config.gcc (enable_obsolete): Remove mips-sgi-irix6.5.
(mips-sgi-irix6.5*): Remove.
* config.host (mips-sgi-irix*): Remove.
* configure.ac (enable_fixed_point): Remove mips*-sgi-irix*.
(set_have_as_tls): Remove *-*-irix6*.
(gcc_cv_ld_static_dynamic): Remove mips-sgi-irix6*.
* configure: Regenerate.
* config/mips/iris6.h: Remove.
* config/mips/iris6.opt: Remove.
* config/mips/t-irix6: Remove.
* config/mips/mips.h (TARGET_GPWORD): Remove IRIX 6 N64 handling.
(TARGET_IRIX6): Remove.
(TARGET_CPU_CPP_BUILTINS): Remove IRIX 6 handling.
Don't define LANGUAGE_C, _LANGUAGE_C for Objective-C.
* config/mips/mips.c (mips_build_builtin_va_list): Remove IRIX 6
handling.
(mips_file_start): Likewise.
* config/mips/mips-protos.h (irix_asm_output_align): Remove.
* config/mips/driver-native.c [__sgi__]: Remove.
(host_detect_local_cpu) [__sgi__]: Remove.
* config/mips/gnu-user.h: Remove iris5.h reference.
* config/mips/mips-modes.def: Remove IRIX 6 reference.
* config/mips/gnu-user64.h (MIPS_TFMODE_FORMAT): Remove.
* config/mips/mips.c (mips_option_override) [MIPS_TFMODE_FORMAT]:
Remove.
* gcc.c (main): Move asm_debug initialization ...
(asm_debug): ... here.
* ginclude/stddef.h (__STDDEF_H__): Don't define.
* defaults.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Remove.
* system.h (LINK_ELIMINATE_DUPLICATE_LDIRECTORIES): Poison.
* collect2.c [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
(main) [LINK_ELIMINATE_DUPLICATE_LDIRECTORIES]: Remove.
[LINK_ELIMINATE_DUPLICATE_LDIRECTORIES] (is_in_args): Remove.
* doc/tm.texi.in (Driver, LINK_ELIMINATE_DUPLICATE_LDIRECTORIES):
Remove.
* doc/tm.texi: Regenerate.
* doc/invoke.texi (Debugging Options, -gdwarf-<version>): Remove
IRIX 6 reference.
(MIPS Options, -march): Remove IRIX reference.
* doc/install.texi (Binaries, SGI IRIX): Remove.
(Specific, mips-sgi-irix6): Document IRIX 6.5 removal, remove rest
of section.
* doc/trouble.texi (Interoperation): Remove -lgl_s handling.
fixincludes:
* inclhack.def (broken_cabs): Remove IRIX and SunOS 4 support.
(irix___restrict): Remove.
(irix___generic1): Remove.
(irix___generic2): Remove.
(irix_asm_apostrophe): Remove.
(irix_complex): Remove.
(irix_pthread_init): Remove.
(irix_socklen_t): Remove.
(irix_stdint_c99_mode): Remove.
(irix_stdint_c99_types): Remove.
(irix_stdint_c99_macros): Remove.
(irix_stdio_va_list): Remove IRIX 6.5 support.
(irix_wcsftime): Remove.
(stdio_va_list): Remove IRIX 6.5 support.
(svr4_profil): Remove IRIX bypass.
* fixincl.x: Regenerate.
* tests/base/complex.h [IRIX_COMPLEX_CHECK]: Remove.
* tests/base/internal/math_core.h: Remove.
* tests/base/internal/sgimacros.h: Remove.
* tests/base/internal/wchar_core.h: Remove.
* tests/base/math.h [BROKEN_CABS_CHECK]: Remove IRIX and SunOS 4
support.
* tests/base/pthread.h [IRIX_PTHREAD_INIT_CHECK]: Remove.
* tests/base/stdint-irix65.h: Remove.
* tests/base/stdint.h [IRIX_STDINT_C99_MODE_CHECK]: Remove.
* tests/base/sys/asm.h: Remove.
* tests/base/sys/socket.h [IRIX_SOCKLEN_T_CHECK]: Remove.
contrib:
* config-list.mk (LIST): Remove mips-sgi-irix6.5.
toplevel:
* MAINTAINERS (OS Port Maintainers): Remove irix.
* configure.ac (enable_libgomp): Remove *-*-irix6*.
(unsupported_languages): Remove mips-sgi-irix6.*.
(noconfigdirs): Don't add ${libgcj} for mips*-*-irix6*.
(with_stabs): Remove.
* configure: Regenerate.
From-SVN: r185390
Martin Jambor [Wed, 14 Mar 2012 16:28:20 +0000 (17:28 +0100)]
expr.c (expand_assignment): Use expand_expr with EXPAND_WRITE when expanding MEM_REFs...
2012-03-14 Martin Jambor <mjambor@suse.cz>
* expr.c (expand_assignment): Use expand_expr with EXPAND_WRITE
when expanding MEM_REFs, MEM_TARGET_REFs and handled_component
bases.
(expand_expr_real_1): Do not handle misalignment if modifier is
EXPAND_WRITE.
From-SVN: r185389