Georg-Johann Lay [Tue, 20 Mar 2012 17:38:29 +0000 (17:38 +0000)]
progmem.h (pgm_read_char): Define depending on __AVR_HAVE_LPMX__
* gcc.target/avr/progmem.h (pgm_read_char): Define depending on
__AVR_HAVE_LPMX__
From-SVN: r185583
Jonathan Wakely [Tue, 20 Mar 2012 17:10:10 +0000 (17:10 +0000)]
Correct date in ChangeLog.
From-SVN: r185582
Jonathan Wakely [Tue, 20 Mar 2012 17:01:19 +0000 (17:01 +0000)]
stl_list.h (list::_M_size): Use NSDMI.
* include/bits/stl_list.h (list::_M_size): Use NSDMI.
* testsuite/23_containers/list/requirements/dr438/assign_neg.cc:
Adjust line numbers.
* testsuite/23_containers/list/requirements/dr438/
constructor_1_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/
constructor_2_neg.cc: Likewise.
* testsuite/23_containers/list/requirements/dr438/insert_neg.cc:
Likewise.
From-SVN: r185580
Jakub Jelinek [Tue, 20 Mar 2012 16:51:41 +0000 (17:51 +0100)]
re PR target/52607 (v4df __builtin_shuffle with {0,2,1,3} or {1,3,0,2})
PR target/52607
* config/i386/i386.c (expand_vec_perm_vperm2f128): New function.
(ix86_expand_vec_perm_const_1): Call it.
From-SVN: r185579
Jakub Jelinek [Tue, 20 Mar 2012 16:27:05 +0000 (17:27 +0100)]
i386.c (vselect_insn): New variable.
* config/i386/i386.c (vselect_insn): New variable.
(init_vselect_insn): New function.
(expand_vselect, expand_vselect_insn): Add testing_p argument.
Call init_vselect_insn if vselect_insn is NULL. Adjust
PATTERN (vselect_insn), instead of creating a new insn each time,
only emit a copy of it if not testing and recog has been successful.
(expand_vec_perm_pshufb, expand_vec_perm_1,
expand_vec_perm_pshuflw_pshufhw, expand_vec_perm_broadcast_1): Adjust
callers.
From-SVN: r185578
Jakub Jelinek [Tue, 20 Mar 2012 16:25:54 +0000 (17:25 +0100)]
re PR target/52607 (v4df __builtin_shuffle with {0,2,1,3} or {1,3,0,2})
PR target/52607
* config/i386/i386.md ("isa" attribute): Add avx2 and noavx2.
("enabled" attribute): Handle avx2 and noavx2 isas.
* config/i386/sse.md (avx2_vec_dupv8sf_1, avx2_pbroadcast<mode>_1):
New insns.
(vec_dup<mode>): Add avx2 =x,x alternative.
(vec_dup<mode> splitter): Don't split if TARGET_AVX2.
(*avx_vperm_broadcast_<mode>): Don't split V4DFmode if TARGET_AVX2.
For TARGET_AVX2, V8SFmode and elt == 0 split into vbroadcastss.
* config/i386/i386.c (expand_vec_perm_pshufb): Emit also vpermps
for V8SFmode.
(expand_vec_perm_1): For broadcasts, use avx2_pbroadcast<mode>_1
if possible, handle also V8SFmode.
From-SVN: r185577
Richard Earnshaw [Tue, 20 Mar 2012 14:11:05 +0000 (14:11 +0000)]
predicates.md (zero_operand, [...]): New predicates.
* arm/predicates.md (zero_operand, reg_or_zero_operand): New predicates.
* arm/neon.md (neon_vceq<mode>, neon_vcge<mode>): Use
reg_or_zero_operand predicate.
(neon_vcle<mode>, neon_vclt<mode>): Use zero_operand predicate.
From-SVN: r185573
Georg-Johann Lay [Tue, 20 Mar 2012 11:32:54 +0000 (11:32 +0000)]
re PR target/49868 (Implement named address space to place/access data in flash memory)
PR target/49868
* gcc.target/avr/torture/addr-space-2.h: New file.
* gcc.target/avr/torture/addr-space-2-g.h: New test.
* gcc.target/avr/torture/addr-space-2-0.h: New test.
* gcc.target/avr/torture/addr-space-2-1.h: New test.
* gcc.target/avr/torture/addr-space-2-x.h: New test.
From-SVN: r185570
Richard Guenther [Tue, 20 Mar 2012 11:18:57 +0000 (11:18 +0000)]
re PR gcov-profile/52627 (Build of libgcc fails w/o __GTHREAD_MUTEX_INIT: error: 'mx' undeclared)
2012-03-20 Richard Guenther <rguenther@suse.de>
PR gcov-profile/52627
* libgcov.c (init_mx): Fix mutex name.
From-SVN: r185569
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