Marek Polacek [Mon, 21 Oct 2013 18:40:34 +0000 (18:40 +0000)]
re PR middle-end/58809 (ICE with complex variable in OpenMP reduction clause)
PR middle-end/58809
* fold-const.c (fold_range_test): Return 0 if the type is not
an integral type.
testsuite/
* gcc.dg/gomp/pr58809.c: New test.
From-SVN: r203907
Richard Sandiford [Mon, 21 Oct 2013 18:32:23 +0000 (18:32 +0000)]
system.h: Move hwint.h include further down.
gcc/
* system.h: Move hwint.h include further down.
* hwint.h (sext_hwi, zext_hwi): Define unconditionally. Add
gcc_checking_asserts.
* hwint.c (sext_hwi, zext_hwi): Delete ENABLE_CHECKING versions.
From-SVN: r203906
Cong Hou [Mon, 21 Oct 2013 18:08:49 +0000 (14:08 -0400)]
MAINTAINERS (Write After Approval): Add myself.
2013-10-21 Cong Hou <congh@google.com>
* MAINTAINERS (Write After Approval): Add myself.
From-SVN: r203904
Vidya Praveen [Mon, 21 Oct 2013 16:50:09 +0000 (17:50 +0100)]
20050922-1.c: Remove stdlib.h and declare abort().
* gcc.dg/
20050922-1.c: Remove stdlib.h and declare abort().
* gcc.dg/
20050922-1.c: Remove stdlib.h and declare abort() and
exit().
From-SVN: r203901
Bernd Edlinger [Mon, 21 Oct 2013 15:57:05 +0000 (15:57 +0000)]
Fix volatile issues in optimize_bit_field_compare.
2013-10-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix volatile issues in optimize_bit_field_compare.
* fold-const.c (optimize_bit_field_compare): Bail out if
lvolatilep or rvolatilep.
From-SVN: r203899
Bernd Edlinger [Mon, 21 Oct 2013 15:51:48 +0000 (15:51 +0000)]
Fix DECL_BIT_FIELD depencency on flag_strict_volatile_bitfields and...
2013-10-21 Bernd Edlinger <bernd.edlinger@hotmail.de>
Fix DECL_BIT_FIELD depencency on flag_strict_volatile_bitfields
and get_inner_reference returning different pmode for non-volatile
bit-field members dependent on flag_strict_volatile_bitfields.
* stor-layout.c (layout_decl): Remove special handling of
flag_strict_volatile_bitfields.
* expr.c (get_inner_reference): Don't use DECL_BIT_FIELD
if flag_strict_volatile_bitfields > 0 and TREE_THIS_VOLATILE.
From-SVN: r203898
Paulo Matos [Mon, 21 Oct 2013 15:41:46 +0000 (15:41 +0000)]
ipa-inline.c (edge_badness): Cap edge->count at max_count for badness calculations.
* ipa-inline.c (edge_badness): Cap edge->count at max_count for badness
calculations.
From-SVN: r203897
Jeff Law [Mon, 21 Oct 2013 15:25:09 +0000 (09:25 -0600)]
tree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED.
* tree-ssa-threadedge.c (thread_through_normal_block): New argument VISITED.
Remove VISISTED as a local variable. When we have a threadable jump, verify
the destination of the jump has not been visised.
(thread_across_edge): Allocate VISITED bitmap once at function scope and
use it throughout. Make sure to set appropriate bits in VISITED for E (start
of jump thread path).
* tree-ssa-threadupdate.c (mark_threaded_blocks): Reject threading through
a joiner if any edge on the path has a recorded jump thread.
From-SVN: r203895
Ian Lance Taylor [Mon, 21 Oct 2013 15:09:59 +0000 (15:09 +0000)]
invoke.texi (Optimize Options): For -fno-toplevel-reorder, don't imply that attributes can solve all problems.
* doc/invoke.texi (Optimize Options): For -fno-toplevel-reorder,
don't imply that attributes can solve all problems.
(Directory Options): Fix typo.
From-SVN: r203894
Edward Smith-Rowland [Mon, 21 Oct 2013 13:52:39 +0000 (13:52 +0000)]
re PR libstdc++/58804 (dynamic_bitset<> uses popcountl on long long)
2013-10-20 Edward Smith-Rowland <3dw4rd@verizon.net>
PR libstdc++/58804
PR libstdc++/58729
* include/tr2/dynamic_bitset
(__dynamic_bitset_base<_WordT, _Alloc>::_M_are_all_aux,
__dynamic_bitset_base<_WordT, _Alloc>::_M_do_count):
Use __builtin_popcountll() instead of __builtin_popcountl().
* include/tr2/dynamic_bitset.tcc
(__dynamic_bitset_base<_WordT, _Alloc>::_M_do_find_first,
__dynamic_bitset_base<_WordT, _Alloc>::_M_do_find_next):
Use __builtin_ctzll() instead of __builtin_ctzl().
From-SVN: r203893
Kyrylo Tkachov [Mon, 21 Oct 2013 13:44:11 +0000 (13:44 +0000)]
arm.c (cortexa9_extra_costs): Update mult costs for extend and extend_add.
[gcc/]
2013-10-21 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (cortexa9_extra_costs): Update mult costs for
extend and extend_add.
From-SVN: r203892
Richard Biener [Mon, 21 Oct 2013 13:33:29 +0000 (13:33 +0000)]
re PR tree-optimization/58794 (ICE in set_lattice_value, at tree-ssa-ccp.c:455 on x86_64-linux-gnu (at -O1, -O2, and -O3))
2013-10-21 Richard Biener <rguenther@suse.de>
PR tree-optimization/58794
* fold-const.c (operand_equal_p): Compare FIELD_DECL operand
of COMPONENT_REFs with OEP_CONSTANT_ADDRESS_OF left in place.
* c-c++-common/torture/pr58794-1.c: New testcase.
* c-c++-common/torture/pr58794-2.c: Likewise.
From-SVN: r203891
Richard Biener [Mon, 21 Oct 2013 11:34:04 +0000 (11:34 +0000)]
re PR middle-end/58742 (pointer arithmetic simplification)
2013-10-21 Richard Biener <rguenther@suse.de>
PR middle-end/58742
* fold-const.c (fold_binary_loc): Fold ((T) (X /[ex] C)) * C
to (T) X for sign-changing conversions (or no conversion).
* c-c++-common/fold-divmul-1.c: New testcase.
From-SVN: r203890
Uros Bizjak [Mon, 21 Oct 2013 11:11:14 +0000 (13:11 +0200)]
i386.md (kxnor<mode>): Add FLAGS_REG clobber.
* config/i386/i386.md (kxnor<mode>): Add FLAGS_REG clobber.
From-SVN: r203889
Jan Hubicka [Mon, 21 Oct 2013 11:02:08 +0000 (13:02 +0200)]
* config/i386/i386-tune.def: Add comment; organize into categories
From-SVN: r203888
Michael Zolotukhin [Mon, 21 Oct 2013 08:30:50 +0000 (08:30 +0000)]
i386.c (expand_set_or_movmem_via_loop): Add issetmem argument.
* config/i386/i386.c (expand_set_or_movmem_via_loop): Add issetmem
argument. Update function comment.
(expand_set_or_movmem_via_rep): New function combining
expand_movmem_via_rep_mov and expand_setmem_via_rep_stos.
(expand_movmem_via_rep_mov): Remove.
expand_setmem_via_rep_stos): Remove.
(expand_movmem_epilogue): Update calls correspondingly.
(expand_setmem_epilogue_via_loop): Likewise.
(emit_memset): New.
(expand_setmem_epilogue): Add VEC_VALUE argument, refactor.
(expand_set_or_movmem_prologue): New function combining
expand_movmem_prologue and expand_setmem_prologue.
(expand_movmem_prologue): Remove.
(expand_setmem_prologue): Remove.
(expand_set_or_movmem_constant_prologue): New function combining
expand_constant_movmem_prologue and expand_constant_setmem_prologue.
(expand_constant_movmem_prologue): Remove.
(expand_constant_setmem_prologue): Remove.
(promote_duplicated_reg): Allow vector-const0 value.
(ix86_expand_set_or_movmem): New function combining ix86_expand_movmem
and ix86_expand_setmem.
(ix86_expand_movmem): Call ix86_expand_set_or_movmem.
(ix86_expand_setmem): Call ix86_expand_set_or_movmem.
testsuite/
* gcc.target/i386/memset-vector_loop-1.c: New test.
* gcc.target/i386/memset-vector_loop-2.c: New test.
From-SVN: r203886
GCC Administrator [Mon, 21 Oct 2013 00:17:03 +0000 (00:17 +0000)]
Daily bump.
From-SVN: r203884
Bill Schmidt [Sun, 20 Oct 2013 13:55:54 +0000 (13:55 +0000)]
altivec.md (vec_unpacku_hi_v16qi): Adjust for little endian.
2013-10-20 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/altivec.md (vec_unpacku_hi_v16qi): Adjust for
little endian.
(vec_unpacku_hi_v8hi): Likewise.
(vec_unpacku_lo_v16qi): Likewise.
(vec_unpacku_lo_v8hi): Likewise.
From-SVN: r203877
Jan Hubicka [Sun, 20 Oct 2013 11:18:12 +0000 (13:18 +0200)]
x86-tune.def (X86_TUNE_SLOW_IMUL_IMM32_MEM, [...]): Keep enabled only for K8 and AMDFAM10.
* config/i386/x86-tune.def (X86_TUNE_SLOW_IMUL_IMM32_MEM,
X86_TUNE_SLOW_IMUL_IMM8): Keep enabled only for K8 and AMDFAM10.
(X86_TUNE_USE_VECTOR_FP_CONVERTS): Disable for generic.
From-SVN: r203876
Tim Shen [Sun, 20 Oct 2013 10:07:29 +0000 (10:07 +0000)]
regex.h: Remove virtual class _Automaton.
2013-10-20 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h: Remove virtual class _Automaton.
* include/bits/regex_automaton.h: Likewise.
* include/bits/regex.tcc: Adjust comment for policy changing.
* include/bits/regex_executor.h: Update comments of complexity.
* include/bits/regex_executor.tcc: Adjust executor choosing
policy. Now DFS executor is the default one.
* testsuite/util/testsuite_regex.h (regex_match_debug,
regex_search_debug): Adjust for policy changing.
From-SVN: r203875
Chris Jefferson [Sun, 20 Oct 2013 09:07:36 +0000 (09:07 +0000)]
re PR libstdc++/58800 (std::nth_element segfaults on valid input)
2013-10-20 Chris Jefferson <chris@bubblescope.net>
Paolo Carlini <paolo.carlini@oracle.com>
PR libstdc++/58800
* include/bits/stl_algo.h (__unguarded_partition_pivot): Change
__last - 2 to __last - 1.
* testsuite/25_algorithms/nth_element/58800.cc: New
Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>
From-SVN: r203872
Richard Sandiford [Sun, 20 Oct 2013 07:21:00 +0000 (07:21 +0000)]
mips-ps-5.c: Add alignment attributes.
gcc/testsuite/
* gcc.target/mips/mips-ps-5.c: Add alignment attributes.
* gcc.target/mips/mips-ps-7.c: Likewise.
From-SVN: r203871
Richard Sandiford [Sun, 20 Oct 2013 07:17:47 +0000 (07:17 +0000)]
mips.h (ISA_HAS_WSBH): Define.
gcc/
* config/mips/mips.h (ISA_HAS_WSBH): Define.
* config/mips/mips.md (UNSPEC_WSBH, UNSPEC_DSBH, UNSPEC_DSHD): New
constants.
(bswaphi2, bswapsi2, bswapdi2, wsbh, dsbh, dshd): New patterns.
gcc/testsuite/
* gcc.target/mips/bswap-1.c, gcc.target/mips/bswap-2.c,
gcc.target/mips/bswap-3.c, gcc.target/mips/bswap-4.c,
gcc.target/mips/bswap-5.c, gcc.target/mips/bswap-6.c: New tests.
From-SVN: r203870
GCC Administrator [Sun, 20 Oct 2013 00:16:46 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r203869
John David Anglin [Sat, 19 Oct 2013 22:37:59 +0000 (22:37 +0000)]
opaque-vector.c: Skip long double test on hppa.
* c-c++-common/opaque-vector.c: Skip long double test on hppa.
From-SVN: r203866
John David Anglin [Sat, 19 Oct 2013 22:20:38 +0000 (22:20 +0000)]
re PR testsuite/58645 (FAIL: gnat.dg/specs/linker_alias.ads (test for errors, line 6))
PR testsuite/58645
* gnat.dg/specs/linker_alias.ads: Skip on hppa*-*-hpux*.
From-SVN: r203865
John David Anglin [Sat, 19 Oct 2013 22:05:06 +0000 (22:05 +0000)]
re PR target/58603 (hash-table.h:962: error: anachronistic old-style base class initia)
PR target/58603
* system.h: Undef m_slot.
From-SVN: r203864
Bill Schmidt [Sat, 19 Oct 2013 20:52:34 +0000 (20:52 +0000)]
rs6000.c (vspltis_constant): Make sure we check all elements for both endian flavors.
2013-10-19 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (vspltis_constant): Make sure we check
all elements for both endian flavors.
From-SVN: r203863
Mike Stump [Sat, 19 Oct 2013 19:13:15 +0000 (19:13 +0000)]
lto.exp: Add support for C/C++ mix language testing.
* g++.dg/lto/lto.exp: Add support for C/C++ mix language testing.
* gcc.dg/lto/pr54625-1_0.c: Move from here...
* g++.dg/lto/pr54625-1_0.c: ... to here.
* gcc.dg/lto/pr54625-1_1.C: Likewise.
* g++.dg/lto/pr54625-1_1.C: Likewise.
* gcc.dg/lto/pr54625-2_0.c: Likewise.
* g++.dg/lto/pr54625-2_0.c: Likewise.
* gcc.dg/lto/pr54625-2_1.C: Likewise.
* g++.dg/lto/pr54625-2_1.C: Likewise.
From-SVN: r203862
Oleg Endo [Sat, 19 Oct 2013 13:29:31 +0000 (13:29 +0000)]
pr54089-3.c: Fix test for load of constant 31.
* gcc.target/sh/pr54089-3.c: Fix test for load of constant 31.
From-SVN: r203859
Uros Bizjak [Sat, 19 Oct 2013 12:58:20 +0000 (14:58 +0200)]
re PR target/58792 (ICE at mode-switching.c:421 when compiling clang lib/AST/MicrosoftCXXABI.cpp)
PR target/58792
* config/i386/i386.c (ix86_function_value_regno): Add DX_REG,
ST1_REG and XMM1_REG for 32bit and 64bit targets. Also add DI_REG
and SI_REG for 64bit SYSV ABI targets.
From-SVN: r203857
Uros Bizjak [Sat, 19 Oct 2013 12:32:25 +0000 (14:32 +0200)]
mode-switching.c (create_pre_exit): Rename maybe_builtin_apply to multi_reg_return.
* mode-switching.c (create_pre_exit): Rename maybe_builtin_apply
to multi_reg_return. Clarify that we are skipping USEs of multiple
return registers. Use bool type where appropriate.
From-SVN: r203856
Jan Hubicka [Sat, 19 Oct 2013 12:11:14 +0000 (14:11 +0200)]
i386.h (ACCUMULATE_OUTGOING_ARGS): Disable accumulation for cold functions.
* config/i386/i386.h (ACCUMULATE_OUTGOING_ARGS): Disable accumulation
for cold functions.
* x86-tune.def (X86_TUNE_USE_LEAVE): Update comment.
(X86_TUNE_PUSH_MEMORY): Likewise.
(X86_TUNE_AVX256_UNALIGNED_LOAD_OPTIMAL,
X86_TUNE_AVX256_UNALIGNED_STORE_OPTIMAL): New.
(X86_TUNE_ACCUMULATE_OUTGOING_ARGS, X86_TUNE_ALWAYS_FANCY_MATH_387): New.
* i386.c (x86_accumulate_outgoing_args, x86_arch_always_fancy_math_387,
x86_avx256_split_unaligned_load, x86_avx256_split_unaligned_store):
Remove.
(ix86_option_override_internal): Update to use tune features instead
of variables.
From-SVN: r203855
Thomas Quinot [Sat, 19 Oct 2013 11:46:04 +0000 (11:46 +0000)]
Makefile.in: Use canonical absolute path to refer to the top source directory and to the...
* gcc-interface/Makefile.in: Use canonical absolute path to refer to
the top source directory and to the libgcc subidrectories.
From-SVN: r203854
Eric Botcazou [Sat, 19 Oct 2013 11:11:03 +0000 (11:11 +0000)]
utils.c (scale_by_factor_of): New function.
* gcc-interface/utils.c (scale_by_factor_of): New function.
(rest_of_record_type_compilation): Use scale_by_factor_of in order to
scale the original offset for both rounding cases; in the second case,
take into accout the addend to compute the alignment. Tidy up.
From-SVN: r203852
Eric Botcazou [Sat, 19 Oct 2013 11:03:34 +0000 (11:03 +0000)]
cuintp.c: Remove useless include directives.
* gcc-interface/cuintp.c: Remove useless include directives.
(build_cst_from_int): Use standard predicate.
(UI_To_gnu): Simplify.
(UI_From_gnu): Fix formatting.
* gcc-interface/trans.c (post_error): Likewise.
(post_error_ne): Likewise.
From-SVN: r203851
Eric Botcazou [Sat, 19 Oct 2013 10:55:57 +0000 (10:55 +0000)]
utils.c (gnat_set_type_context): New function.
* gcc-interface/utils.c (gnat_set_type_context): New function.
(gnat_pushdecl): Use it to set the context of the type.
From-SVN: r203848
Cong Hou [Sat, 19 Oct 2013 05:20:24 +0000 (01:20 -0400)]
re PR tree-optimization/58508 ([Missed-Optimization] Redundant vector load of "actual" loop invariant in loop body.)
PR tree-optimization/58508
* tree-vect-loop-manip.c (vect_loop_versioning): Hoist loop invariant
statement that contains data refs with zero-step.
* gcc.dg/vect/pr58508.c: New test.
From-SVN: r203842
Edward Smith-Rowland [Sat, 19 Oct 2013 01:31:19 +0000 (01:31 +0000)]
re PR libstdc++/58729 (tr2::dynamic_bitset::resize fails)
2013-10-18 Edward Smith-Rowland <3dw4rd@verizon.net>
PR libstdc++/58729
* include/tr2/dynamic_bitset (_M_resize, resize): Use input value
to set bits; (_M_do_left_shift, _M_do_right_shift, _M_do_to_ulong,
_M_do_to_ullong, _M_do_find_first, _M_do_find_next, _M_copy_from_ptr,
operator>>): Move long methods outline to...
* include/tr2/dynamic_bitset.tcc: New.
* include/Makefile.am: Add dynamic_bitset.tcc.
* include/Makefile.in: Add dynamic_bitset.tcc.
* testsuite/tr2/dynamic_bitset/pr58729.cc: New.
From-SVN: r203841
GCC Administrator [Sat, 19 Oct 2013 00:16:42 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r203839
Paolo Carlini [Fri, 18 Oct 2013 21:24:05 +0000 (21:24 +0000)]
re PR c++/58466 (ICE in cxx_eval_constant_expression)
/cp
2013-10-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58466
* pt.c (most_specialized_class): Bump processing_template_decl for
get_class_bindings.
/testsuite
2013-10-18 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58466
* g++.dg/cpp0x/variadic145.C: New.
From-SVN: r203836
Andrew MacLeod [Fri, 18 Oct 2013 19:35:40 +0000 (19:35 +0000)]
tree-ssa.h: Don't include gimple-low.h...
* tree-ssa.h: Don't include gimple-low.h, tree-ssa-address.h, sbitmap.h,
tree-ssa-threadedge.h, tree-ssa-dom.h, and tree-cfgcleanup.h.
* gimple-low.c (gimple_check_call_arg,
gimple_check_call_matching_types): Move to cgraph.c.
* gimple-low.h: Remove prototype.
* cgraph.c: (gimple_check_call_arg, gimple_check_call_matching_types):
Relocate from gimple-low.c.
* cgraph.h: Add prototype. Don't include basic-block.h.
* gimplify.c: Add gimple-low to include list.
* omp-low.c: Add gimple-low and tree-cfgcleanup.h to include list.
* tree-eh.c: Add gimple-low to include list.
* tree-nested.c: Likewise.
* cfgexpand.c: Add tree-ssa-address.h to include list.
* expr.c: Likewise.
* gimple-fold.c: Likewise.
* gimple-ssa-strength-reduction.c: Likewise.
* trans-mem.c: Likewise.
* tree-mudflap.c: Likewise.
* tree-ssa-loop-ivopts.c: Likewise.
* tree-ssa-dom.c: Include tree-ssa-threadedge.h and tree-ssa-dom.h.
(degenerate_phi_result): Move to tree-phinodes.c.
* tree-ssa-loop-ch.c: Include tree-ssa-threadedge.h.
* tree-ssa-threadedge.c: Likewise.
* tree-vrp.c: Likewise.
* tree-phinodes.c (degenerate_phi_result): Relocate here.
* tree-ssa-dom.h (degenerate_phi_result): Remove Prototype.
* tree-phinodes.h (degenerate_phi_result): Add prototype.
* tree-ssa-copy.c: Include tree-ssa-dom.h.
* tree-ssa-forwprop.c: Likewise.
* tree-cfgcleanup.c (execute_cleanup_cfg_post_optimizing,
pass_data_cleanup_cfg_post_optimizing,
make_pass_cleanup_cfg_post_optimizing): Relocate from tree-optimize.c.
* tree-optimize.c: Delete File.
* graphite.c: Include tree-cfgcleanup.h.
* passes.c: Likewise.
* tree-cfg.c: Likewise.
* tree-profile.c: Likewise.
* tree-ssa-dse.c: Likewise.
* tree-ssa-loop-ivcanon.c: Likewise.
* tree-switch-conversion.c: Don't include tree-ssa-operands.h.
* tree-outof-ssa.c: Include sbitmap.h.
* tree-ssa-live.c: Likewise.
* tree-ssa-propagate.c: Likewise.
* tree-ssa-structalias.c: Likewise.
* tree-stdarg.c: Likewise.
* Makefile.in (OBJS): Delete tree-optimize.o.
* basic-block.h (gcov_type, gcov_type_unsigned): Move to coretypes.h.
* coretypes.h (gcov_type, gcov_type_unsigned): Relocate here.
* varasm.c: Include basic-block.h.
* cfgloop.h: Include function.h instead of basic-block.h
(bb_loop_depth): Move to cfgloop.c.
* cfgloop.c (bb_loop_depth): Relocate from cfgloop.h.
From-SVN: r203833
Teresa Johnson [Fri, 18 Oct 2013 17:25:44 +0000 (17:25 +0000)]
predict.c (probably_never_executed): Compare frequency-based count to number of training runs.
2013-10-18 Teresa Johnson <tejohnson@google.com>
* predict.c (probably_never_executed): Compare frequency-based
count to number of training runs.
* params.def (UNLIKELY_BB_COUNT_FRACTION): New parameter.
From-SVN: r203830
Kyrylo Tkachov [Fri, 18 Oct 2013 17:20:49 +0000 (17:20 +0000)]
arm.c (cortexa9_extra_costs): New table.
[gcc/]
2013-10-18 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/arm/arm.c (cortexa9_extra_costs): New table.
(arm_cortex_a9_tune): Use cortexa9_extra_costs.
From-SVN: r203828
Tim Shen [Fri, 18 Oct 2013 16:13:07 +0000 (16:13 +0000)]
regex_scanner.tcc: (_Scanner<>::_M_scan_normal...
2013-10-18 Tim Shen <timshen91@gmail.com>
* include/bits/regex_scanner.tcc: (_Scanner<>::_M_scan_normal,
_Scanner<>::_M_eat_escape_ecma, _Scanner<>::_M_eat_escape_posix,
_Scanner<>::_M_eat_escape_awk): Narrow character before finding in maps.
* testsuite/28_regex/algorithms/regex_match/ecma/wchar_t/cjk_match.cc:
New.
From-SVN: r203827
Jeff Law [Fri, 18 Oct 2013 15:50:04 +0000 (09:50 -0600)]
tree-ssa-threadupdate.c: Do not include "tm.h" or "tm_p.h".
* tree-ssa-threadupdate.c: Do not include "tm.h" or "tm_p.h".
* tree-ssa-threadupdate.c: Include "dbgcnt.h".
(register_jump_thread): Add "registered_jump_thread" debug counter support.
* dbgcnt.def (registered_jump_thread): New debug counter.
From-SVN: r203825
Andrew MacLeod [Fri, 18 Oct 2013 14:59:30 +0000 (14:59 +0000)]
rs6000.c: Include cgraph.h.
* config/rs6000/rs6000.c: Include cgraph.h.
From-SVN: r203824
Teresa Johnson [Fri, 18 Oct 2013 14:36:53 +0000 (14:36 +0000)]
tree-ssa-tail-merge.c (replace_block_by): Update edge weights during merging.
2013-10-18 Teresa Johnson <tejohnson@google.com>
* tree-ssa-tail-merge.c (replace_block_by): Update edge
weights during merging.
From-SVN: r203823
Paolo Carlini [Fri, 18 Oct 2013 14:35:33 +0000 (14:35 +0000)]
parser.c (cp_parser_lookup_name): Tidy.
2013-10-18 Paolo Carlini <paolo.carlini@oracle.com>
* parser.c (cp_parser_lookup_name): Tidy.
From-SVN: r203822
Ian Lance Taylor [Fri, 18 Oct 2013 13:26:40 +0000 (13:26 +0000)]
runtime: Fix typo in dup3 fallback implementation.
From Uros Bizjak.
From-SVN: r203820
Andrew Macleod [Fri, 18 Oct 2013 12:39:34 +0000 (12:39 +0000)]
tree-cfg.h: Rename from tree-flow.h.
* tree-cfg.h: Rename from tree-flow.h. Remove #includes.
* tree-ssa.h: Relocate required #includes from tree-cfg.h.
* tree-ssa-operands.h: Remove prototype.
* tree-ssa-operands.c (virtual_operand_p): Move to gimple.c.
* gimple.c (virtual_operand_p): Relocate from gimple.c.
* gimple.h: Add prototype.
* gimple-ssa.h: Include tree-ssa-operands.h.
* tree-dump.c: Add tree-cfg.h to include list.
* tree-ssa-alias.c: Add ipa-reference.h to include list.
* config/alpha/alpha.c: Include gimple-ssa.h instead of tree-flow.h.
* config/i386/i386.c: Don't include tree-flow.h.
* config/rs6000/rs6000.c: Likewise.
* lto/lto.c: Remove tree-flow.h from include list.
* testsuite/g++.dg/plugin/header_plugin.c: Don't include tree-flow.h.
From-SVN: r203817
Jan-Benedict Glaw [Fri, 18 Oct 2013 10:04:27 +0000 (10:04 +0000)]
frv.c (frv_init_cumulative_args): Fix wrong cast.
2013-10-18 Jan-Benedict Glaw <jbglaw@lug-owl.de>
* config/frv/frv.c (frv_init_cumulative_args): Fix wrong cast.
From-SVN: r203814
Richard Biener [Fri, 18 Oct 2013 08:36:28 +0000 (08:36 +0000)]
stor-layout.c (layout_type): Do not change TYPE_PRECISION or TYPE_UNSIGNED of integral types.
2013-10-18 Richard Biener <rguenther@suse.de>
* stor-layout.c (layout_type): Do not change TYPE_PRECISION
or TYPE_UNSIGNED of integral types.
(set_min_and_max_values_for_integral_type): Leave TYPE_MIN/MAX_VALUE
NULL_TREE for zero-precision integral types.
From-SVN: r203813
James Greenhalgh [Fri, 18 Oct 2013 08:31:15 +0000 (08:31 +0000)]
[AArch64] Fix types for vcvt<sd>_n intrinsics.
gcc/
* config/aarch64/arm_neon.h
(vcvt<ds>_n_<fsu><32,64>_<fsu><32,64>): Correct argument types.
From-SVN: r203812
Uros Bizjak [Fri, 18 Oct 2013 06:51:35 +0000 (08:51 +0200)]
* ChangeLog: Remove duplicate entry.
From-SVN: r203811
Ian Lance Taylor [Fri, 18 Oct 2013 04:24:48 +0000 (04:24 +0000)]
elf.c (elf_add): Don't get the wrong offsets if a debug section is missing.
* elf.c (elf_add): Don't get the wrong offsets if a debug section
is missing.
From-SVN: r203810
Hans-Peter Nilsson [Fri, 18 Oct 2013 03:32:38 +0000 (03:32 +0000)]
gen-vect-11.c: Use dynamic vector cost model.
* gcc.dg/tree-ssa/gen-vect-11.c: Use dynamic vector cost model.
gcc.dg/tree-ssa/gen-vect-11a.c: Likewise.
gcc.dg/tree-ssa/gen-vect-2.c: Likewise.
gcc.dg/tree-ssa/gen-vect-25.c: Likewise.
From-SVN: r203809
Sriraman Tallam [Fri, 18 Oct 2013 02:47:12 +0000 (02:47 +0000)]
opth-gen.awk: Define target_flags_explicit.
* opth-gen.awk: Define target_flags_explicit.
From-SVN: r203808
GCC Administrator [Fri, 18 Oct 2013 00:16:56 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r203807
Michael Meissner [Thu, 17 Oct 2013 21:20:46 +0000 (21:20 +0000)]
p8vector-fp.c: New test for floating point scalar operations when...
2013-10-03 Michael Meissner <meissner@linux.vnet.ibm.com>
* gcc.target/powerpc/p8vector-fp.c: New test for floating point
scalar operations when using -mupper-regs-sf and -mupper-regs-df.
* gcc.target/powerpc/ppc-target-1.c: Update tests to allow either
VSX scalar operations or the traditional floating point form of
the instruction.
* gcc.target/powerpc/ppc-target-2.c: Likewise.
* gcc.target/powerpc/recip-3.c: Likewise.
* gcc.target/powerpc/recip-5.c: Likewise.
* gcc.target/powerpc/pr72747.c: Likewise.
* gcc.target/powerpc/vsx-builtin-3.c: Likewise.
From-SVN: r203800
Charles Baylis [Thu, 17 Oct 2013 20:57:21 +0000 (22:57 +0200)]
builtin-apply2.c: Skip test on arm hardfloat ABI targets.
2013-10-17 Charles Bayis <charles.baylis@linaro.org>
* gcc.dg/builtin-apply2.c: Skip test on arm hardfloat ABI targets.
* gcc.dg/tls/pr42894.c: Remove dg-options for arm*-*-* targets.
* gcc.target/arm/thumb-ltu.c: Remove dg-skip-if and require
effective target arm_thumb1_ok.
* lib/target-supports.exp
(check_effective_target_arm_fp16_ok_nocache): Don't force
-mfloat-abi=soft when building for hardfloat target.
From-SVN: r203799
Tim Shen [Thu, 17 Oct 2013 20:46:50 +0000 (20:46 +0000)]
regex.h (regex_token_iterator<>::regex_token_iterator): Fix initialization orders in initialization list and add explicit braces for...
2013-10-17 Tim Shen <timshen91@gmail.com>
* include/bits/regex.h (regex_token_iterator<>::regex_token_iterator):
Fix initialization orders in initialization list and add explicit braces
for potentially ambiguous(actually not) `else` branch to eliminate
warnings.
* include/bits/regex_automaton.h (_NFA<>::_NFA): Likewise.
* include/bits/regex_compiler.h (_CharMatcher<>::_CharMatcher,
_BracketMatcher<>::_BracketMatcher): Likewise.
* include/bits/regex_compiler.tcc (_Compiler<>::_Compiler,
_Compiler<>::_M_atom): Likewise.
* include/bits/regex_executor.h (_Executor<>::_Executor): Likewise.
* include/bits/regex_executor.tcc (_DFSExecutor<>::_M_dfs,
_Executor<>::_M_word_boundry): Likewise.
* include/bits/regex_scanner.tcc (_Scanner<>::_Scanner,
_Scanner<>::_M_eat_class): Likewise.
* include/bits/regex.tcc (__regex_algo_impl<>,
regex_iterator<>::operator++): Likewise, and remove unused typedef.
From-SVN: r203798
Michael Meissner [Thu, 17 Oct 2013 20:30:34 +0000 (20:30 +0000)]
Fix typo in ChangeLog
From-SVN: r203797
Ian Lance Taylor [Thu, 17 Oct 2013 20:08:42 +0000 (20:08 +0000)]
compiler: Rework handling of imported anonymous builtin types again.
From-SVN: r203795
Michael Meissner [Thu, 17 Oct 2013 19:12:57 +0000 (19:12 +0000)]
rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode...
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new
fields to the reg_addr array that describes the valid addressing
mode for any register, general purpose registers, floating point
registers, and Altivec registers.
(FIRST_RELOAD_REG_CLASS): Likewise.
(LAST_RELOAD_REG_CLASS): Likewise.
(struct reload_reg_map_type): Likewise.
(reload_reg_map_type): Likewise.
(RELOAD_REG_VALID): Likewise.
(RELOAD_REG_MULTIPLE): Likewise.
(RELOAD_REG_INDEXED): Likewise.
(RELOAD_REG_OFFSET): Likewise.
(RELOAD_REG_PRE_INCDEC): Likewise.
(RELOAD_REG_PRE_MODIFY): Likewise.
(reg_addr): Likewise.
(mode_supports_pre_incdec_p): New helper functions to say whether
a given mode supports PRE_INC, PRE_DEC, and PRE_MODIFY.
(mode_supports_pre_modify_p): Likewise.
(rs6000_debug_vector_unit): Rearrange the -mdebug=reg output to
print the valid address mode bits for each mode.
(rs6000_debug_print_mode): Likewise.
(rs6000_debug_reg_global): Likewise.
(rs6000_setup_reg_addr_masks): New function to set up the address
mask bits for each type.
(rs6000_init_hard_regno_mode_ok): Use memset to clear arrays.
Call rs6000_setup_reg_addr_masks to set up the address mask bits.
(rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and
mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and
PRE_MODIFY are supported.
(rs6000_output_move_128bit): Change to use {src,dest}_vmx_p for altivec
registers, instead of {src,dest}_av_p.
(rs6000_print_options_internal): Tweak the debug output slightly.
From-SVN: r203791
Michael Meissner [Thu, 17 Oct 2013 19:04:37 +0000 (19:04 +0000)]
rs6000.c (enum rs6000_reload_reg_type): Add new fields to the reg_addr array that describes the valid addressing mode...
2013-10-07 Michael Meissner <meissner@linux.vnet.ibm.com>
* config/rs6000/rs6000.c (enum rs6000_reload_reg_type): Add new
fields to the reg_addr array that describes the valid addressing
mode for any register, general purpose registers, floating point
registers, and Altivec registers.
(FIRST_RELOAD_REG_CLASS): Likewise.
(LAST_RELOAD_REG_CLASS): Likewise.
(struct reload_reg_map_type): Likewise.
(reload_reg_map_type): Likewise.
(RELOAD_REG_VALID): Likewise.
(RELOAD_REG_MULTIPLE): Likewise.
(RELOAD_REG_INDEXED): Likewise.
(RELOAD_REG_OFFSET): Likewise.
(RELOAD_REG_PRE_INCDEC): Likewise.
(RELOAD_REG_PRE_MODIFY): Likewise.
(reg_addr): Likewise.
(mode_supports_pre_incdec_p): New helper functions to say whether
a given mode supports PRE_INC, PRE_DEC, and PRE_MODIFY.
(mode_supports_pre_modify_p): Likewise.
(rs6000_debug_vector_unit): Rearrange the -mdebug=reg output to
print the valid address mode bits for each mode.
(rs6000_debug_print_mode): Likewise.
(rs6000_debug_reg_global): Likewise.
(rs6000_setup_reg_addr_masks): New function to set up the address
mask bits for each type.
(rs6000_init_hard_regno_mode_ok): Use memset to clear arrays.
Call rs6000_setup_reg_addr_masks to set up the address mask bits.
(rs6000_legitimate_address_p): Use mode_supports_pre_incdec_p and
mode_supports_pre_modify_p to determine if PRE_INC, PRE_DEC, and
PRE_MODIFY are supported.
(rs6000_print_options_internal): Tweak the debug output slightly.
From-SVN: r203790
Ian Lance Taylor [Thu, 17 Oct 2013 18:41:12 +0000 (18:41 +0000)]
syscall: Add Dup3, {Get,List,Remove,Set}xattr, {Get,Set}priority.
From-SVN: r203788
Uros Bizjak [Thu, 17 Oct 2013 17:44:11 +0000 (19:44 +0200)]
sse.md (*vec_widen_smult_even_v8si): Remove isa attribute.
* config/i386/sse.md (*vec_widen_smult_even_v8si): Remove
isa attribute.
From-SVN: r203787
Andrew MacLeod [Thu, 17 Oct 2013 17:41:07 +0000 (17:41 +0000)]
tree-flow.h (struct omp_region): Move to omp-low.c.
* tree-flow.h (struct omp_region): Move to omp-low.c.
Remove omp_ prototypes and variables.
* gimple.h (omp_reduction_init): Move prototype to omp-low.h.
(copy_var_decl): Relocate prototype from tree-flow.h.
* gimple.c (copy_var_decl): Relocate from omp-low.c.
* tree.h: Move prototype to omp-low.h.
* omp-low.h: New File. Relocate prototypes here.
* omp-low.c (struct omp_region): Make local here.
(root_omp_region): Make static.
(copy_var_decl) Move to gimple.c.
(new_omp_region): Make static.
(make_gimple_omp_edges): New. Refactored from tree-cfg.c make_edges.
* tree-cfg.c: Include omp-low.h.
(make_edges): Factor out OMP specific bits to make_gimple_omp_edges.
* gimplify.c: Include omp-low.h.
* tree-parloops.c: Likewise.
c
* c-parser.c: Include omp-low.h.
* c-typeck.c: Likewise.
cp
* parser.c: Include omp-low.h.
* semantics.c: Likewise.
fortran
* trans-openmp.c: Include omp-low.h.
From-SVN: r203786
Uros Bizjak [Thu, 17 Oct 2013 17:30:31 +0000 (19:30 +0200)]
i386.c (ix86_fixup_binary_operands): When both source operands are in memory...
* config/i386/i386.c (ix86_fixup_binary_operands): When both source
operands are in memory, prefer to force non-matched operand 1 to
the register.
From-SVN: r203785
Bernd Edlinger [Thu, 17 Oct 2013 17:11:52 +0000 (17:11 +0000)]
re PR libmudflap/58230 (multiple test fail in german language version)
2013-10-17 Bernd Edlinger <bernd.edlinger@hotmail.de>
PR libmudflap/58230
* testsuite/lib/mfdg.exp: Use C locale.
From-SVN: r203783
Michael Meissner [Thu, 17 Oct 2013 17:07:49 +0000 (17:07 +0000)]
re PR target/58673 (ICE in final_scan_insn for movti_ppc64 with base+offset address)
[gcc]
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/58673
* config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only
restrict TImode addresses to single indirect registers if both
-mquad-memory and -mvsx-timode are used.
(rs6000_output_move_128bit): Use quad_load_store_p to determine if
we should emit load/store quad. Remove using %y for quad memory
addresses.
* config/rs6000/rs6000.md (mov<mode>_ppc64, TI/PTImode): Add
constraints to allow load/store quad on machines where TImode is
not allowed in VSX registers. Use 'n' instead of 'F' constraint
for TImode to load integer constants.
[gcc/testsuite]
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/58673
* gcc.target/powerpc/pr58673-1.c: New file to test whether
-mquad-word + -mno-vsx-timode causes errors.
* gcc.target/powerpc/pr58673-2.c: Likewise.
From-SVN: r203782
Michael Meissner [Thu, 17 Oct 2013 17:06:24 +0000 (17:06 +0000)]
re PR target/58673 (ICE in final_scan_insn for movti_ppc64 with base+offset address)
[gcc]
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/58673
* config/rs6000/rs6000.c (rs6000_legitimate_address_p): Only
restrict TImode addresses to single indirect registers if both
-mquad-memory and -mvsx-timode are used.
(rs6000_output_move_128bit): Use quad_load_store_p to determine if
we should emit load/store quad. Remove using %y for quad memory
addresses.
* config/rs6000/rs6000.md (mov<mode>_ppc64, TI/PTImode): Add
constraints to allow load/store quad on machines where TImode is
not allowed in VSX registers. Use 'n' instead of 'F' constraint
for TImode to load integer constants.
[gcc/testsuite]
2013-10-17 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/58673
* gcc.target/powerpc/pr58673-1.c: New file to test whether
-mquad-word + -mno-vsx-timode causes errors.
* gcc.target/powerpc/pr58673-2.c: Likewise.
From-SVN: r203781
Paolo Carlini [Thu, 17 Oct 2013 16:58:45 +0000 (16:58 +0000)]
re PR c++/58596 ([c++11] ICE with decltype in non-static data member initializer)
/cp
2013-10-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58596
* lambda.c (lambda_expr_this_capture): Handle NSDMIs in the
cp_unevaluated_operand case.
/testsuite
2013-10-17 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/58596
* g++.dg/cpp0x/lambda/lambda-nsdmi5.C: New
From-SVN: r203780
Kyrylo Tkachov [Thu, 17 Oct 2013 16:49:49 +0000 (16:49 +0000)]
aarch64.c (aarch64_print_operand): Handle 'c'.
[gcc/]
2013-10-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* config/aarch64/aarch64.c (aarch64_print_operand): Handle 'c'.
[gcc/testsuite/]
2013-10-17 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* gcc.target/aarch64/c-output-template.c: New testcase.
* gcc.target/aarch64/c-output-template-2.c: Likewise.
* gcc.target/aarch64/c-output-template-3.c: Likewise.
From-SVN: r203779
Marcus Shawcroft [Thu, 17 Oct 2013 16:31:47 +0000 (16:31 +0000)]
[AArch64] Fix preferred_reload_class for regclass STACK_REG.
From-SVN: r203778
Michael Hudson-Doyle [Thu, 17 Oct 2013 15:49:27 +0000 (15:49 +0000)]
[AArch64] Enable building libatomic on AArch64.
From-SVN: r203774
Michael Hudson-Doyle [Thu, 17 Oct 2013 15:46:39 +0000 (15:46 +0000)]
[AArch64] Enable effective_target_sync_long_long*
From-SVN: r203773
Ian Lance Taylor [Thu, 17 Oct 2013 15:44:04 +0000 (15:44 +0000)]
compiler: Don't warn for unknown type when importing anonymous field.
From-SVN: r203772
Arnaud Charlet [Thu, 17 Oct 2013 14:09:14 +0000 (16:09 +0200)]
[multiple changes]
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Check_Dependency_Clause):
Recognize the scenario where successful clause matching has
depleted the available refinement items and the clause to match
technically refines to null => null.
2013-10-17 Tristan Gingold <gingold@adacore.com>
* exp_prag.adb (Expand_Pragma_Import_Or_Interface): Specify
External_Name instead of Link_Name for the RTTI declaration.
From-SVN: r203769
Arnaud Charlet [Thu, 17 Oct 2013 14:07:57 +0000 (16:07 +0200)]
[multiple changes]
2013-10-17 Yannick Moy <moy@adacore.com>
* sem_res.adb (Resolve_Short_Circuit): Only
generate expression-with-action when full expansion is set.
2013-10-17 Yannick Moy <moy@adacore.com>
* debug.adb Remove obsolete comment.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb (Process_Transient_Object.Find_Enclosing_Contexts):
Avoid late insertion when expanding an expression with action
nested within a transient block; Do not inconditionally generate
a finalization call if the generated object is from a specific
branch of a conditional expression.
2013-10-17 Pascal Obry <obry@adacore.com>
* g-arrspl.adb: Ensure Finalize call is idempotent.
* g-arrspl.adb (Finalize): Makes the call idempotent.
From-SVN: r203768
Arnaud Charlet [Thu, 17 Oct 2013 14:06:56 +0000 (16:06 +0200)]
[multiple changes]
2013-10-17 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Record_Possible_Body_Reference): Fix test for
being in body.
(Add_Constituent): Merged into Check_Refined_Global_Item.
(Check_Matching_Constituent): A constituent that has the proper Part_Of
option and comes from a private child or a sibling is now collected.
(Check_Matching_Modes): Merged into Check_Refined_Global_Item.
(Check_Refined_Global_Item): Code cleanup.
(Collect_Constituent): New routine.
(Inconsistent_Mode_Error): Moved out from Check_Matching_Modes.
2013-10-17 Ed Schonberg <schonberg@adacore.com>
* freeze.adb (Check_Current_Instance, Process): Add RM reference
and mention immutably limited types, when the current instance
is illegal in Ada 2012.
2013-10-17 Ed Schonberg <schonberg@adacore.com>
* sem_warn.adb (Check_Unused_Withs): If the main unit is a
subunit, apply the check to the units mentioned in its context
only. This provides additional warnings on with_clauses that
are superfluous.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch3.adb (Analyze_Declarations): Emit an
error message concerning state refinement when the spec defines at
least one non-null abstract state and the body's SPARK mode is On.
(Requires_State_Refinement): New routine.
2013-10-17 Robert Dewar <dewar@adacore.com>
* sem_ch7.ads: Comment fixes.
2013-10-17 Robert Dewar <dewar@adacore.com>
* sem_ch7.adb (Analyze_Package_Specification): Remove circuit
for ensuring that a package spec requires a body for some other
reason than that it contains the declaration of an abstract state.
2013-10-17 Tristan Gingold <gingold@adacore.com>
* exp_ch11.adb (Expand_N_Raise_Expression): Fix call of
Possible_Local_Raise.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_pakd.adb (Expand_Bit_Packed_Element_Set): Unchecked
conversion of Or_Rhs to Etype of New_Rhs is required only when
the latter is the result of a byte swap operation.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_dist.adb (Build_To_Any_Function): For a type with opaque
representation that is not transmitted as an unconstrained value,
use 'Write, not 'Output, to generate the opaque representation.
2013-10-17 Yannick Moy <moy@adacore.com>
* sem_res.adb (Resolve_Short_Circuit): Only
generate expression-with-action when full expansion is set.
2013-10-17 Yannick Moy <moy@adacore.com>
* debug.adb Remove obsolete comment.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_ch4.adb (Process_Transient_Object.Find_Enclosing_Contexts):
Avoid late insertion when expanding an expression with action
nested within a transient block; Do not inconditionally generate
a finalization call if the generated object is from a specific
branch of a conditional expression.
2013-10-17 Pascal Obry <obry@adacore.com>
* g-arrspl.adb: Ensure Finalize call is idempotent.
* g-arrspl.adb (Finalize): Makes the call idempotent.
From-SVN: r203767
Arnaud Charlet [Thu, 17 Oct 2013 14:02:49 +0000 (16:02 +0200)]
[multiple changes]
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Is_Matching_Input): Account
for the case where a state with a null refinement appears as
the last input of a refinement clause.
2013-10-17 Robert Dewar <dewar@adacore.com>
* sem_aux.ads, sem_aux.adb: Minor reformatting.
From-SVN: r203766
Hristian Kirtchev [Thu, 17 Oct 2013 14:01:39 +0000 (14:01 +0000)]
aspects.adb, [...]: Remove all entries for Refined_Pre from the various tables.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* aspects.adb, aspects.ads, sem_prag.ads: Remove all entries
for Refined_Pre from the various tables.
* par-prag.adb: Remove the entry for Refined_Pre from the list
of pragmas not needing special processing by the parser.
* sem_ch13.adb (Analyze_Aspect_Specifications):
Remove the processing for aspect Refined_Pre.
(Check_Aspect_At_Freeze_Point): Remove the entry for aspect
Refined_Pre.
* sem_prag.adb (Analyze_Pragma): Refined_Pre is no longer a
valid assertion kind. Remove the analysis of pragma Refined_Pre.
(Analyze_Refined_Pragma): Update the comment on usage.
(Find_Related_Subprogram_Or_Body): Update the comment on
usage. Pragma Refined_Pre is no longer processed by this routine.
(Is_Valid_Assertion_Kind): Refined_Pre is no longer a valid
assertion kind.
* snames.ads-tmpl: Remove predefined name Refined_Pre. Remove
the pragma id for Refined_Pre.
From-SVN: r203765
Hristian Kirtchev [Thu, 17 Oct 2013 14:00:46 +0000 (14:00 +0000)]
exp_util.adb, [...] (Entity_Of): Moved to Sem_Util.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* exp_util.adb, exp_util.ads (Entity_Of): Moved to Sem_Util.
* sem_prag.adb (Analyze_Global_In_Decl_List): Mark a null
item list as being analyzed.
(Analyze_Global_List): Mark a
null global list and multiple global items as being analyzed.
(Analyze_Input_Item): Check the unit that defines the input
variable or state, not the reference to it.
* sem_util.ads, sem_util.adb (Entity_Of): Moved from Exp_Util. Ensure
that the input has an entity.
From-SVN: r203764
Thomas Quinot [Thu, 17 Oct 2013 13:58:39 +0000 (13:58 +0000)]
exp_util.adb (Get_Current_Value_Condition, [...]): Handle the case of expressions with actions * exp_util.adb (Insert_Actions):...
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_util.adb (Get_Current_Value_Condition,
Set_Current_Value_Condition): Handle the case of expressions
with actions * exp_util.adb (Insert_Actions): Handle the case
of an expression with actions whose Actions list is empty.
* exp_util.adb (Remove_Side_Effects.Side_Effect_Free): An
expression with actions that has no Actions and whose Expression
is side effect free is itself side effect free.
* exp_util.adb (Remove_Side_Effects): Do not set an incorrect etype on
temporary 'R' (Def_Id), which is in general an access to Exp_Type, not
an Exp_Type.
* sem_res.adb (Resolve): For an expression with
actions, resolve the expression early. * sem_res.adb
(Resolve_Expression_With_Actions): Rewrite an expression with
actions whose value is compile time known and which has no
actions into just its expression, so that its constant value is
available downstream.
* sem_res.adb (Resolve_Short_Circuit):
Wrap the left operand in an expression with actions to contain
any required finalization actions.
* exp_ch4.adb (Expand_Expression_With_Actions): For an
expression with actions returning a Boolean expression, ensure
any finalization action is kept within the Actions list.
* sem_warn.adb (Check_References, Check_Unset_Reference): add
missing circuitry to handle expressions with actions.
* checks.adb (Ensure_Valid): For an expression with actions,
insert the validity check on the Expression.
* sem_ch13.adb (Build_Static_Predicate.Get_RList): An expression
with actions that has a non-empty Actions list is not static. An
expression with actions that has an empty Actions list has the
static ranges of its Expression.
* sem_util.adb (Has_No_Obvious_Side_Effects): An expression with
actions with an empty Actions list has no obvious side effects
if its Expression itsekf has no obvious side effects.
From-SVN: r203763
Ed Schonberg [Thu, 17 Oct 2013 13:54:29 +0000 (13:54 +0000)]
sem_aux.ads, [...] (Is_Immutably_Limited_Type): Make predicate compatible with Ada 2012 definition
2013-10-17 Ed Schonberg <schonberg@adacore.com>
* sem_aux.ads, sem_aux.adb (Is_Immutably_Limited_Type): Make
predicate compatible with Ada 2012 definition
(Is_Limited_View): New name for previous version of
Is_Immutably_Limited_Type. Predicate is true for an untagged
record type with a limited component.
* exp_ch7.adb, exp_ch6.adb, exp_ch4.adb, exp_ch3.adb, exp_aggr.adb,
sem_util.adb, sem_res.adb, sem_prag.adb, sem_attr.adb, sem_ch8.adb,
sem_ch6.adb, sem_ch3.adb, exp_util.adb: Use Is_Limited_View
* freeze.adb Use Is_Immutably_Limited_Type to check the legality
of references to the current instance, Is_Limited_View otherwise.
From-SVN: r203762
Hristian Kirtchev [Thu, 17 Oct 2013 13:52:37 +0000 (13:52 +0000)]
sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect Refined_Pre as not supported.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_ch13.adb (Analyze_Aspect_Specifications): Flag aspect
Refined_Pre as not supported.
* sem_prag.adb (Analyze_Pragma): Ignore pragma Refined_Pre.
From-SVN: r203761
Arnaud Charlet [Thu, 17 Oct 2013 13:50:34 +0000 (15:50 +0200)]
[multiple changes]
2013-10-17 Ed Schonberg <schonberg@adacore.com>
* sem_ch12.adb (Validated_Access_Subprogram_Instance): According
to AI05-288, actuals for access_to_subprograms must be subtype
conformant with the generic formal. Previous to AI05-288
only mode conformance was required, but the AI is a binding
interpretation that applies to previous versions of the language,
2013-10-17 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Minor text correction.
* ug_words: Add entry for -gnateu /IGNORE_UNRECOGNIZED.
* vms_data.ads: Add /IGNORE_UNRECOGNIZED for -gnateu.
2013-10-17 Tristan Gingold <gingold@adacore.com>
* impunit.adb (Non_Imp_File_Names_95): Add g-cppexc.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Analyze_Constituent): Move the check
concerning option Part_Of to routine Check_Matching_Constituent.
(Check_Matching_Constituent): Verify that an abstract state
that acts as a constituent has the prope Part_Op option in
its aspect/pragma Abstract_State. Account for the case when a
constituent comes from a private child or private sibling.
* sem_util.ads, sem_util.adb (Is_Child_Or_Sibling): New routine.
From-SVN: r203760
Tristan Gingold [Thu, 17 Oct 2013 13:47:37 +0000 (13:47 +0000)]
g-cppexc.adb, [...]: New files.
2013-10-17 Tristan Gingold <gingold@adacore.com>
* g-cppexc.adb, g-cppexc.ads: New files.
* gcc-interface/Makefile.in: Add g-cppexc when building zcx runtimes.
From-SVN: r203757
Christian Bruel [Thu, 17 Oct 2013 13:46:48 +0000 (15:46 +0200)]
fix typo comment
From-SVN: r203756
Arnaud Charlet [Thu, 17 Oct 2013 13:46:14 +0000 (15:46 +0200)]
[multiple changes]
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_ch7.adb: Minor reformatting.
2013-10-17 Ed Schonberg <schonberg@adacore.com>
* sem_dim.adb (Process_Minus, Process_Divide): Label dimension
expression with standard operator and type, for pretty-printing
use.
2013-10-17 Bob Duff <duff@adacore.com>
* gnat_ugn.texi: Document --pp-new and --pp-old switches.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* einfo.adb: Flag 159 is now known as From_Limited_With. Replace
all references to attribute From_With_Type with From_Limited_With.
(From_With_Type): Renamed to From_Limited_With.
(Set_From_With_Type): Renamd to Set_From_Limited_With.
* einfo.ads: Remove attribute From_With_Type and occurrences in
nodes. Add attribute From_Limited_With along with occurrences
in nodes.
(From_With_Type): Renamed to From_Limited_With along with pragma Inline.
(Set_From_With_Type): Renamed to
Set_From_Limited_With along with pragma Inline.
* sem_ch7.adb, sem_ch8.adb, sem_ch12.adb, sem_ch13.adb, sem_disp.adb,
sem_res.adb, sem_type.adb, sem_util.adb, sem_warn.adb,
exp_attr.adb, exp_disp.adb, freeze.adb, itypes.adb, layout.adb,
lib-writ.adb, rtsfind.adb, sem_attr.adb, sem_aux.adb, sem_ch3.adb,
sem_ch4.adb: Replace all references to attribute From_With_Type
with From_Limited_With.
* sem_ch6.adb: Replace all references to attribute From_With_Type
with From_Limited_With.
(Designates_From_With_Type): Renamed to Designates_From_Limited_With.
(Process_Formals): Update the call to Designates_From_With_Type.
* sem_ch10.adb: Replace all references to attribute From_With_Type
with From_Limited_With.
(Build_Limited_Views): Reimplemented.
* gcc-interface/decl.c Replace all references to attribute
From_With_Type with From_Limited_With.
(finalize_from_with_types): Renamed to finalize_from_limited_with.
* gcc-interface/gigi.h (finalize_from_with_types): Renamed to
finalize_from_limited_with.
* gcc-interface/trans.c: Replace all references to attribute
From_With_Type with From_Limited_With.
(Compilation_Unit_to_gnu): Update the call to finalize_from_with_types.
2013-10-17 Pascal Obry <obry@adacore.com>
* projects.texi: Update VCS_Kind documentation.
2013-10-17 Matthew Heaney <heaney@adacore.com>
* a-convec.adb, a-coinve.adb, a-cobove.adb (Insert, Insert_Space):
Inspect value range before converting type.
2013-10-17 Hristian Kirtchev <kirtchev@adacore.com>
* sem_prag.adb (Analyze_Pragma): Flag the use of pragma Refined_Pre as
illegal.
From-SVN: r203755
Arnaud Charlet [Thu, 17 Oct 2013 10:42:38 +0000 (12:42 +0200)]
[multiple changes]
2013-10-17 Vincent Celier <celier@adacore.com>
* gnat_ugn.texi: Remove VMS conversion of -gnatet and -gnateT,
now that they are both in ug_words.
* ug_words: Update qualifier for -gnatet Add qualifier for -gnateT
* vms_data.ads: Update qualifier for -gnatet Add qualifier
for -gnateT
* projects.texi: Continue to update the project documentation
for VMS.
2013-10-17 Robert Dewar <dewar@adacore.com>
* einfo.ads, einfo.adb (Has_Body_References): New flag.
(Body_References): New field.
* sem_prag.adb (Record_Possible_Body_Reference): New procedure
(Analyze_Input_Output): Call Record_Possible_Body_Reference
(Analyze_Global_Item): Call Record_Possible_Body_Reference
(Analyze_Refinement_Clause): Output messages if illegal global refs.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* freeze.adb (Check_Component_Storage_Order): Reject a record or
array type that does not have an explicit Scalar_Storage_Order
attribute definition if a component of the record, or the
elements of the array, have one.
* gnat_rm.texi (attribute Scalar_Storage_Order): Document the above
rule.
From-SVN: r203750
Arnaud Charlet [Thu, 17 Oct 2013 10:37:17 +0000 (12:37 +0200)]
[multiple changes]
2013-10-17 Vincent Celier <celier@adacore.com>
* gnat_ugn.texi: Add examples of switches -gnateD, including
one where the value is a string.
* projects.texi: Do not convert switches in project files to
VMS qualifiers.
2013-10-17 Robert Dewar <dewar@adacore.com>
* sem_prag.adb (Report_Extra_Clauses): Don't complain about
refinements with null input since null should be considered to
always match.
From-SVN: r203749
Robert Dewar [Thu, 17 Oct 2013 10:36:08 +0000 (10:36 +0000)]
gnat_ugn.texi: Document -gnatw.y/-gnatw.Y.
2013-10-17 Robert Dewar <dewar@adacore.com>
* gnat_ugn.texi: Document -gnatw.y/-gnatw.Y.
* opt.ads (List_Body_Required_Info): New flag.
* prep.adb: Minor reformatting.
* sem_ch7.adb (Unit_Requires_Body_Info): New
procedure (Analyze_Package_Specification): Add call to
Unit_Requires_Body_Info.
* ug_words: Add entries for -gnatw.y and -gnatw.Y.
* usage.adb: Add line for new warning switch -gnatw.y/.Y.
* vms_data.ads: Add entry for [NO_]WHY_SPEC_NEEDS_BODY warning
qualifier.
* warnsw.ads, warnsw.adb: Implement new warning switch -gnatw.y/.Y.
From-SVN: r203748
Arnaud Charlet [Thu, 17 Oct 2013 10:32:09 +0000 (12:32 +0200)]
[multiple changes]
2013-10-17 Yannick Moy <moy@adacore.com>
* sem_ch8.adb (Find_Direct_Name): Keep track of assignments for
renamings in SPARK mode.
2013-10-17 Yannick Moy <moy@adacore.com>
* exp_spark.adb (Expand_SPARK): Remove special case for NOT IN
operation.
* sinfo.ads: Add special comment section to describe SPARK mode
effect on tree.
* exp_spark.ads: Remove comments, moved to sinfo.ads.
2013-10-17 Yannick Moy <moy@adacore.com>
* exp_ch3.adb (Expand_Freeze_Class_Wide_Type,
Expand_Freeze_Class_Wide_Type, Expand_Freeze_Class_Wide_Type):
Remove useless special cases.
* exp_ch4.adb (Expand_Allocator_Expression, Expand_N_Allocator,
Expand_N_Op_Expon): Remove useless special cases.
* exp_ch6.adb (Is_Build_In_Place_Function_Call): Disable build-in-place
in SPARK mode by testing Full_Expander_Active instead of
Expander_Active.
(Make_Build_In_Place_Call_In_Allocator): Remove useless special case.
* exp_util.adb (Build_Allocate_Deallocate_Proc): Remove
useless special case.
* sem_eval.adb (Compile_Time_Known_Value): Remove special handling of
deferred constant.
2013-10-17 Yannick Moy <moy@adacore.com>
* gnat_ugn.texi: Document -gnateT and target file format.
2013-10-17 Vincent Celier <celier@adacore.com>
* prep.adb (Check_Command_Line_Symbol_Definition): Is_A_String is
always False, even when the value starts and ends with double quotes.
From-SVN: r203747
Arnaud Charlet [Thu, 17 Oct 2013 10:28:53 +0000 (12:28 +0200)]
[multiple changes]
2013-10-17 Tristan Gingold <gingold@adacore.com>
* a-exexpr-gcc.adb: Synchronize declarations of other/all others.
2013-10-17 Thomas Quinot <quinot@adacore.com>
* exp_pakd.adb: Add missing guard protecting Reverse_Storage_Order
call.
* sem_res.adb: Minor code cleanup: use named parameter association
(not positional) for Boolean parameter Sec_Stack in calls to
Establish_Transient_Scope.
From-SVN: r203746
Richard Biener [Thu, 17 Oct 2013 09:59:47 +0000 (09:59 +0000)]
re PR tree-optimization/58143 (wrong code at -O3)
2013-10-17 Richard Biener <rguenther@suse.de>
PR tree-optimization/58143
* tree-ssa-loop-im.c (arith_code_with_undefined_signed_overflow):
New function.
(rewrite_to_defined_overflow): Likewise.
(move_computations_dom_walker::before_dom): Rewrite stmts
with undefined signed overflow that are not always executed
into unsigned arithmetic.
* gcc.dg/torture/pr58143-1.c: New testcase.
* gcc.dg/torture/pr58143-2.c: Likewise.
* gcc.dg/torture/pr58143-3.c: Likewise.
From-SVN: r203745
Marek Polacek [Thu, 17 Oct 2013 08:14:23 +0000 (08:14 +0000)]
re PR c/58267 (Alignment specifier allowed within array declarator;)
PR c/58267
c/
* c-parser.c (c_parser_declspecs): Add alignspec_ok parameter.
Document syntax of the array-declarator.
(c_parser_declspecs) <RID_ALIGNAS>: Bail out if alignment specs
are not permitted.
(c_parser_declaration_or_fndef): Adjust c_parser_declspecs call.
(c_parser_struct_declaration): Likewise.
(c_parser_declarator): Likewise.
(c_parser_direct_declarator_inner): Likewise.
(c_parser_parameter_declaration): Likewise.
(c_parser_type_name): Likewise.
testsuite/
* gcc.dg/c1x-align-5.c: New test.
From-SVN: r203742
GCC Administrator [Thu, 17 Oct 2013 00:16:48 +0000 (00:16 +0000)]
Daily bump.
From-SVN: r203738