Uros Bizjak [Tue, 27 Dec 2011 09:40:23 +0000 (10:40 +0100)]
re PR libgcj/49193 (__sync_xxxx builtins aren't used in sysdep/*/locks.h)
PR libgcj/49193
* sysdep/alpha/locks.h (compare_and_swap): Call
__sync_bool_compare_and_swap.
(release_set): Call __sync_synchronize.
From-SVN: r182692
GCC Administrator [Tue, 27 Dec 2011 00:18:39 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182690
Oleg Endo [Mon, 26 Dec 2011 23:00:14 +0000 (23:00 +0000)]
sync.md: Add soft atomics ABI description.
* config/sh/sync.md: Add soft atomics ABI description.
(fetchop_name): Use 'or' instead of 'ior'.
(fetchop_insn): Remove.
(atomic_compare_and_swap<mode>_soft):
Don't insert aligning nop after the write-back instruction. Fix
multi-line asm output formatting style.
(atomic_fetch_<fetchop_name><mode>_soft): Likewise.
(atomic_fetch_nand<mode>_soft): Likewise.
(atomic_<fetchop_name>_fetch<mode>_soft): Likewise.
(atomic_nand_fetch<mode>_soft): Likewise.
From-SVN: r182686
Joey Ye [Mon, 26 Dec 2011 08:43:48 +0000 (08:43 +0000)]
re PR middle-end/51200 (Wrong code sequence to store restrict volatile bitfield)
2011-12-26 Joey Ye <joey.ye@arm.com>
PR middle-end/51200
* gcc.dg/volatile-bitfields-2.c: New test.
From-SVN: r182685
GCC Administrator [Mon, 26 Dec 2011 00:18:57 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182684
GCC Administrator [Sun, 25 Dec 2011 00:18:47 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182680
Torvald Riegel [Sat, 24 Dec 2011 01:42:48 +0000 (01:42 +0000)]
libitm: Don't enforce privatization safety if already in serial mode.
libitm/
* beginend.cc (GTM::gtm_thread::trycommit): Don't enforce
privatization safety if already in serial mode.
From-SVN: r182676
Torvald Riegel [Sat, 24 Dec 2011 01:42:35 +0000 (01:42 +0000)]
libitm: Fix privatization safety during upgrades to serial mode.
libitm/
* beginend.cc (GTM::gtm_thread::restart): Add and handle
finish_serial_upgrade parameter.
* libitm.h (GTM::gtm_thread::restart): Adapt declaration.
* config/linux/rwlock.cc (GTM::gtm_rwlock::write_lock_generic):
Don't unset reader flag.
(GTM::gtm_rwlock::write_upgrade_finish): New.
* config/posix/rwlock.cc: Same.
* config/linux/rwlock.h (GTM::gtm_rwlock::write_upgrade_finish):
Declare.
* config/posix/rwlock.h: Same.
* method-serial.cc (GTM::gtm_thread::serialirr_mode): Unset reader
flag after commit or after rollback when restarting.
From-SVN: r182675
Torvald Riegel [Sat, 24 Dec 2011 01:42:20 +0000 (01:42 +0000)]
libitm: Fixed conversion to C++11 atomics.
libitm/
* beginend.cc (GTM::gtm_thread::begin_transaction): Add comment.
(GTM::gtm_thread::try_commit): Changed memory order.
* config/linux/alpha/futex_bits.h (sys_futex0): Take atomic int
as parameter.
* config/linux/x86/futex_bits.h (sys_futex0): Same.
* config/linux/sh/futex_bits.h (sys_futex0): Same.
* config/linux/futex_bits.h (sys_futex0): Same.
* config/linux/futex.cc (futex_wait, futex_wake): Same.
* config/linux/futex.h (futex_wait, futex_wake): Same.
* config/linux/rwlock.h (gtm_rwlock::writers,
gtm_rwlock::writer_readers, gtm_rwlock::readers): Change to atomic
ints.
* config/linux/rwlock.cc (gtm_rwlock::read_lock,
gtm_rwlock::write_lock_generic, gtm_rwlock::read_unlock,
gtm_rwlock::write_unlock): Fix memory orders and fences.
* config/posix/rwlock.cc (gtm_rwlock::read_lock,
gtm_rwlock::write_lock_generic, gtm_rwlock::read_unlock,
gtm_rwlock::write_unlock): Same.
* config/linux/rwlock.h (gtm_rwlock::summary): Change to atomic int.
* method-gl.cc (gl_mg::init, gl_wt_dispatch::memtransfer_static,
gl_wt_dispatch::memset_static, gl_wt_dispatch::begin_or_restart):
Add comments.
(gl_wt_dispatch::pre_write, gl_wt_dispatch::validate,
gl_wt_dispatch::load, gl_wt_dispatch::store,
gl_wt_dispatch::try_commit, gl_wt_dispatch::rollback): Fix memory
orders and fences. Add comments.
From-SVN: r182674
GCC Administrator [Sat, 24 Dec 2011 00:18:54 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182673
Richard Henderson [Fri, 23 Dec 2011 22:07:16 +0000 (14:07 -0800)]
Delete VEC_EXTRACT_EVEN/ODD_EXPR.
* tree.def (VEC_EXTRACT_EVEN_EXPR, VEC_EXTRACT_ODD_EXPR): Remove.
* cfgexpand.c (expand_debug_expr): Don't handle them.
* expr.c (expand_expr_real_2): Likewise.
* fold-const.c (fold_binary_loc): Likewise.
* gimple-pretty-print.c (dump_binary_rhs): Likewise.
* tree-cfg.c (verify_gimple_assign_binary): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* optabs.c (optab_for_tree_code): Likewise.
(can_vec_perm_for_code_p): Remove.
(expand_binop): Don't try it.
(init_optabs): Don't init vec_extract_even/odd_optab.
* genopinit.c (optabs): Likewise.
* optabs.h (OTI_vec_extract_even, OTI_vec_extract_odd): Remove.
(vec_extract_even_optab, vec_extract_odd_optab): Remove.
* tree-vect-data-refs.c (vect_strided_store_supported): Tidy code.
(vect_permute_store_chain): Use TYPE_VECTOR_SUBPARTS instead of
GET_MODE_NUNITS; check vect_gen_perm_mask return value instead of
asserting vect_strided_store_supported.
(vect_strided_load_supported): Use can_vec_perm_p.
(vect_permute_load_chain): Use VEC_PERM_EXPR.
* doc/generic.texi (VEC_EXTRACT_EVEN_EXPR): Remove.
(VEC_EXTRACT_ODD_EXPR): Remove.
* doc/md.texi (vec_extract_even, vec_extract_odd): Remove.
From-SVN: r182669
Jason Merrill [Fri, 23 Dec 2011 22:00:13 +0000 (17:00 -0500)]
re PR c++/51507 ([C++0x] Function parameter pack doesn't use in template-argument-list)
PR c++/51507
* search.c (at_function_scope_p): Also check cfun.
* pt.c (tsubst_pack_expansion): Check it instead of
cp_unevaluated_operand.
(instantiate_template_1): Clear current_function_decl.
From-SVN: r182668
Jason Merrill [Fri, 23 Dec 2011 22:00:02 +0000 (17:00 -0500)]
tree.c (dependent_name): OFFSET_REF and BASELINK are not dependent names.
* tree.c (dependent_name): OFFSET_REF and BASELINK
are not dependent names.
From-SVN: r182667
Anatoly Sokolov [Fri, 23 Dec 2011 21:40:42 +0000 (01:40 +0400)]
score.h (REGISTER_MOVE_COST, [...]): Remove.
* config/score/score.h (REGISTER_MOVE_COST, MEMORY_MOVE_COST): Remove.
* config/score/score-protos.h (score_register_move_cost): Remove.
* config/score/score.c (TARGET_REGISTER_MOVE_COST): Define.
(score_register_move_cost): Make static. Change arguments type from
enum reg_class to reg_class_t.
From-SVN: r182666
Uros Bizjak [Fri, 23 Dec 2011 21:11:15 +0000 (22:11 +0100)]
fast-math-pr35982.c: Fix parenthesis in target selectors.
2011-12-23 Uros Bizjak <ubizjak@gmail.com>
* gcc.dg/vect/fast-math-pr35982.c: Fix parenthesis in target selectors.
From-SVN: r182665
Jakub Jelinek [Fri, 23 Dec 2011 18:38:03 +0000 (10:38 -0800)]
Delete VEC_INTERLEAVE_*_EXPR.
* tree.def (VEC_INTERLEAVE_HIGH_EXPR, VEC_INTERLEAVE_LOW_EXPR): Remove.
* gimple-pretty-print.c (dump_binary_rhs): Don't handle
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
* expr.c (expand_expr_real_2): Likewise.
* tree-cfg.c (verify_gimple_assign_binary): Likewise.
* cfgexpand.c (expand_debug_expr): Likewise.
* tree-inline.c (estimate_operator_cost): Likewise.
* tree-pretty-print.c (dump_generic_node): Likewise.
* tree-vect-generic.c (expand_vector_operations_1): Likewise.
* fold-const.c (fold_binary_loc): Likewise.
* doc/generic.texi (VEC_INTERLEAVE_HIGH_EXPR,
VEC_INTERLEAVE_LOW_EXPR): Remove documentation.
* optabs.c (optab_for_tree_code): Don't handle
VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
(expand_binop, init_optabs): Remove vec_interleave_high_optab
and vec_interleave_low_optab.
* genopinit.c (optabs): Likewise.
* optabs.h (OTI_vec_interleave_high, OTI_vec_interleave_low): Remove.
(vec_interleave_high_optab, vec_interleave_low_optab): Remove.
* doc/md.texi (vec_interleave_high, vec_interleave_low): Remove
documentation.
* tree-vect-stmts.c (gen_perm_mask): Renamed to...
(vect_gen_perm_mask): ... this. No longer static.
(perm_mask_for_reverse, vectorizable_load): Adjust callers.
* tree-vectorizer.h (vect_gen_perm_mask): New prototype.
* tree-vect-data-refs.c (vect_strided_store_supported): Don't try
VEC_INTERLEAVE_*_EXPR, use can_vec_perm_p instead of
can_vec_perm_for_code_p.
(vect_permute_store_chain): Generate VEC_PERM_EXPR with interleaving
masks instead of VEC_INTERLEAVE_HIGH_EXPR and VEC_INTERLEAVE_LOW_EXPR.
* config/i386/i386.c (expand_vec_perm_interleave2): If
expand_vec_perm_interleave3 would handle it, return false.
(expand_vec_perm_broadcast_1): Don't use vec_interleave_*_optab.
From-SVN: r182663
Richard Henderson [Fri, 23 Dec 2011 18:36:07 +0000 (10:36 -0800)]
mips: Improved vectorization support for Loongson and mips3d-ps.
* config/mips/loongson.md (UNSPEC_LOONGSON_PINSR_0,
UNSPEC_LOONGSON_PINSR_1, UNSPEC_LOONGSON_PINSR_2,
UNSPEC_LOONGSON_PINSR_3): Replace with...
(UNSPEC_LOONGSON_PINSRH): ... this.
(UNSPEC_LOONGSON_VINIT): New.
(UNSPEC_LOONGSON_DSLL, UNSPEC_LOONGSON_DSRL): New.
(VWB): New mode iterator.
(V_inner): New mode attribute.
(loongson_vec_init1_<VHB>): New.
(*vec_concatv2si): New.
(and<VWHB>3, ior<VWHB>3, xor<VWHB>3, one_cmpl<VWHB>2): New.
(*loongson_nor): New.
(loongson_pextrh): Un-macro-ify.
(loongson_pmaddhw): Likewise.
(smaxv4hi3, umaxv8qi3, sminv4hi3, uminv8qi3): Likewise.
(loongson_pinsrh_0): Represent with vec_select+vec_concat.
(loongson_pinsrh_1, loongson_pinsrh_2, loongson_pinsrh_3): Likewise.
(*vec_setv4hi, vec_setv4hi): New.
(sdot_prodv4hi): New.
(smax<VWB>3, smin<VWB>3): New.
(reduc_uplus_v8qi): New.
(loongson_pshufh): Remove destination matching input.
(ashl<VWH>3, ashr<VWH>3, lshr<VWH>3): Fix type attribute.
(vec_interleave_high<VWHB>, vec_interleave_low<VWHB>): Remove.
(loongson_punpckhbh, loongson_punpckhhw, loongson_punpckhhw_qi,
loongson_punpckhwd, loongson_punpckhwd_qi, loongson_punpckhwd_hi,
loongson_punpcklbh, loongson_punpcklhw, loongson_punpcklhw_qi,
loongson_punpcklwd, loongson_punpcklwd_qi, loongson_punpcklwd_hi,
vec_perm_const<VWHB>, vec_unpacks_lo_<VHB>, vec_unpacks_hi_<VHB>,
vec_unpacku_lo_<VHB>, vec_unpacku_hi_<VHB>, vec_shl_<VWHBDI>,
vec_shr_<VWHBDI>, reduc_uplus_<VWH>, reduc_splus_<VWHB>,
reduc_smax_<VWHB>, reduc_smin_<VWHB>, reduc_umax_<VWHB>,
reduc_umin_<VB>): New.
* config/mips/mips-ps-3d.md (vec_perm_const_ps): New.
(mips_pul_ps, mips_puu_ps, mips_pll_ps, mips_plu_ps): Expand in
terms of vec_perm_const_ps.
(vec_perm_constv2sf): New.
(vec_initv2sf): Use mips_expand_vector_init.
(vec_concatv2sf): Rename from vec_initv2sf_internal.
(vec_setv2sf): Use vec_perm_const_ps.
(reduc_splus_v2sf, reduc_smin_v2sf, reduc_smax_v2sf): New.
* config/mips/loongson.h (pshufh_u, pshufh_s): Don't pass dest to
the builtin.
* config/mips/mips-modes.def (V16QI, V8HI, V4SI, V4SF): New modes.
* config/mips/mips-protos.h: Update.
* config/mips/mips.c (mips_get_arg_info): Match V2SFmode, not all
MODE_VECTOR_FLOAT.
(mips_return_mode_in_fpr_p): Likewise.
(mips_cannot_change_mode_class): Allow 8-byte integral mode changes.
(CODE_FOR_loongson_punpckhbh, CODE_FOR_loongson_punpckhhw,
CODE_FOR_loongson_punpckhwd, CODE_FOR_loongson_punpcklbh,
CODE_FOR_loongson_punpcklhw, CODE_FOR_loongson_punpcklwd): Remove.
(mips_builtins): Remove first operand for loongson pshufh builtins.
(MAX_VECT_LEN, struct expand_vec_perm_d): New.
(mips_expand_vselect, mips_expand_vselect_vconcat,
mips_expand_vpc_loongson_even_odd, mips_expand_vpc_loongson_pshufh,
mips_expand_vpc_loongson_bcast, mips_expand_vec_perm_const_1,
mips_expand_vec_perm_const, mips_vectorize_vec_perm_const_ok,
mips_expand_vec_unpack, mips_constant_elt_p, mips_expand_vi_broadcast,
mips_expand_vi_constant, mips_expand_vi_loongson_one_pinsrh,
mips_expand_vi_general, mips_expand_vec_reduc, mips_expand_vec_minmax,
TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
(mips_expand_vector_init): Rewrite.
* config/mips/predicates.md (const_2_or_3_operand): New.
(const_0_to_3_operand): New.
From-SVN: r182662
Jonathan Wakely [Fri, 23 Dec 2011 17:31:00 +0000 (17:31 +0000)]
weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
* testsuite/tr1/2_general_utilities/shared_ptr/cons/
weak_ptr_expired.cc: Modify to PASS instead of XFAIL.
From-SVN: r182661
Kai Tietz [Fri, 23 Dec 2011 17:23:38 +0000 (18:23 +0100)]
* config/os/mingw32-w64/os_defines.h (__USE_MINGW_ANSI_STDIO): Define.
From-SVN: r182660
Jonathan Wakely [Fri, 23 Dec 2011 17:20:44 +0000 (17:20 +0000)]
* include/c_global/cinttypes: Update comments that refer to TR1.
From-SVN: r182659
Jonathan Wakely [Fri, 23 Dec 2011 16:10:48 +0000 (16:10 +0000)]
re PR libstdc++/49204 ([C++0x] remaining issues in <future>)
PR libstdc++/49204
* include/std/future (future_errc): Implement LWG 2056.
From-SVN: r182658
Dmitry Plotnikov [Fri, 23 Dec 2011 13:53:17 +0000 (13:53 +0000)]
neon.md (float<mode><V_cvtto>2): New.
2011-12-23 Dmitry Plotnikov <dplotnikov@ispras.ru>
* config/arm/neon.md (float<mode><V_cvtto>2): New.
(floatuns<mode><V_cvtto>2): New.
(fix_trunc<mode><V_cvtto>2): New.
(fix_truncuns<mode><V_cvtto>2): New.
* config/arm/iterators.md (V_cvtto): New iterator.
gcc/testsuite/:
* gcc.target/arm/vect-vcvt.c: New test.
* gcc.target/arm/vect-vcvtq.c: New test.
* gcc.dg/vect/fast-math-pr35982.c: Added vect_strided2 alternative
in final check.
* lib/target-supports.exp (check_effective_target_vect_intfloat_cvt):
True for ARM NEON.
(check_effective_target_vect_uintfloat_cvt): Likewise.
(check_effective_target_vect_floatuint_cvt): Likewise.
(check_effective_target_vect_floatint_cvt): Likewise.
From-SVN: r182657
Arnaud Charlet [Fri, 23 Dec 2011 09:36:49 +0000 (10:36 +0100)]
[multiple changes]
2011-12-23 Pascal Obry <obry@adacore.com>
* prj.ads (For_Every_Project_Imported): Add In_Aggregate_Lib
parameter to generic formal procedure.
* prj.adb (For_Every_Project_Imported): Update accordingly.
(Recursive_Check): Likewise. Do not parse imported project for
aggregate library. This is needed as the imported projects are
there just to handle dependencies.
(Look_For_Sources): Likewise.
(Recursive_Add): Likewise.
* prj-env.adb, prj-conf.adb, makeutl.adb, gnatcmd.adb:
Add In_Aggregate_Lib parameter to routines used with
For_Every_Project_Imported generic procedure.
* prj-nmsc.adb (Tree_Processing_Data): Add In_Aggregate_Lib field.
(Check): Move where it is used. Fix implementation
to not check libraries that are inside aggregate libraries.
(Recursive_Check): Add In_Aggregate_Lib parameter.
2011-12-23 Ed Schonberg <schonberg@adacore.com>
* sem_ch7.adb (Analyze_Package_Body, Has_Referencer): A generic
package is a referencer regardless of whether there is a
subsequent subprogram with an Inline pragma.
2011-12-23 Geert Bosch <bosch@adacore.com>
* sem_ch3.adb (Can_Derive_From): Check matching Float_Rep on VMS.
From-SVN: r182656
Pascal Obry [Fri, 23 Dec 2011 09:34:21 +0000 (09:34 +0000)]
gnatcmd.adb, [...]: Minor reformatting.
2011-12-23 Pascal Obry <obry@adacore.com>
* gnatcmd.adb, prj.adb, prj-nmsc.adb: Minor reformatting.
From-SVN: r182655
Richard Guenther [Fri, 23 Dec 2011 09:10:18 +0000 (09:10 +0000)]
re PR rtl-optimization/50396 (SSE division by zero generates incorrect code with optimizations enabled)
2011-12-23 Richard Guenther <rguenther@suse.de>
PR rtl-optimization/50396
* simplify-rtx.c (simplify_binary_operation_1): Properly
guard code that only works for integers.
* gcc.dg/torture/pr50396.c: New testcase.
From-SVN: r182653
Tristan Gingold [Fri, 23 Dec 2011 08:27:22 +0000 (08:27 +0000)]
vms-crtlmap.map (log10): Fix typo.
2011-12-23 Tristan Gingold <gingold@adacore.com>
* config/vms/vms-crtlmap.map (log10): Fix typo.
From-SVN: r182652
Tristan Gingold [Fri, 23 Dec 2011 08:24:42 +0000 (08:24 +0000)]
vms.h (SUPPORTS_ONE_ONLY): Define.
2011-12-23 Tristan Gingold <gingold@adacore.com>
* config/ia64/vms.h (SUPPORTS_ONE_ONLY): Define.
From-SVN: r182651
Bin Cheng [Fri, 23 Dec 2011 05:43:09 +0000 (05:43 +0000)]
re PR tree-optimization/43491 (Unnecessary temporary for global register variable)
2011-12-22 Bin Cheng <bin.cheng@arm.com>
Richard Guenther <rguenther@suse.de>
PR tree-optimization/43491
* tree-ssa-pre.c (eliminate): Don't replace global register
variable when it is the RHS of a single assign.
testsuite:
* gcc.dg/tree-ssa/pr43491.c: New test.
Co-Authored-By: Richard Guenther <rguenther@suse.de>
From-SVN: r182650
Joey Ye [Fri, 23 Dec 2011 02:18:17 +0000 (02:18 +0000)]
toplev.c (process_options): Fix typo.
2011-12-22 Joey Ye <joey.ye@arm.com>
* toplev.c (process_options): Fix typo.
From-SVN: r182649
John David Anglin [Fri, 23 Dec 2011 02:17:39 +0000 (02:17 +0000)]
Commit missing log entry.
From-SVN: r182648
John David Anglin [Fri, 23 Dec 2011 02:10:52 +0000 (02:10 +0000)]
re PR testsuite/50722 (FAIL: gcc.dg/pr49994-3.c (test for excess errors))
PR testsuite/50722
gcc.dg/pr49994-3.c: xfail on hppa*-*-*.
From-SVN: r182647
John David Anglin [Fri, 23 Dec 2011 01:53:13 +0000 (01:53 +0000)]
re PR middle-end/51252 (FAIL: c-c++-common/tm/freq.c (internal compiler error))
PR middle-end/51252
* config/pa/pa.c (pa_som_tm_clone_table_section): New function.
(som_tm_clone_table_section): Declare.
(pa_file_start_space): Create $TM_CLONE_TABLE$ subspace.
(pa_som_asm_init_sections): Init som_tm_clone_table_section.
* config/pa/som.h (TARGET_ASM_TM_CLONE_TABLE_SECTION): Define.
From-SVN: r182646
Jonathan Wakely [Fri, 23 Dec 2011 01:47:41 +0000 (01:47 +0000)]
regex.h (match_results::size_type): Use allocator_traits.
* include/bits/regex.h (match_results::size_type): Use
allocator_traits.
From-SVN: r182645
GCC Administrator [Fri, 23 Dec 2011 00:18:46 +0000 (00:18 +0000)]
Daily bump.
From-SVN: r182644
Richard Sandiford [Thu, 22 Dec 2011 21:28:40 +0000 (21:28 +0000)]
tm.texi.in (TARGET_PREPARE_PCH_SAVE): New hook.
gcc/
* doc/tm.texi.in (TARGET_PREPARE_PCH_SAVE): New hook.
* doc/tm.texi: Regenerate.
* target.def (prepare_pch_save): New hook.
* c-family/c-pch.c (c_common_write_pch): Call it.
* config/mips/mips.c (was_mips16_pch_p): Delete.
(mips_set_mips16_mode): Don't refer to was_mips16_pch_p.
(mips_prepare_pch_save): New function.
(TARGET_PREPARE_PCH_SAVE): Define.
From-SVN: r182640
Ian Lance Taylor [Thu, 22 Dec 2011 20:49:18 +0000 (20:49 +0000)]
go-gcc.cc (set_placeholder_pointer_type): Arrange for the type name to have a DECL_ORIGINAL_TYPE as gcc expects.
* go-gcc.cc (set_placeholder_pointer_type): Arrange for the type
name to have a DECL_ORIGINAL_TYPE as gcc expects.
(set_placeholder_struct_type): Likewise.
(set_placeholder_array_type): Likewise.
(named_type): Set DECL_ORIGINAL_TYPE.
From-SVN: r182639
Janne Blomqvist [Thu, 22 Dec 2011 20:44:32 +0000 (22:44 +0200)]
PR 51646 Use POSIX mode flags in open() argument.
2011-12-22 Janne Blomqvist <jb@gcc.gnu.org>
Tobias Burnus <burnus@net-b.de>
PR libfortran/51646
* acinclude.m4 (LIBGFOR_CHECK_UNLINK_OPEN_FILE): Use POSIX mode
flags, omit mode argument when flags argument does not have
O_CREAT.
* io/unix.c (tempfile): Use POSIX mode flags.
* configure: Regenerate.
Co-Authored-By: Tobias Burnus <burnus@net-b.de>
From-SVN: r182638
Ian Lance Taylor [Thu, 22 Dec 2011 20:39:29 +0000 (20:39 +0000)]
libgo: Use -std=gnu99 on Solaris 10.
From Rainer Orth.
From-SVN: r182637
Aldy Hernandez [Thu, 22 Dec 2011 20:18:11 +0000 (20:18 +0000)]
re PR middle-end/51212 (ICE: verify_flow_info failed: BB 3 can not throw but has an EH edge with -fgnu-tm -fnon-call-exceptions and transaction_callable)
PR middle-end/51212
* opts.c (finish_options): Call sorry on -fgnu-tm and
-fnon-call-exceptions combination.
From-SVN: r182636
Ian Lance Taylor [Thu, 22 Dec 2011 19:07:12 +0000 (19:07 +0000)]
runtime: Fix missing USING_SPLIT_STACK ifdef.
From Uros Bizjak.
From-SVN: r182633
Jonathan Wakely [Thu, 22 Dec 2011 18:58:15 +0000 (18:58 +0000)]
re PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)
PR libstdc++/48362
* testsuite/libstdc++-prettyprinters/48362.cc: New.
From-SVN: r182632
Jonathan Wakely [Thu, 22 Dec 2011 17:52:36 +0000 (17:52 +0000)]
invoke.texi (C++ Dialect Options): Add missing options and move -Wzero-as-null-pointer-constant to ...
2011-12-22 Jonathan Wakely <jwakely.gcc@gmail.com>
* doc/invoke.texi (C++ Dialect Options): Add missing options and
move -Wzero-as-null-pointer-constant to ...
(Warning Options): ... here.
From-SVN: r182631
Jonathan Wakely [Thu, 22 Dec 2011 17:35:05 +0000 (17:35 +0000)]
re PR target/47643 (x86 -mtune docs still imply i386 is the default for codegen)
PR target/47643
* doc/invoke.texi (i386 and x86-64 Options): Fix description of
-mtune without -march.
From-SVN: r182630
Richard Earnshaw [Thu, 22 Dec 2011 17:31:50 +0000 (17:31 +0000)]
re PR target/51643 (Incorrect code produced for tail-call of weak function with -O2/-O3 option)
PR target/51643
* arm.c (arm_function_ok_for_sibcall): Use DECL_WEAK in previous
change.
From-SVN: r182628
Tristan Gingold [Thu, 22 Dec 2011 16:40:11 +0000 (16:40 +0000)]
ia64.c (ia64_promote_function_mode): Remove.
2011-12-22 Tristan Gingold <gingold@adacore.com>
* config/ia64/ia64.c (ia64_promote_function_mode): Remove.
(TARGET_PROMOTE_FUNCTION_MODE): Remove.
(ia64_function_value): Call promote_function_mode instead of
ia64_promote_function_mode.
* config/ia64/vms.h (PROMOTE_MODE): Define.
(TARGET_PROMOTE_FUNCTION_MODE): Define.
From-SVN: r182627
Uros Bizjak [Thu, 22 Dec 2011 16:35:16 +0000 (17:35 +0100)]
re PR rtl-optimization/27468 (sign-extending Alpha instructions not exploited)
PR target/27468
* common/config/alpha/alpha-common.c (alpha_option_optimization_table):
Enable flag_ree at -O2 or higher.
From-SVN: r182626
Richard Guenther [Thu, 22 Dec 2011 15:28:24 +0000 (15:28 +0000)]
re PR debug/51650 (LTO ICE in dwarf2out_finish, at dwarf2out.c:22501 while building libxul)
2011-12-22 Richard Guenther <rguenther@suse.de>
PR lto/51650
* lto.c (uniquify_nodes): Register TYPE_DECLs with the
debuginfo machinery.
* g++.dg/lto/pr51650-1_0.C: New testcase.
* g++.dg/lto/pr51650-2_0.C: Likewise.
From-SVN: r182625
Bernd Schmidt [Thu, 22 Dec 2011 15:01:25 +0000 (15:01 +0000)]
tree-pass.h (pass_reload): Declare.
* tree-pass.h (pass_reload): Declare.
* ira.c (overall_cost_before, saved_flag_ira_share_spill_slots):
New global variables, moved out of ira.
(do_reload): New static function, split off from the second half
of ...
(ira): ... here.
(gate_ira): Remove.
(pass_ira): Use TV_IRA, set gate to NULL, and set flags to
TODO_dump_func.
(rest_of_handle_reload): New static function.
(pass_reload): New.
From-SVN: r182624
Uros Bizjak [Thu, 22 Dec 2011 14:39:35 +0000 (15:39 +0100)]
i386-common.c (ix86_option_optimization_table): Move OPT_free processing from ...
* common/config/i386/i386-common.c (ix86_option_optimization_table):
Move OPT_free processing from ...
* config/i386/i386.c (ix86_option_override_internal): ... here.
From-SVN: r182623
Richard Earnshaw [Thu, 22 Dec 2011 14:13:09 +0000 (14:13 +0000)]
re PR target/51643 (Incorrect code produced for tail-call of weak function with -O2/-O3 option)
PR target/51643
* arm.c (arm_function_ok_for_sibcall): Don't try to tailcall a
weak function on bare-metal EABI targets.
* gcc.target/arm/sibcall-2.c: New test.
From-SVN: r182621
Jonathan Wakely [Thu, 22 Dec 2011 12:33:15 +0000 (12:33 +0000)]
re PR libstdc++/48362 (pretty printer fails for zero-size std::tuple<>)
PR libstdc++/48362
* python/libstdcxx/v6/printers.py (StdTuplePrinter): Handle empty
tuples.
From-SVN: r182620
Arnaud Charlet [Thu, 22 Dec 2011 11:52:00 +0000 (12:52 +0100)]
[multiple changes]
2011-12-22 Hristian Kirtchev <kirtchev@adacore.com>
* exp_ch7.adb (Build_Adjust_Or_Finalize_Statements): Create the objects
associated with exception handling unconditionally.
(Build_Adjust_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Components): Create the objects associated with exception
handling unconditionally.
(Build_Finalize_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Initialize_Statements): Create the objects associated with
exception handling unconditionally.
(Build_Object_Declarations): Set the proper location of the data
record when exception propagation is forbidden.
2011-12-22 Gary Dismukes <dismukes@adacore.com>
* a-tienio.adb (Put): Test validity of Item parameters before
applying Image, and raise Constraint_Error for invalid values.
2011-12-22 Bob Duff <duff@adacore.com>
* a-stwima.ads (Initialize,Adjust,Finalize): Add overriding indicators.
* a-ststio.ads (AFCB_Allocate,AFCB_Close,AFCB_Free,Read,Write): Add
overriding indicators.
From-SVN: r182619
Arnaud Charlet [Thu, 22 Dec 2011 11:48:21 +0000 (11:48 +0000)]
* s-osinte-hpux-dce.ads: Update header to GPLv3
From-SVN: r182618
Ed Schonberg [Thu, 22 Dec 2011 08:54:26 +0000 (08:54 +0000)]
a-cohase.ads, [...]: Update to latest RM version.
2011-12-22 Ed Schonberg <schonberg@adacore.com>
* a-cohase.ads, a-cohase.adb: Update to latest RM version. Add
aspect Constant_Reference to set type, and corresponding
functions.
* a-cihama.ads, a-cihama.adb: Update to latest RM version. Add
function Reference to provide a proper element iterator construct
over indefinite maps.
2011-12-22 Ed Schonberg <schonberg@adacore.com>
* exp_attr.adb (Expand_N_Attribute, case 'Access): Do not insert
implicit conversion on prefix of Unrestricted_Access when prefix
is an explicit dereference.
From-SVN: r182617
Arnaud Charlet [Thu, 22 Dec 2011 08:49:14 +0000 (09:49 +0100)]
[multiple changes]
2011-12-22 Vincent Pucci <pucci@adacore.com>
* sem_dim.adb: Addressed all ??? comments. Replacement of warnings by
errors using continuation marks.
(Error_Dim_Msg_For_?): Renaming of Error_Dim_For_?.
2011-12-22 Robert Dewar <dewar@adacore.com>
* sem_ch3.adb, sem_ch3.ads, sem_prag.adb: Minor code clean up.
From-SVN: r182616
Uros Bizjak [Thu, 22 Dec 2011 08:16:12 +0000 (09:16 +0100)]
re PR testsuite/51645 (FAIL: g++.dg/cpp0x/alias-decl-debug-0.C (test for excess errors))
PR testsuite/51645
* g++.dg/cpp0x/alias-decl-debug-0.C: Add dg-skip-if.
From-SVN: r182615
GCC Administrator [Thu, 22 Dec 2011 00:19:15 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r182613
Ian Lance Taylor [Thu, 22 Dec 2011 00:09:39 +0000 (00:09 +0000)]
* config/i386/morestack.S: Simplify CFI opcodes throughout.
From-SVN: r182609
Jonathan Wakely [Thu, 22 Dec 2011 00:08:09 +0000 (00:08 +0000)]
extend.texi (__builtin_expect): Improve example.
2011-12-21 Jonathan Wakely <jwakely.gcc@gmail.com>
Jim Avera <james_avera@yahoo.com>
* doc/extend.texi (__builtin_expect): Improve example.
Co-Authored-By: Jim Avera <james_avera@yahoo.com>
From-SVN: r182608
Ian Lance Taylor [Wed, 21 Dec 2011 22:24:47 +0000 (22:24 +0000)]
runtime: Catch signals on altstack, disable splitstack signal blocking.
From-SVN: r182607
Uros Bizjak [Wed, 21 Dec 2011 20:56:30 +0000 (21:56 +0100)]
i386.c (ix86_option_override_internal): Enable flag_ree also for 32bit targets.
* config/i386/i386.c (ix86_option_override_internal): Enable flag_ree
also for 32bit targets.
testsuite/ChangeLog:
* gcc.dg/pr50038.c: Move to ...
* gcc.target/i386/pr50038.c: ... here. Test on all targets.
From-SVN: r182605
Richard Henderson [Wed, 21 Dec 2011 20:21:00 +0000 (12:21 -0800)]
re PR target/51552 (bfin generates bad assembly)
PR target/51552
* dwarf2cfi.c (dwarf2out_frame_debug): Move any_cfis_emitted code...
(scan_trace): ... here.
From-SVN: r182604
Jason Merrill [Wed, 21 Dec 2011 19:19:47 +0000 (14:19 -0500)]
re PR c++/51611 ([c++0x] ICE with non-static data member initializer and virtual base class)
PR c++/51611
* cp-tree.h (CONVERT_EXPR_VBASE_PATH): New.
* class.c (build_base_path): Defer vbase conversion in an NSDMI.
* tree.c (bot_replace): Expand it here.
* cp-gimplify.c (cp_genericize_r): Make sure deferred conversion
doesn't leak into GENERIC.
From-SVN: r182602
Jason Merrill [Wed, 21 Dec 2011 17:53:58 +0000 (12:53 -0500)]
* doc/standards.texi (C++ language): Update for C++11.
From-SVN: r182599
Richard Sandiford [Wed, 21 Dec 2011 16:34:41 +0000 (16:34 +0000)]
Add reference to PR middle-end/48660
From-SVN: r182595
Paolo Carlini [Wed, 21 Dec 2011 16:28:08 +0000 (16:28 +0000)]
re PR c++/51305 ([C++11][constexpr] noexcept-specifier overconstraints constexpr functions)
/cp
2011-12-21 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51305
* semantics.c (massage_constexpr_body): Reorder conditionals, make
sure a BIND_EXPR embedded in a MUST_NOT_THROW_EXPR is handled.
/testsuite
2011-12-21 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51305
* g++.dg/cpp0x/constexpr-noexcept6.C: New.
From-SVN: r182594
Jakub Jelinek [Wed, 21 Dec 2011 16:14:11 +0000 (17:14 +0100)]
Makefile.am (AM_CXXFLAGS): Put $(XCFLAGS) first.
* Makefile.am (AM_CXXFLAGS): Put $(XCFLAGS) first.
* Makefile.in: Regenerated.
From-SVN: r182593
Rainer Orth [Wed, 21 Dec 2011 16:08:19 +0000 (16:08 +0000)]
Provide CLOCK_REALTIME on Tru64 UNIX
* s-oscons-tmplt.c [__alpha__ && __osf__] (_XOPEN_SOURCE): Define.
From-SVN: r182592
Richard Guenther [Wed, 21 Dec 2011 15:56:11 +0000 (15:56 +0000)]
lto.c (GIMPLE_REGISTER_TYPE): New define.
2011-12-21 Richard Guenther <rguenther@suse.de>
lto/
* lto.c (GIMPLE_REGISTER_TYPE): New define.
(LTO_FIXUP_TREE): Use it.
(uniquify_nodes): Mark new non-prevailing types and avoid
calling gimple_register_type on others.
(lto_read_decls): Add comment.
From-SVN: r182591
Jakub Jelinek [Wed, 21 Dec 2011 14:52:34 +0000 (15:52 +0100)]
tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize *op0 and *op1 to NULL_TREE first to avoid warnings.
* tree-vect-patterns.c (vect_operation_fits_smaller_type): Initialize
*op0 and *op1 to NULL_TREE first to avoid warnings.
* calls.c (initialize_argument_information): Initialize base to avoid
warnings.
From-SVN: r182590
Jakub Jelinek [Wed, 21 Dec 2011 14:51:19 +0000 (15:51 +0100)]
re PR middle-end/51644 (va_list vs. warning: ‘noreturn’ function does return is not fixable)
PR middle-end/51644
PR middle-end/51647
* tree-eh.c (decide_copy_try_finally): At -O0, return true
even when ndests is not 1, if there are only gimple_clobber_p
(or debug) stmts in the finally sequence.
* tree-inline.c (estimate_num_insns): Return 0 for gimple_clobber_p
stmts.
* gcc.dg/pr51644.c: New test.
* g++.dg/warn/Wreturn-4.C: New test.
From-SVN: r182589
Aldy Hernandez [Wed, 21 Dec 2011 14:30:07 +0000 (14:30 +0000)]
re PR middle-end/51472 (ICE: verify_gimple failed: invalid rhs for gimple memory store with -fgnu-tm --param tm-max-aggregate-size=32)
PR middle-end/51472
* trans-mem.c (tm_log_add): Use create_tmp_var_reg.
From-SVN: r182588
Javier Miranda [Wed, 21 Dec 2011 13:54:55 +0000 (13:54 +0000)]
sem_ch3.ads, [...] (Check_CPP_Type): New subprogram.
2011-12-21 Javier Miranda <miranda@adacore.com>
* sem_ch3.ads, sem_ch3.adb (Check_CPP_Type): New subprogram.
(Process_Full_View): Invoke Check_CPP_Type if processing the
full-view of a CPP type.
* sem_prag.adb (Process_Import_Or_Interface): Add missing support
for importing a CPP type that has an incomplete declaration. Move
to new routine Check_CPP_Type the code that verifies that
components of imported CPP types do not have default expressions.
From-SVN: r182587
Arnaud Charlet [Wed, 21 Dec 2011 13:51:03 +0000 (14:51 +0100)]
[multiple changes]
2011-12-21 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Report_No_Sources): Remove argument Lang. Report
no sources even for languages that are not allowed.
(Add_Source): Get the source even when the language is not allowed.
2011-12-21 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Process_Formals): Add defensive code.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch7.adb, sem_ch13.adb (Analyze_Package_Specification): Build the
invariant procedure of a type declaration that is a completion and has
aspect specifications.
(Build_Invariant_Procedure): If the procedure is built for a
type declaration that is a completion, analyze body expliitly
because all private declarations have been already analyzed.
2011-12-21 Claire Dross <dross@adacore.com>
* a-cfdlli.adb, a-cfhase.adb, a-cforma.adb, a-cforse.adb,
a-cofove.adb: Minor reformating on formal containers
2011-12-21 Vincent Celier <celier@adacore.com>
* makeutl.adb (Mains.Complete_Mains.Do_Complete): Remove
any main that is not in the list of restricted languages.
(Insert_Project_Sources.Do_Insert): Only add sources of languages
in the list of restricted languages.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* sem_res.adb (Valid_Conversion): A type conversion is valid when
the target type is an anonymous access type and the operand is a
rewriting of an allocator. The conversion is typically inserted
when the designated type is an interface.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* exp_ch9.adb (Establish_Task_Master): If the enclosing block
has no declarations, create new declarative list for it.
2011-12-21 Matthew Heaney <heaney@adacore.com>
* a-rbtgbk.adb (Generic_Conditional_Insert): Fixed incorrect comment.
From-SVN: r182586
Arnaud Charlet [Wed, 21 Dec 2011 13:45:42 +0000 (14:45 +0100)]
[multiple changes]
2011-12-21 Yannick Moy <moy@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Do not
ignore representation attributes in Alfa mode, since formal
verification backend does not depend on actual physical
representation, but code may still refer to attribute values.
2011-12-21 Yannick Moy <moy@adacore.com>
* par-ch13.adb (P_Aspect_Specifications): Recognize the cases
where a comma between two aspects is missing, or erroneously
replaced by a semicolon, issue an error and proceed with next
aspect.
* par.adb, sinfo.ads: Fix typos.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* sem_util.adb (Mark_Coextensions): A coextension for an
object that is part of the expression in a return statement,
or part of the return object in an extended return statement,
must be allocated dynamically.
From-SVN: r182585
Arnaud Charlet [Wed, 21 Dec 2011 13:42:22 +0000 (14:42 +0100)]
[multiple changes]
2011-12-21 Matthew Heaney <heaney@adacore.com>
* a-crbtgk.adb (Generic_Conditional_Insert): Fixed incorrect comment.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* sem_ch5.adb (Analyze_Iterator_Specification): If the name
of an element iterator is not an entity name we introduce a
local renaming declaration for it. To prevent spurious warnings
on parameterless function calls that return a container, when
expansion is disabled (either explicitly or because of a previous
errors) the name must be marked as not coming from source.
2011-12-21 Arnaud Charlet <charlet@adacore.com>
* sem_ch13.adb (Analyze_Attribute_Definition_Clause): Separate
handling in CodePeer mode and only ignore Component_Size
attribute.
2011-12-21 Robert Dewar <dewar@adacore.com>
* sem_ch6.adb (Process_Formals): Set proper mechanism for
formals whose types have conventions Ada_Pass_By_Copy or
Ada_Pass_By_Reference.
From-SVN: r182584
Michael Zolotukhin [Wed, 21 Dec 2011 13:34:40 +0000 (13:34 +0000)]
no-section-anchors-vect-31.c: Adjust array size and test diag-scans to fix fail on AVX.
gcc/testsuite
* gcc.dg/vect/no-section-anchors-vect-31.c: Adjust array size and test
diag-scans to fix fail on AVX.
* gcc.dg/vect/no-section-anchors-vect-36.c: Ditto.
* gcc.dg/vect/no-section-anchors-vect-64.c: Ditto.
* gcc.dg/vect/no-section-anchors-vect-66.c: Ditto.
* gcc.dg/vect/no-section-anchors-vect-68.c: Ditto.
* gcc.dg/vect/no-section-anchors-vect-69.c: Ditto.
* gcc.dg/vect/no-vfa-vect-dv-2.c: Adjust dg-scans.
* gcc.dg/vect/pr45752.c: Ditto.
* gcc.dg/vect/slp-perm-4.c: Ditto.
* gcc.dg/vect/slp-perm-9.c: Ditto.
* gcc.dg/vect/vect-33.c: Ditto.
* gcc.dg/vect/vect-35.c: Ditto.
* gcc.dg/vect/vect-6-big-array.c: Ditto.
* gcc.dg/vect/vect-6.c: Ditto.
* gcc.dg/vect/vect-91.c: Ditto.
* gcc.dg/vect/vect-all-big-array.c: Ditto.
* gcc.dg/vect/vect-all.c: Ditto.
* gcc.dg/vect/vect-multitypes-1.c: Ditto.
* gcc.dg/vect/vect-outer-4c.c: Ditto.
* gcc.dg/vect/vect-outer-5.c: Ditto.
* gcc.dg/vect/vect-over-widen-1.c: Ditto.
* gcc.dg/vect/vect-over-widen-3.c: Ditto.
* gcc.dg/vect/vect-over-widen-4.c: Ditto.
* gcc.dg/vect/vect-peel-1.c: Ditto.
* gcc.dg/vect/vect-peel-2.c: Ditto.
* gcc.dg/vect/vect-peel-3.c: Ditto.
* gcc.dg/vect/vect-reduc-pattern-1b.c: Ditto.
* gcc.dg/vect/vect-reduc-pattern-1c.c: Ditto.
* gcc.dg/vect/vect-reduc-pattern-2b.c: Ditto.
* gcc.dg/vect/wrapv-vect-reduc-pattern-2c.c: Ditto.
* lib/target-supports.exp (check_avx_available): New function.
(check_effective_target_vect_sizes_32B_16B): Ditto.
(check_prefer_avx128): Ditto.
(check_effective_target_vect_aligned_arrays): Add handling of AVX.
(check_effective_target_vect_multiple_sizes): Ditto.
From-SVN: r182583
Arnaud Charlet [Wed, 21 Dec 2011 13:34:12 +0000 (14:34 +0100)]
[multiple changes]
2011-12-21 Arnaud Charlet <charlet@adacore.com>
* gnat1drv.adb (Gnat1Drv): Always delete old scil files in
CodePeer mode.
2011-12-21 Robert Dewar <dewar@adacore.com>
* comperr.adb: Minor reformatting.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* aspects.ads: New table Base_Aspect, to indicate that an aspect
is defined on a base type.
* aspects.adb (Find_Aspect): If the aspect is a Base_Aspect,
examine the representation items of the base type.
2011-12-21 Pascal Obry <obry@adacore.com>
* gnat_ugn.texi, prj.ads, prj-nmsc.adb, prj-attr.adb, projects.texi,
snames.ads-tmpl: Use Encapsulated instead of Fully Standalone library.
2011-12-21 Pascal Obry <obry@adacore.com>
* adaint.c (__gnat_is_executable_file_attr) [_WIN32]: Add parentheses
to kill warning.
From-SVN: r182582
Martin Jambor [Wed, 21 Dec 2011 12:44:31 +0000 (13:44 +0100)]
tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.
2011-12-21 Martin Jambor <mjambor@suse.cz>
* tree-into-ssa.c (rewrite_update_stmt): Do not dump extra newlines.
(rewrite_update_enter_block): Likewise.
(dump_update_ssa): Likewise.
(update_ssa): Likewise but also dump a newline at the beginning.
From-SVN: r182581
Arnaud Charlet [Wed, 21 Dec 2011 12:08:32 +0000 (13:08 +0100)]
[multiple changes]
2011-12-21 Arnaud Charlet <charlet@adacore.com>
* comperr.adb (Delete_SCIL_Files): Also delete .scilx files.
Fix implementation for child packages and package specs.
(Delete_SCIL_Files.Decode_Name_Buffer): New function.
2011-12-21 Robert Dewar <dewar@adacore.com>
* err_vars.ads, a-cdlili.adb, a-cfdlli.ads, prj.adb, prj-nmsc.adb,
a-cbdlli.adb, a-cbdlli.ads, a-cfdlli.adb: Minor reformatting.
2011-12-21 Vincent Pucci <pucci@adacore.com>
* s-diflio.adb, s-diflio.ads, s-diinio.adb, s-diinio.ads,
s-llflex.ads: Fix header.
From-SVN: r182578
Arnaud Charlet [Wed, 21 Dec 2011 12:03:53 +0000 (13:03 +0100)]
[multiple changes]
2011-12-21 Thomas Quinot <quinot@adacore.com>
* thread.c, s-oscons-tmplt.c, init.c (pthread_condattr_setclock): For
AIX 5.2, define as a dummy weak symbol in init.c.
(CLOCK_RT_Ada): Set to CLOCK_MONOTONIC on all versions of AIX.
2011-12-21 Thomas Quinot <quinot@adacore.com>
* snames.ads-tmpl, sem_ch8.adb: Minor reformatting.
* sem_prag.adb: Minor comment clarification.
2011-12-21 Vincent Celier <celier@adacore.com>
* prj-nmsc.adb (Report_No_Sources): New argument Lang for the
language name as a Name_Id. Do not report no sources if language
is not allowed.
(Add_Source): Do not add source if language is not allowed.
* prj.adb (Add_Restricted_Language): New procedure
(Is_Allowed_Language): New function
* prj.ads (Add_Restricted_Language): New procedure
(Is_Allowed_Language): New function
From-SVN: r182577
Arnaud Charlet [Wed, 21 Dec 2011 12:01:28 +0000 (13:01 +0100)]
[multiple changes]
2011-12-21 Robert Dewar <dewar@adacore.com>
* exp_ch5.adb, sem_dim.adb, sem_dim.ads, sem_ch12.adb, prj-conf.adb:
Minor reformatting.
2011-12-21 Claire Dross <dross@adacore.com>
* a-cfdlli.ads (Constant_Indexing, Default_Iterator,
Iterator_Element): Added to type List.
(Not_No_Element, List_Iterator_Interfaces, Iterate,
Constant_Reference_Type, Constant_Reference): New.
* a-cfdlli.adb (type Iterator, Finalize, First, Last, Next,
Previous, Iterate, Not_No_Element, Constant_Reference): New.
From-SVN: r182576
Arnaud Charlet [Wed, 21 Dec 2011 11:53:33 +0000 (12:53 +0100)]
[multiple changes]
2011-12-21 Gary Dismukes <dismukes@adacore.com>
* gnat_ugn.texi: Minor reformatting.
2011-12-21 Ed Schonberg <schonberg@adacore.com>
* exp_ch5.adb (Expand_Iterator_Loop): The cursor operation
Has_Element is the formal of Iterator_Interfaces, and within
the instantion of this package it is a renaming of some local
function with an unrelated name. Retrieve the operation from
the instance itself, not from the container package.
2011-12-21 Vincent Pucci <pucci@adacore.com>
* exp_ch6.adb (Expand_Call): Expand_Put_Call_With_Dimension_String
replaced by Expand_Put_Call_With_Dimension_Symbol
* sem_ch12.adb (Analyze_Package_Instantiation): New check for
System.Dim_Float_IO and System.Dim_Integer_IO instantiation.
* sem_ch3.adb (Analyze_Declarations): Removed
Remove_Dimension_In_Declaration call.
* sem_dim.adb: Update comments. Redefine the
representation of a Rational. Propagate all changes involving
data structures and types throughout the pakage. Output the
dimension aggregates for each error messages.
("/"): Rational constructor "/" removed for Whole operands.
("/"): New rational operation "/" for Rational operands.
("*"): Operation "*" between Rational and Int removed.
("abs"): New unary operator "abs" for Rational.
(Analyze_Aspect_Dimension_System): Reorganized.
(Analyze_Dimension_Identifier): Removed.
(Copy_Dimensions): Removed.
(Create_Rational_From_Expr): New Boolean parameter.
(Dimensions_Msg_Of): New routine. Return
a string with the dimensions of the parameter.
(From_Dimension_To_String_Of_Symbols): Renaming of
From_Dimension_To_String_Id.
* sem_dim.ads: Update comments.
(Is_Dim_IO_Package_Instantiation): New routine.
(Remove_Dimension_In_Declaration): Removed.
* sem_res.adb (Resolve_Op_Expon): Reorganized calls of
Eval_Op_Expon_For_Dimensioned_Type and Eval_Op_Expon.
* s-diflio.ads, s-diinio.ads: Update comments.
From-SVN: r182575
Enkovich Ilya [Wed, 21 Dec 2011 11:52:27 +0000 (11:52 +0000)]
re PR target/50038 (redundant zero extensions)
gcc/
2011-12-21 Enkovich Ilya <ilya.enkovich@intel.com>
PR target/50038
* implicit-zee.c: Delete.
* ree.c: New file.
* Makefile.in: Replace implicit-zee.c with ree.c.
* config/i386/i386.c (ix86_option_override_internal): Rename
flag_zee to flag_ree.
* common.opt (fzee): Ignored.
(free): New.
* passes.c (init_optimization_passes): Replace pass_implicit_zee
with pass_ree.
* tree-pass.h (pass_implicit_zee): Delete.
(pass_ree): New.
* timevar.def (TV_ZEE): Delete.
(TV_REE): New.
* doc/invoke.texi: Add -free description.
gcc/testsuite/
2011-12-21 Enkovich Ilya <ilya.enkovich@intel.com>
PR target/50038
From-SVN: r182574
Arnaud Charlet [Wed, 21 Dec 2011 11:50:02 +0000 (12:50 +0100)]
[multiple changes]
2011-12-21 Pascal Obry <obry@adacore.com>
* prj-attr.adb, snames.ads-tmpl: Add Library_Standalone,
Library_Fully_Standalone_Options and
Library_Fully_Standalone_Supported attributes.
* prj-nmsc.adb (Check_Library): Update check to take into
account fully standalone libraries. Such shared libraries can
only depend on static libraries.
(Check_Stand_Alone_Library): Add support for fully standalone libraries.
(Process_Project_Level_Simple_Attributes): Store value for
configuration attribute Library_Fully_Standalone_Supported.
* prj.ads, makeutl.adb (Standalone): New enumeration type.
(Project_Data): Standalone_Library now of type Standlone.
(Project_Configuration): Add Lib_Fully_Standalone_Supported
field.
(Default_Project_Config): Initialize new Lib_Fully_Standalone_Supported
field.
* clean.adb (Clean_Project): Adjust to new type for Standalone.
* make.adb (Library_Phase): Adjust to new type for Standalone.
(Gnatmake): Likewise.
* mlib-prj.adb (Build_Library): Adjust to new type for
Standalone.
2011-12-21 Thomas Quinot <quinot@adacore.com>
* gnatls.adb (Gnatls): Call Set_Standard_Error at startup, and then
Set_Standard_Output just before producing normal (non-diagnostic)
output.
* gnatcmd.adb (Gnatcmd): Call Set_Standard_Error at initialization
(and again after parsing project files).
2011-12-21 Vincent Celier <celier@adacore.com>
* prj-conf.adb (Do_Autoconf): When the object directory does
not exist, create auto.cgpr in the directory where temporary
files are created.
From-SVN: r182573
Tristan Gingold [Wed, 21 Dec 2011 09:44:27 +0000 (09:44 +0000)]
vms-protos.h (vms_function_section): New prototype.
2011-12-21 Tristan Gingold <gingold@adacore.com>
* config/vms/vms-protos.h (vms_function_section): New prototype.
* config/vms/vms.c (vms_function_section): New function.
* config/vms/vms.h (TARGET_ASM_FUNCTION_SECTION): Define.
From-SVN: r182571
Richard Guenther [Wed, 21 Dec 2011 09:22:58 +0000 (09:22 +0000)]
re PR lto/41159 ([LTO] ICE in insert_value_copy_on_edge, at tree-outof-ssa.c:225)
2011-12-21 Richard Guenther <rguenther@suse.de>
PR lto/41159
* tree-outof-ssa.c (insert_value_copy_on_edge): Use the
mode of the pseudo as destination mode. Only assert that
is equal to the promoted mode of the decl if it is a REG.
From-SVN: r182570
Tristan Gingold [Wed, 21 Dec 2011 08:52:47 +0000 (08:52 +0000)]
fde-vms.c (UNW_IVMS_MODE): Define.
2011-12-21 Tristan Gingold <gingold@adacore.com>
* config/ia64/fde-vms.c (UNW_IVMS_MODE): Define.
From-SVN: r182568
Tristan Gingold [Wed, 21 Dec 2011 08:42:12 +0000 (08:42 +0000)]
xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.
2011-12-21 Tristan Gingold <gingold@adacore.com>
* config/vms/xm-vms.h (STANDARD_EXEC_PREFIX): Remove define.
From-SVN: r182567
Richard Henderson [Wed, 21 Dec 2011 01:03:00 +0000 (17:03 -0800)]
ia64: Implement vec_perm_const.
* config/ia64/ia64.c (MAX_VECT_LEN): New.
(struct expand_vec_perm_d): New.
(TARGET_VECTORIZE_VEC_PERM_CONST_OK): New.
(ia64_unpack_assemble): Use ia64_expand_vec_perm_const_1.
(expand_vselect, expand_vselect_vconcat): New.
(expand_vec_perm_identity, expand_vec_perm_shrp): New.
(expand_vec_perm_1, expand_vec_perm_broadcast): New.
(expand_vec_perm_interleave_2, expand_vec_perm_v4hi_5): New.
(ia64_expand_vec_perm_const_1, ia64_expand_vec_perm_const): New.
(ia64_vectorize_vec_perm_const_ok): New.
(ia64_expand_vec_setv2sf, ia64_expand_vec_perm_even_odd): New.
* config/ia64/ia64-protos.h: Update.
* config/ia64/vect.md (VEC): New mode iterator.
(vecint): New mode attribute.
(vec_interleave_lowv8qi, vec_interleave_highv8qi): Privatize with '*'.
(vec_interleave_lowv4hi, vec_interleave_highv4hi): Likewise.
(vec_interleave_lowv2si, vec_interleave_highv2si): Likewise.
(vec_interleave_lowv2sf, vec_interleave_highv2sf): Likewise.
(mix1_even, mix1_odd, mux1_alt): Likewise.
(mux1_brcst_qi): Remove '*' from name.
(vec_extract_evenv8qi, vec_extract_oddv8qi): Remove.
(vec_extract_evenv4hi, vec_extract_oddv4hi): Remove.
(vec_extract_evenv2si, vec_extract_oddv2si): Remove.
(vec_extract_evenv2sf, vec_extract_oddv2sf): Remove.
(vec_extract_evenodd_helper): Remove.
(vec_setv2sf): Use ia64_expand_vec_setv2sf.
(vec_pack_trunc_v4hi): Use ia64_expand_vec_perm_even_odd.
(vec_pack_trunc_v2si): Likewise.
(vec_perm_const<VEC>): New.
From-SVN: r182564
Richard Henderson [Wed, 21 Dec 2011 00:41:24 +0000 (16:41 -0800)]
Always simplify vector shifts by scalars.
Also decompose vectors in large integer modes.
* tree-vect-generic.c (expand_vector_operations_1): Correct tests
for vector types -- use the type not the mode. Fix optab selection
for vector shifts by a scalar. Handle over-large integer modes
like BLKmode.
From-SVN: r182563
Richard Henderson [Wed, 21 Dec 2011 00:35:41 +0000 (16:35 -0800)]
arm: Split xorsi with constant after reload.
This puts xorsi3 in the same format as andsi3 and iorsi3.
This similarity fixes code generation issues with splitting
atomic_fetch_xor post-reload.
* config/arm/arm.md (*arm_xorsi3): Match iorsi3 and perform
post-reload splitting.
From-SVN: r182562
Richard Henderson [Wed, 21 Dec 2011 00:34:09 +0000 (16:34 -0800)]
arm: Use arm_cmpdi_unsigned for thumb2 as well
This changes code generation from "eors; eors; orrs" (which ranges
from 6 to 12 bytes and requires three scratch registers), to
"cmp; it; cmp" (which is always 6 bytes for register inputs and
requires no scratch registers).
* config/arm/arm.md (*arm_cmpdi_unsigned): Enable for thumb2.
* config/arm/arm.c (arm_select_cc_mode): Use it.
From-SVN: r182561
GCC Administrator [Wed, 21 Dec 2011 00:19:23 +0000 (00:19 +0000)]
Daily bump.
From-SVN: r182560
Paolo Carlini [Tue, 20 Dec 2011 23:51:09 +0000 (23:51 +0000)]
re PR c++/51621 ([c++0x] [4.6/4.7 Regression] ICE with invalid constexpr and array class member)
/cp
2011-12-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51621
* tree.c (diagnose_non_constexpr_vec_init): For value initialization
pass void_type_node, not void_zero_node, to build_vec_init_elt.
/testsuite
2011-12-20 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/51621
* g++.dg/cpp0x/constexpr-ice5.C: New.
From-SVN: r182556
Ian Lance Taylor [Tue, 20 Dec 2011 22:34:30 +0000 (22:34 +0000)]
morestack.S (__morestack_non_split): If there is enough stack space already, don't split.
* config/i386/morestack.S (__morestack_non_split): If there is
enough stack space already, don't split. Ask for more stack space
than we required.
From-SVN: r182555
Richard Sandiford [Tue, 20 Dec 2011 21:33:48 +0000 (21:33 +0000)]
tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict handling of signedness differences to integer types.
gcc/
* tree-ssa-math-opts.c (convert_plusminus_to_widen): Restrict
handling of signedness differences to integer types. Only build
a new optype if type1 isn't correct.
From-SVN: r182554
Vladimir Makarov [Tue, 20 Dec 2011 21:29:36 +0000 (21:29 +0000)]
re PR target/49865 (Unnecessary reload causes small bloat)
2011-12-20 Vladimir Makarov <vmakarov@redhat.com>
PR target/49865
* ira-costs.c (find_costs_and_classes): Prefer registers even
if the memory cost is the same.
From-SVN: r182553
Sergio Durigan Junior [Tue, 20 Dec 2011 20:54:25 +0000 (20:54 +0000)]
unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and `sys/sdt.h'.
2011-12-20 Sergio Durigan Junior <sergiodj@redhat.com>
* unwind-arm-common.inc: Include `tconfig.h', `tsystem.h' and
`sys/sdt.h'.
(_Unwind_DebugHook): New function.
(uw_restore_core_regs): New define.
(unwind_phase2): Use uw_restore_core_regs instead of
restore_core_regs.
(unwind_phase2_forced): Likewise.
(__gnu_Unwind_Resume): Likewise.
From-SVN: r182552
Joseph Myers [Tue, 20 Dec 2011 20:44:13 +0000 (20:44 +0000)]
gcc:
* c-decl.c (diagnose_mismatched_decls, grokdeclarator, grokfield)
(finish_struct): Refer to C11 in comments. Use flag_isoc11.
* c-parser.c (c_parser_static_assert_declaration)
(c_parser_static_assert_declaration_no_semi, c_parser_declspecs)
(c_parser_alignas_specifier, c_parser_alignof_expression): Refer
to C11 in comments. Use flag_isoc11.
* c-typeck.c (comptypes_check_different_types): Refer to C11 in
comment.
* doc/cpp.texi (Overview): Refer to -std=c11 instead of -std=c1x.
* doc/cppopts.texi (-std=c11, -std=gnu11): Document in preference
to -std=c1x and -std=gnu1x.
* doc/extend.texi (Inline, Alternate Keywords, Other Builtins)
(__builtin_complex, Unnamed Fields): Refer to -std=c11 and C11
instead of -std=c1x and C1X.
* doc/invoke.texi (-std=c11, -std=iso9899:2011): Document in
preference to -std=c1x.
(-std=gnu11): Document in preference to -std=gnu1x.
* doc/standards.texi: Document C11 instead of C1X. Document C11
as actual standard. Document headers required from freestanding
C11 implementations.
* ginclude/float.h, ginclude/stddef.h: Test __STDC_VERSION__ >=
201112L for C11. Update comments to refer to C11.
gcc/c-family:
* c-common.c (flag_isoc99): Update comment to refer to C11.
(flag_isoc1x): Change to flag_isoc11.
* c-common.h (flag_isoc99): Update comment to refer to C11.
(flag_isoc1x): Change to flag_isoc11.
* c-cppbuiltin.c (cpp_atomic_builtins): Change comment to refer to
C11.
* c-opts.c (set_std_c1x): Change to set_std_c11.
(c_common_handle_option): Handle OPT_std_c11 and OPT_std_gnu11.
Call set_std_c11.
(set_std_c89, set_std_c99, set_std_c11): Use flag_isoc11.
(set_std_c1): Use CLK_STDC11 and CLK_GNUC11.
* c.opt (std=c1x): Change to std=c11. Document as non-draft
standard.
(std=c1x, std=iso9899:2011): Add as aliases of std=c11.
(std=gnu1x): Change to std=gnu11. Refer to non-draft standard.
(std=gnu1x): Make alias of std=gnu11.
gcc/testsuite:
* gcc.dg/c11-version-1.c, gcc.dg/c11-version-2.c,
gcc.dg/c94-version-1.c, gcc.dg/c99-version-1.c,
gcc.dg/gnu11-version-1.c: New tests.
libcpp:
* include/cpplib.h (CLK_GNUC1X): Change to CLK_GNUC11.
(CLK_STDC1X): Change to CLK_STDC11.
* init.c (lang_defaults): Update comments.
(cpp_init_builtins): Update language tests. Use 201112L for C11
__STDC_VERSION__.
From-SVN: r182551