]> git.ipfire.org Git - thirdparty/gcc.git/log
thirdparty/gcc.git
9 years ago[ARM][testsuite] Make arm_neon_fp16 depend on arm_neon_ok
clyon [Fri, 17 Jun 2016 14:59:04 +0000 (14:59 +0000)] 
[ARM][testsuite] Make arm_neon_fp16 depend on arm_neon_ok

2016-06-17  Christophe Lyon  <christophe.lyon@linaro.org>

* lib/target-supports.exp
(check_effective_target_arm_neon_fp16_ok_nocache): Call
arm_neon_ok and merge flags.  Fix temporary test name.
(check_effective_target_arm_neonv2_ok_nocache): Call arm_neon_ok
and merge flags.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237557 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoChange PRED_LOOP_EXIT from 92 to 85.
marxin [Fri, 17 Jun 2016 14:28:57 +0000 (14:28 +0000)] 
Change PRED_LOOP_EXIT from 92 to 85.

* analyze_brprob.py: Fix columns of script output.
* predict.def: PRED_LOOP_EXIT from 92 to 85.
* gcc.dg/predict-9.c: Fix dump scanning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237556 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/71354
amker [Fri, 17 Jun 2016 13:55:06 +0000 (13:55 +0000)] 
PR tree-optimization/71354
* gcc.dg/vect/vect-23.c: Use vect_condition instead of vect_cond.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237555 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * semantics.c (handle_omp_array_sections_1): Don't ICE when
jakub [Fri, 17 Jun 2016 13:35:42 +0000 (13:35 +0000)] 
* semantics.c (handle_omp_array_sections_1): Don't ICE when
processing_template_decl when checking for bitfields and unions.
Look through REFERENCE_REF_P as base of COMPONENT_REF.
(finish_omp_clauses): Look through REFERENCE_REF_P even for
array sections with COMPONENT_REF bases.

* testsuite/libgomp.c++/target-21.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237554 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[Patch ARM arm_neon.h] s/__FAST_MATH/__FAST_MATH__/g
jgreenhalgh [Fri, 17 Jun 2016 10:28:34 +0000 (10:28 +0000)] 
[Patch ARM arm_neon.h] s/__FAST_MATH/__FAST_MATH__/g

gcc/

* config/arm/arm_neon.h (vadd_f32): replace __FAST_MATH with
__FAST_MATH__.
(vaddq_f32): Likewise.
(vmul_f32): Likewise.
(vmulq_f32): Likewise.
(vsub_f32): Likewise.
(vsubq_f32): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237553 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/71347
amker [Fri, 17 Jun 2016 09:26:05 +0000 (09:26 +0000)] 
PR tree-optimization/71347
* tree-ssa-loop-ivopts.c (determine_group_iv_cost_address): Compute
cost for all uses in group.

PR tree-optimization/71347
* gcc.dg/tree-ssa/pr71347.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237552 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/71354
amker [Fri, 17 Jun 2016 09:21:12 +0000 (09:21 +0000)] 
PR tree-optimization/71354
* gcc.dg/vect/vect-23.c: Add VECT_COND requirement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237551 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree-vect-loop.c (vect_create_epilog_for_reduction): Only
amker [Fri, 17 Jun 2016 09:17:39 +0000 (09:17 +0000)] 
* tree-vect-loop.c (vect_create_epilog_for_reduction): Only
insert gimple seq if it's not empty.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237550 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * tree-vectorizer.h (struct dr_with_seg_len): Remove class
amker [Fri, 17 Jun 2016 09:05:05 +0000 (09:05 +0000)] 
* tree-vectorizer.h (struct dr_with_seg_len): Remove class
member OFFSET.
* tree-vect-data-refs.c (operator ==): Handle DR_OFFSET directly,
rather than OFFSET.
(comp_dr_with_seg_len_pair): Ditto.
(vect_prune_runtime_alias_test_list): Ditto.  Also Canonicalize
struct dr_with_seg_len_pair against DR_OFFSET.
* tree-vect-loop-manip.c (vect_create_cond_for_alias_checks): Handle
DR_OFFSET directly.

* gcc.dg/vect/vect-alias-check-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237549 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Handle iterator definitions with conditionals in geniterator.sh
nsz [Fri, 17 Jun 2016 08:27:35 +0000 (08:27 +0000)] 
[AArch64] Handle iterator definitions with conditionals in geniterator.sh

gcc/
2016-06-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>

* config/aarch64/geniterators.sh: Handle parenthesised conditions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237548 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Fri, 17 Jun 2016 00:16:17 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237547 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/pa/pa.c (pa_output_pic_pcrel_sequence): New.
danglin [Thu, 16 Jun 2016 21:44:55 +0000 (21:44 +0000)] 
* config/pa/pa.c (pa_output_pic_pcrel_sequence): New.
(pa_output_lbranch): Use pa_output_pic_pcrel_sequence.
(pa_output_millicode_call): Likewise.
(pa_output_call): Likewise.
(pa_output_indirect_call): Likewise.
(pa_asm_output_mi_thunk): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237543 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd Michael Collison with Write After Approval
collison [Thu, 16 Jun 2016 20:49:12 +0000 (20:49 +0000)] 
Add Michael Collison with Write After Approval

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237542 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 François Dumont <fdumont@gcc.gnu.org>
fdumont [Thu, 16 Jun 2016 20:34:08 +0000 (20:34 +0000)] 
2016-06-16  François Dumont  <fdumont@gcc.gnu.org>

* include/debug/debug.h
(__glibcxx_requires_non_empty_range, __glibcxx_requires_nonempty)
(__glibcxx_requires_subscript): Move...
* include/debug/assertions.h: ...here and add __builtin_expect.
(_GLIBCXX_DEBUG_ONLY): Remove ; value.
* include/bits/stl_deque.h
(std::deque<>::operator[]): Add __glibcxx_requires_subscript check.
(std::deque<>::front()): Add __glibcxx_requires_nonempty check.
(std::deque<>::back()): Likewise.
(std::deque<>::pop_front()): Likewise.
(std::deque<>::pop_back()): Likewise.
(std::deque<>::swap(deque&)): Add allocator check.
* include/bits/stl_vector.h
(std::vector<>::operator[]): Add __glibcxx_requires_subscript check.
(std::vector<>::front()): Add __glibcxx_requires_nonempty check.
(std::vector<>::back()): Likewise.
(std::vector<>::pop_back()): Likewise.
(std::vector<>::swap(vector&)): Add allocator check.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237541 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agodoc/invoke.texi (x86 Options): Fix -mno-fp-ret-in-387 typo
aldot [Thu, 16 Jun 2016 19:50:19 +0000 (19:50 +0000)] 
doc/invoke.texi (x86 Options): Fix -mno-fp-ret-in-387 typo

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237540 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix finding of a first match predictor
marxin [Thu, 16 Jun 2016 19:25:56 +0000 (19:25 +0000)] 
Fix finding of a first match predictor

* predict.c (combine_predictions_for_insn): When we find a first
match predictor, we should consider just predictors with
PRED_FLAG_FIRST_MATCH.  Print either first match (if any) or
DS theory predictor.
(combine_predictions_for_bb): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237539 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gimplify.c (gimplify_scan_omp_clauses): Handle COMPONENT_REFs
jakub [Thu, 16 Jun 2016 19:03:05 +0000 (19:03 +0000)] 
* gimplify.c (gimplify_scan_omp_clauses): Handle COMPONENT_REFs
with base of reference to struct.

* parser.c (cp_parser_omp_var_list_no_open): Call
convert_from_reference before cp_parser_postfix_dot_deref_expression.
* semantics.c (finish_omp_clauses): Don't ICE when
processing_template_decl when checking for bitfields and unions.
Look through REFERENCE_REF_P as base of COMPONENT_REF.

* testsuite/libgomp.c++/target-20.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237538 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * doc/invoke.texi (x86 Options): Document -m80387 and -mhard-float.
uros [Thu, 16 Jun 2016 17:56:45 +0000 (17:56 +0000)] 
* doc/invoke.texi (x86 Options): Document -m80387 and -mhard-float.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237537 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/ChangeLog:
denisc [Thu, 16 Jun 2016 16:50:40 +0000 (16:50 +0000)] 
gcc/ChangeLog:
        * config/avr/avr.c (avr_asm_init_sections): Remove setup of
progmem_swtable_section.
        (progmem_swtable_section): Remove.
        (avr_asm_function_rodata_section): Remove.
        (TARGET_ASM_FUNCTION_RODATA_SECTION): Remove.
        * config/avr/avr.h (JUMP_TABLES_IN_TEXT_SECTION: Define to 1.

gcc/testsuite/ChangeLog:
        * gcc.target/avr/pr71151-1.c: New test.
        * gcc.target/avr/pr71151-2.c: New test.
        * gcc.target/avr/pr71151-3.c: New test.
        * gcc.target/avr/pr71151-4.c: New test.
        * gcc.target/avr/pr71151-5.c: New test.
        * gcc.target/avr/pr71151-6.c: New test.
        * gcc.target/avr/pr71151-7.c: New test.
        * gcc.target/avr/pr71151-8.c: New test.
        * gcc.target/avr/pr71151-common.h: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237536 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/driver-i386.c (host_detect_local_cpu): Set
uros [Thu, 16 Jun 2016 16:09:30 +0000 (16:09 +0000)] 
* config/i386/driver-i386.c (host_detect_local_cpu): Set
PROCESSOR_K8 for signature_CENTAUR_ebx with has_longmode.
<case PROCESSOR_K8>: Pass nano-3000, nano, eden-x2 or k8 for
signature_CENTAUR_ebx.
* config/i386/i386.c (ix86_option_override_internal): Add
definitions for VIA c7, samuel-2, nehemiah, esther, eden-x2, eden-x4,
nano, nano-1000, nano-2000, nano-3000, nano-x2 and nano-x4.
* doc/invoke.texi: Document new VIA -march entries.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237534 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoIntroduce fortran loop preheader
marxin [Thu, 16 Jun 2016 16:05:25 +0000 (16:05 +0000)] 
Introduce fortran loop preheader

* predict.def: Add fortran loop preheader predictor.
* gimple-fold.c (gimple_fold_stmt_to_constant_1): Properly
fold IFN_BUILTIN_EXPECT with a known constant argument.
* trans-stmt.c (gfc_trans_simple_do): Predict the edge.
* gfortran.dg/predict-1.f90: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237533 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd 'Fortran' to display text of all PRED_FORTRAN_*
marxin [Thu, 16 Jun 2016 16:01:54 +0000 (16:01 +0000)] 
Add 'Fortran' to display text of all PRED_FORTRAN_*

* predict.def: Add 'Fortran' to display text of all
PRED_FORTRAN_* predictors.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237532 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoProvide swappable traits (p0185r1)
redi [Thu, 16 Jun 2016 15:07:19 +0000 (15:07 +0000)] 
Provide swappable traits (p0185r1)

2016-06-16  Daniel Kruegler  <daniel.kruegler@gmail.com>

Provide swappable traits (p0185r1)
* include/std/type_traits (is_swappable, is_nothrow_swappable,
is_swappable_with, is_nothrow_swappable_with, is_swappable_v,
is_nothrow_swappable_v, is_swappable_with_v,
is_nothrow_swappable_with_v): New.
* include/bits/stl_pair.h: Use it as per p0185r1.
* include/bits/stl_queue.h: Likewise.
* include/bits/stl_stack.h: Likewise.
* include/bits/unique_ptr.h: Likewise.
* include/std/tuple: Likewise.
* include/std/array: Likewise. Fix zero-size member swap.
* include/bits/hashtable.h: Use __and_.
* testsuite/20_util/is_nothrow_swappable/requirements/
explicit_instantiation.cc: Change test options to std=gnu++17.
* testsuite/20_util/is_nothrow_swappable/requirements/typedefs.cc:
Likewise.
* testsuite/20_util/is_nothrow_swappable/value.cc: Likewise.
* testsuite/20_util/is_swappable/requirements/
explicit_instantiation.cc: Likewise.
* testsuite/20_util/is_swappable/requirements/typedefs.cc: Likewise.
* testsuite/20_util/is_swappable/value.cc: Likewise.
* testsuite/20_util/is_nothrow_swappable/requirements/
explicit_instantiation_ext.cc: New.
* testsuite/20_util/is_nothrow_swappable/requirements/typedefs_ext.cc:
New.
* testsuite/20_util/is_nothrow_swappable/value.h: New.
* testsuite/20_util/is_nothrow_swappable/value_ext.cc: New.
* testsuite/20_util/is_nothrow_swappable_with/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/is_nothrow_swappable_with/requirements/typedefs.cc:
New.
* testsuite/20_util/is_nothrow_swappable_with/value.cc: New.
* testsuite/20_util/is_swappable/requirements/
explicit_instantiation_ext.cc: New.
* testsuite/20_util/is_swappable/requirements/typedefs_ext.cc: New.
* testsuite/20_util/is_swappable/value.h: New.
* testsuite/20_util/is_swappable/value_ext.cc: New.
* testsuite/20_util/is_swappable_with/requirements/
explicit_instantiation.cc: New.
* testsuite/20_util/is_swappable_with/requirements/typedefs.cc: New.
* testsuite/20_util/is_swappable_with/value.cc: New.
* testsuite/23_containers/array/tuple_interface/get_neg.cc: Adjust
dg-error line numbers.
* testsuite/23_containers/array/tuple_interface/tuple_element_neg.cc:
Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237531 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/71242
uros [Thu, 16 Jun 2016 14:32:40 +0000 (14:32 +0000)] 
PR target/71242
* config/ia64/ia64.c (enum ia64_builtins) [IA64_BUILTIN_NANQ]: New.
[IA64_BUILTIN_NANSQ]: Ditto.
(ia64_fold_builtin): New function.
(TARGET_FOLD_BUILTIN): New define.
(ia64_init_builtins) Declare const_string_type node.
Add __builtin_nanq and __builtin_nansq builtin functions.
(ia64_expand_builtin): Handle IA64_BUILTIN_NANQ and IA64_BUILTIN_NANSQ.

testsuite/ChangeLog:

PR target/71242
* testsuite/gcc.dg/torture/float128-nan.c: Also run on ia64-*-*.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237530 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/msp430/msp430-opts.h (msp430_hwmult_types): Add
nickc [Thu, 16 Jun 2016 14:27:59 +0000 (14:27 +0000)] 
* config/msp430/msp430-opts.h (msp430_hwmult_types): Add
MSP430_HWMULT_ prefix to enum values.
(msp430_regions): Add MSP430_REGION_ prefix to enum values.
* config/msp430/msp430.c: Update use of enum values.
* config/msp430/msp430.md: Likewise.
* config/msp430/msp430.opt: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237529 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoRemove trailing whitespace from libstdc++ headers
redi [Thu, 16 Jun 2016 13:47:35 +0000 (13:47 +0000)] 
Remove trailing whitespace from libstdc++ headers

* include/std/array: Remove trailing whitespace.
* include/std/atomic: Likewise.
* include/std/bitset: Likewise.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/std/condition_variable: Likewise.
* include/std/fstream: Likewise.
* include/std/functional: Likewise.
* include/std/future: Likewise.
* include/std/iomanip: Likewise.
* include/std/iosfwd: Likewise.
* include/std/istream: Likewise.
* include/std/limits: Likewise.
* include/std/ratio: Likewise.
* include/std/scoped_allocator: Likewise.
* include/std/sstream: Likewise.
* include/std/stdexcept: Likewise.
* include/std/string: Likewise.
* include/std/system_error: Likewise.
* include/std/thread: Likewise.
* include/std/tuple: Likewise.
* include/std/type_traits: Likewise.
* include/std/utility: Likewise.
* include/std/valarray: Likewise.
* include/std/vector: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237528 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * g++.dg/vect/pr36648.cc: Disable cunrolli
hubicka [Thu, 16 Jun 2016 12:54:31 +0000 (12:54 +0000)] 
* g++.dg/vect/pr36648.cc: Disable cunrolli
* tree-ssa-loop-ivcanon.c (tree_estimate_loop_size): Fix estimation
of comparsions in the last iteration.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237527 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoOptimize inserting value_type into std::vector
redi [Thu, 16 Jun 2016 12:42:21 +0000 (12:42 +0000)] 
Optimize inserting value_type into std::vector

* include/bits/stl_vector.h (vector::_S_insert_aux_assign): Define
new overloaded functions.
* include/bits/vector.tcc (vector::_M_insert_aux): Use new functions
to avoid creating a redundant temporary.
* testsuite/23_containers/vector/modifiers/insert_vs_emplace.cc: New
test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237526 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARC] Use GOTOFFPC relocation for pc-relative accesses.
claziss [Thu, 16 Jun 2016 12:29:29 +0000 (12:29 +0000)] 
[ARC] Use GOTOFFPC relocation for pc-relative accesses.

gcc/
2016-06-16  Claudiu Zissulescu  <claziss@synopsys.com>
    Joern Rennecke  <joern.rennecke@embecosm.com>

* config/arc/arc.c (arc_print_operand_address): Handle pc-relative
addresses.
(arc_needs_pcl_p): Add GOTOFFPC.
(arc_legitimate_pic_addr_p): Likewise.
(arc_output_pic_addr_const): Likewise.
(arc_legitimize_pic_address): Generate a pc-relative address using
GOTOFFPC.
(arc_output_libcall): Use @pcl syntax.
(arc_delegitimize_address_0): Delegitimize ARC_UNSPEC_GOTOFFPC.
* config/arc/arc.md ("unspec"): Add ARC_UNSPEC_GOTOFFPC.
(*movsi_insn): Use @pcl syntax.
(doloop_begin_i): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237525 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix code emission for FAIL_ALLOC predictor
marxin [Thu, 16 Jun 2016 12:21:55 +0000 (12:21 +0000)] 
Fix code emission for FAIL_ALLOC predictor

* predict.def: Define a new predictor.
* trans-array.c (gfc_array_allocate): Do not generate expect
stmt.
* trans.c (gfc_allocate_using_malloc): Properly set FAIL_ALLOC
predictor for malloc return value.
(gfc_allocate_allocatable): Use REALLOC predictor instead of
FAIL_ALLOC.
(gfc_deallocate_with_status): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237524 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Gary Dismukes <dismukes@adacore.com>
charlet [Thu, 16 Jun 2016 10:39:14 +0000 (10:39 +0000)] 
2016-06-16  Gary Dismukes  <dismukes@adacore.com>

* sem_util.adb: Minor typo fix.

2016-06-16  Emmanuel Briot  <briot@adacore.com>

* s-regpat.adb: Further fix for invalid index in GNAT.Regexp.

2016-06-16  Eric Botcazou  <ebotcazou@adacore.com>

* sem_ch13.adb (Validate_Address_Clauses): Use the same logic to
issue the warning on the offset for the size as for the alignment
and tweak the wording for the sake of consistency.

2016-06-16  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Check_Class_Wide_COndition): New procedure,
subsidiary of Analyze_Pre_Post_ Condition_In_Decl_Part, to
check legality rules that follow from the revised semantics of
class-wide pre/postconditions described in AI12-0113.
(Build_Pragma_Check_Equivalent): Abstract subprogram declarations
must be included in list of overriding primitives of a derived
type.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237521 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[ARC] Fix option text.
claziss [Thu, 16 Jun 2016 10:37:37 +0000 (10:37 +0000)] 
[ARC] Fix option text.

gcc/
2016-06-16  Claudiu Zissulescu  <claziss@synopsys.com>

* config/arc/arc.opt (mtp-regno): Update text.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237519 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoMinor reformatting.
charlet [Thu, 16 Jun 2016 10:29:15 +0000 (10:29 +0000)] 
Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237518 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 16 Jun 2016 10:29:00 +0000 (10:29 +0000)] 
2016-06-16  Ed Schonberg  <schonberg@adacore.com>

* sem_util.adb (May_Be_Lvalue): An actual in an unexpanded
attribute reference 'Read is an assignment and must be considered
a modification of the object.

2016-06-16  Gary Dismukes  <dismukes@adacore.com>

* einfo.adb: Minor editorial.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237517 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 16 Jun 2016 10:27:34 +0000 (10:27 +0000)] 
2016-06-16  Ed Schonberg  <schonberg@adacore.com>

* sem_prag.adb (Overridden_Ancestor): Clean up code to use
controlling type of desired primitive rather than its scope,
because the primitive that inherits the classwide condition may
comes from several derivation steps.

2016-06-16  Javier Miranda  <miranda@adacore.com>

* einfo.adb (Set_Default_Init_Cond_Procedure): Allow calls setting
this attribute to Empty (only if the attribute has not been set).
* sem_util.adb (Build_Default_Init_Cond_Procedure_Body):
No action needed if the spec was not built.
(Build_Default_Init_Cond_Procedure_Declaration): The spec is
not built if DIC is set to NULL or no condition was specified.
* exp_ch3.adb (Expand_N_Object_Declaration): Check availability
of the Init_Cond procedure before generating code to call it.

2016-06-16  Emmanuel Briot  <briot@adacore.com>

* s-regpat.adb: Fix invalid index check when matching end-of-line
on substrings.

2016-06-16  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb: Minor reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237516 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Ed Schonberg <schonberg@adacore.com>
charlet [Thu, 16 Jun 2016 10:25:47 +0000 (10:25 +0000)] 
2016-06-16  Ed Schonberg  <schonberg@adacore.com>

* sem_ch3.adb (Check_Entry_Contracts): New procedure, subsidiary
of Analyze_Declarations, that performs pre-analysis of
pre/postconditions on entry declarations before full analysis
is performed after entries have been converted into procedures.
Done solely to capture semantic errors.
* sem_attr.adb (Analyze_Attribute, case 'Result): Add guard to
call to Denote_Same_Function.

2016-06-16  Emmanuel Briot  <briot@adacore.com>

* g-comlin.adb: Fix minor memory leak in GNAT.Command_Line.

2016-06-16  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch7.adb (Find_Last_Init): Remove obsolete code. The
logic is now performed by Process_Object_Declaration.
(Process_Declarations): Recognize a controlled deferred
constant which is in fact initialized by means of a
build-in-place function call as needing finalization actions.
(Process_Object_Declaration): Insert the counter after the
build-in-place initialization call for a controlled object. This
was previously done in Find_Last_Init.
* exp_util.adb (Requires_Cleanup_Actions): Recognize a controlled
deferred constant which is in fact initialized by means of a
build-in-place function call as needing finalization actions.

2016-06-16  Justin Squirek  <squirek@adacore.com>

* exp_aggr.adb (Expand_Array_Aggregate): Minor comment changes and
additional style fixes.
* exp_ch7.adb: Minor typo fixes and reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237515 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Justin Squirek <squirek@adacore.com>
charlet [Thu, 16 Jun 2016 10:23:06 +0000 (10:23 +0000)] 
2016-06-16  Justin Squirek  <squirek@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Add a missing check
for optimized aggregate arrays with qualified expressions.
* exp_aggr.adb (Expand_Array_Aggregate): Fix block and
conditional statement in charge of deciding whether to perform
in-place expansion. Specifically, use Parent_Node to jump over
the qualified expression to the object declaration node. Also,
a check has been inserted to skip the optimization if SPARK 2005
is being used in strict adherence to RM 4.3(5).

2016-06-16  Tristan Gingold  <gingold@adacore.com>

* sem_prag.adb (Analyze_Pragma): Simplify code
for Pragma_Priority.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237514 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/71554
jakub [Thu, 16 Jun 2016 10:20:45 +0000 (10:20 +0000)] 
PR target/71554
* gcc.c-torture/execute/pr71554.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237512 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Eric Botcazou <ebotcazou@adacore.com>
charlet [Thu, 16 Jun 2016 10:19:51 +0000 (10:19 +0000)] 
2016-06-16  Eric Botcazou  <ebotcazou@adacore.com>

* sem_util.ads (Indexed_Component_Bit_Offset): Declare.
* sem_util.adb (Indexed_Component_Bit_Offset): New
function returning the offset of an indexed component.
(Has_Compatible_Alignment_Internal): Call it.
* sem_ch13.adb (Offset_Value): New function returning the offset of an
Address attribute reference from the underlying entity.
(Validate_Address_Clauses): Call it and take the offset into
account for the size warning.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237511 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 16 Jun 2016 10:12:26 +0000 (10:12 +0000)] 
2016-06-16  Hristian Kirtchev  <kirtchev@adacore.com>

* bindgen.adb, exp_util.adb, sem_ch9.adb, sem_util.adb: Minor
reformatting.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237510 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Gary Dismukes <dismukes@adacore.com>
charlet [Thu, 16 Jun 2016 10:11:23 +0000 (10:11 +0000)] 
2016-06-16  Gary Dismukes  <dismukes@adacore.com>

* sem_ch9.adb, sem_util.ads, sem_res.adb: Minor reformatting and typo
fixes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237509 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Javier Miranda <miranda@adacore.com>
charlet [Thu, 16 Jun 2016 09:52:17 +0000 (09:52 +0000)] 
2016-06-16  Javier Miranda  <miranda@adacore.com>

* sem_res.adb (Resolve): Under relaxed RM semantics silently
replace occurrences of null by System.Null_Address.
* sem_ch4.adb (Analyze_One_Call, Operator_Check): Under
relaxed RM semantics silently replace occurrences of null by
System.Null_Address.
* sem_util.ad[sb] (Null_To_Null_Address_Convert_OK): New subprogram.
(Replace_Null_By_Null_Address): New subprogram.

2016-06-16  Bob Duff  <duff@adacore.com>

* exp_util.adb (Is_Controlled_Function_Call):
This was missing the case where the call is in prefix format,
with named notation, as in Obj.Func (Formal => Actual).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237508 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-16 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Thu, 16 Jun 2016 09:44:04 +0000 (09:44 +0000)] 
2016-06-16  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_attr.adb, inline.adb, sem_attr.adb, sem_elab.adb: Minor
reformatting.

2016-06-16  Bob Duff  <duff@adacore.com>

* sem_util.adb (Collect): Avoid Empty Full_T. Otherwise Etype
(Full_T) crashes when assertions are on.
* sem_ch12.adb (Matching_Actual): Correctly handle the case where
"others => <>" appears in a generic formal package, other than
by itself.

2016-06-16  Arnaud Charlet  <charlet@adacore.com>

* usage.adb: Remove confusing comment in usage line.
* bindgen.adb: Fix binder generated file in codepeer mode wrt
recent additions.

2016-06-16  Javier Miranda  <miranda@adacore.com>

* restrict.adb (Check_Restriction_No_Use_Of_Entity): Avoid
never-ending loop, code cleanup; adding also support for Text_IO.
* sem_ch8.adb (Find_Expanded_Name): Invoke
Check_Restriction_No_Use_Entity.

2016-06-16  Tristan Gingold  <gingold@adacore.com>

* exp_ch9.adb: Minor comment fix.
* einfo.ads (Has_Protected): Clarify comment.
* sem_ch9.adb (Analyze_Protected_Type_Declaration): Do not
consider private protected types declared in the runtime for
the No_Local_Protected_Types restriction.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237507 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[PATCH][AARCH64]Fix typo in aarch64_legitimize_address.
renlin [Thu, 16 Jun 2016 09:37:31 +0000 (09:37 +0000)] 
[PATCH][AARCH64]Fix typo in aarch64_legitimize_address.

gcc/
2016-06-16  renlin li  <renlin.li@arm.com>

* config/aarch64/aarch64.c (aarch64_legitimize_address): Fix a typo.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237506 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/i386.md (setcc + movzbl peephole2): Use reg_set_p.
jakub [Thu, 16 Jun 2016 09:27:41 +0000 (09:27 +0000)] 
* config/i386/i386.md (setcc + movzbl peephole2): Use reg_set_p.
(setcc + and peephole2): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237504 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR rtl-optimization/71532
jakub [Thu, 16 Jun 2016 07:11:37 +0000 (07:11 +0000)] 
PR rtl-optimization/71532
* cse.c (cse_insn): For const/pure calls, invalidate argument passing
memory slots.

* gcc.dg/torture/pr71532.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237503 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Thu, 16 Jun 2016 00:16:19 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237502 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * MAINTAINERS: Add myself as cygwin/mingw-w64 maintainer.
jyong [Wed, 15 Jun 2016 22:54:38 +0000 (22:54 +0000)] 
* MAINTAINERS:  Add myself as cygwin/mingw-w64 maintainer.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237498 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 Paolo Carlini <paolo.carlini@oracle.com>
paolo [Wed, 15 Jun 2016 20:13:39 +0000 (20:13 +0000)] 
2016-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

* decl.c (wrapup_globals_for_namespace): Use DECL_SOURCE_LOCATION and
"%qF" in warning_at instead of "%q+F" in warning.
(check_redeclaration_exception_specification): Likewise in pedwarn
(and error, inform, for consistency).
* call.c (joust): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237496 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 François Dumont <fdumont@gcc.gnu.org>
fdumont [Wed, 15 Jun 2016 20:09:56 +0000 (20:09 +0000)] 
2016-06-15  François Dumont  <fdumont@gcc.gnu.org>

* include/bits/stl_deque.h
(std::deque<>::operator=): Call _M_assign_aux.
(std::deque<>::assign(initializer_list<>)): Likewise.
(std::deque<>::resize(size_t, const value_type&)): Call _M_fill_insert.
(std::deque<>::insert(const_iterator, initializer_list<>)):
Call _M_range_insert_aux.
(std::deque<>::_M_assign_aux<It>(It, It, std::forward_iterator_tag):
Likewise.
(std::deque<>::_M_fill_assign): Call _M_fill_insert.
(std::deque<>::_M_move_assign2): Call _M_assign_aux.
* include/bits/deque.tcc
(std::deque<>::operator=): Call _M_range_insert_aux.
(std::deque<>::_M_assign_aux<It>(It, It, std::input_iterator_tag)):
Likewise.
* include/bits/stl_vector.h
(std::vector<>::operator=): Call _M_assign_aux.
(std::vector<>::assign(initializer_list<>)): Likewise.
(std::vector<>::resize(size_t, const value_type&)): Call _M_fill_insert.
(std::vector<>::insert(const_iterator, initializer_list<>)):
Call _M_range_insert.
* include/bits/vector.tcc (std::vector<>::_M_assign_aux): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237495 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[gcc]
meissner [Wed, 15 Jun 2016 18:17:58 +0000 (18:17 +0000)] 
[gcc]
2016-06-15  Michael Meissner  <meissner@linux.vnet.ibm.com>

* config/rs6000/vsx.md (VSINT_84): Add DImode to enable loading
DImode constants with XXSPLTIB in vector registers.
(vsx_extract_<mode>, V2DImode/V2DFmode): Combine both
vsx_extract_<mode>_internal{1,2} into a single insn that handles
direct move (both ISA 2.07 and ISA 3.0 versions), and optimizes
extraction of the element at the top of the register as a scalar
value.
(vsx_extract_<mode>_internal1): Likewise.
(vsx_extract_<mode>_internal2): Likewise.
* config/rs6000/constraints.md (wi constraint): Remove a comment
about DImode not being allowed in Altivec registers.
(wB constraint): New constraint for constants that can be
generated in Altivec registers with VSPLTISW/VUPKHSW.
* config/rs6000/predicates.md (xxspltib_constant_split): Update
comments.
(xxspltib_constant_nosplit): Likewise.
* config/rs6000/rs6000-cpus.def (ISA_2_6_MASKS_SERVER): Add
support for -mupper-regs-di to enable DImode to go into Altivec
registers.
(POWERPC_MASKS): Likewise.
(power7 cpu): Likewise.
* config/rs6000/rs6000.opt (-mupper-regs-di): Likewise.
* config/rs6000/rs6000.c (rs6000_hard_regno_mode_ok): Add support
for DImode being allowed in Altivec registers.  Update wi/wj
constraints.  Set scalar_in_vmx_p flag.
(rs6000_option_override_internal): Add checks for -mupper-regs-di.
(xxspltib_constant_p): Allow CONST_INT's with VOIDmode.  Don't
return true if we could use VSPLTISW/VUPKHSW instead of XXSPLTIB.
(rs6000_opt_masks): Add -mupper-regs-di.
* config/rs6000/rs6000.md (lfiwax): Update clobbers that don't use
direct move to use wi and not wj.
(lfiwzx): Likewise.
(floatsi<mode>2_lfiwax_mem): Combine alternatives into a single
alternative.
(floatunssi<mode>2_lfiwzx_mem): Likewise.
(fix_trunc<mode>di2_fctidz): Change second alternative to allow
any VSX register, instead of just Altivec registers, to allow
either operand to be an Altivec register or both.
(fixuns_trunc<mode>di2_fctiduz): Likewise.
(movdi_internal32): Add support for -mupper-regs-di.  Add support
to load constants via XXSPLTIB or VSPLTISW.  Add spacing to allow
the alternatives and attributes to be lined up to be easier to
read.
(movdi_internal64): Likewise.
(64-bit DImode splitters): Change predicates to only split loading
up GPR registers.  Add splits for using XXSPLTIB or VSPLTISW to
load constants in ISA 3.0 or ISA 2.07 respectively.
* doc/invoke.texi (RS/6000 and PowerPC Options): Document
-mupper-regs-di.  Update -mupper-regs-df and -mupper-regs-sf to
mention -mcpu=power9 sets these options.
* doc/md.texi (PowerPC and IBM RS6000 constraints): Document the
wB constraint.

[gcc/testsuite]
2016-06-15  Michael Meissner  <meissner@linux.vnet.ibm.com>

* gcc.target/powerpc/p9-dimode1.c: New test.
* gcc.target/powerpc/p9-dimode2.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237490 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.c-torture/compile/20160615-1.c: New test.
jakub [Wed, 15 Jun 2016 17:10:44 +0000 (17:10 +0000)] 
* gcc.c-torture/compile/20160615-1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237489 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * g++.dg/cpp0x/ref-qual17.C: New test.
jakub [Wed, 15 Jun 2016 17:10:02 +0000 (17:10 +0000)] 
* g++.dg/cpp0x/ref-qual17.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237488 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoCorrect Changelog entry:
denisc [Wed, 15 Jun 2016 16:43:35 +0000 (16:43 +0000)] 
Correct Changelog entry:
PR target/67353
* config/avr/avr.c (avr_set_current_function): Warn misspelled
interrupt/ signal handler if -Wmisspelled-isr flag is enabled.
* config/avr/avr.opt (Wmisspelled-isr): New warning flag. Enabled
by default to warn misspelled interrupt/ signal handler.
* doc/invoke.texi (AVR Options): Document it. Update description
for -nodevicelib option.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237487 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR target/67353
denisc [Wed, 15 Jun 2016 16:40:07 +0000 (16:40 +0000)] 
PR target/67353
    * config/avr/avr.c (avr_set_current_function): Warn misspelled
    interrupt/ signal handler if -Wmisspelled-isr flag is enabled.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237486 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64][obvious] Clean up parentheses and use GET_MODE_UNIT_BITSIZE in a couple...
ktkachov [Wed, 15 Jun 2016 16:07:34 +0000 (16:07 +0000)] 
[AArch64][obvious] Clean up parentheses and use GET_MODE_UNIT_BITSIZE in a couple of patterns

* config/aarch64/aarch64-simd.md (aarch64_<sur>shll_n<mode>): Clean
up parentheses.  Use GET_MODE_UNIT_BITSIZE.
(aarch64_<sur>shll2_n<mode>): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237485 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agogcc/
ienkovich [Wed, 15 Jun 2016 15:49:40 +0000 (15:49 +0000)] 
gcc/

PR middle-end/71529
* ipa-chkp.c (chkp_build_instrumented_fndecl): Fix
DECL_CONTEXT for copied arguments.

gcc/testsuite/

PR middle-end/71529
* gcc.target/i386/pr71529.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237484 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 Alan Hayward <alan.hayward@arm.com>
alahay01 [Wed, 15 Jun 2016 15:45:47 +0000 (15:45 +0000)] 
2016-06-15  Alan Hayward  <alan.hayward@arm.com>

gcc/
PR tree-optimization/71483
* tree-vect-loop.c (vectorizable_live_operation): Pick correct index
for slp

testsuite/
PR tree-optimization/71483
* g++.dg/vect/pr71483.c: New

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237483 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/cp
paolo [Wed, 15 Jun 2016 15:23:40 +0000 (15:23 +0000)] 
/cp
2016-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/70202
* decl.c (xref_basetypes): Revert r117839 changes; add fix-up
code at the end of the for loop; also revert r159637 changes,
add back the gcc_assert.
* cp-tree.h (xref_basetypes): Adjust declaration.
* parser.c (cp_parser_class_head): Adjust xref_basetypes call.

/testsuite
2016-06-15  Paolo Carlini  <paolo.carlini@oracle.com>

PR c++/70202
* g++.dg/inherit/crash6.C: New.
* g++.dg/inherit/union2.C: Likewise.
* g++.dg/inherit/virtual12.C: Likewise.
* g++.dg/inherit/virtual13.C: Likewise.
* g++.dg/inherit/virtual1.C: Tweak dg-* tests.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237482 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix obvious typo in predict.c
marxin [Wed, 15 Jun 2016 15:05:34 +0000 (15:05 +0000)] 
Fix obvious typo in predict.c

* predict.c (tree_predict_by_opcode): Call predict_edge_def
instead of predict_edge w/o a probability.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237481 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.dg/torture/float128-nan.c: Include stdint.h to define uint64_t.
uros [Wed, 15 Jun 2016 15:01:01 +0000 (15:01 +0000)] 
    * gcc.dg/torture/float128-nan.c: Include stdint.h to define uint64_t.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237480 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 Alan Hayward <alan.hayward@arm.com>
alahay01 [Wed, 15 Jun 2016 10:53:01 +0000 (10:53 +0000)] 
2016-06-15  Alan Hayward  <alan.hayward@arm.com>

gcc/
PR tree-optimization/71439
* tree-vect-loop.c (vect_analyze_loop_operations): Additional check for
live PHIs.

testsuite/
PR tree-optimization/71439
* gcc.dg/vect/pr71439.c: New

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237476 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[RTL ifcvt] Allow simple register subregs in noce_convert_multiple_sets
ktkachov [Wed, 15 Jun 2016 10:08:24 +0000 (10:08 +0000)] 
[RTL ifcvt] Allow simple register subregs in noce_convert_multiple_sets

* ifcvt.c (bb_ok_for_noce_multiple_sets): Allow simple lowpart
register subregs in SET_SRC.

* gcc.target/aarch64/ifcvt_multiple_sets_subreg_1.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237475 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 Richard Biener <rguenther@suse.de>
rguenth [Wed, 15 Jun 2016 09:54:17 +0000 (09:54 +0000)] 
2016-06-15  Richard Biener  <rguenther@suse.de>

* tree-vect-stmts.c (vectorizable_store): Remove strided grouped
store restrictions.

* gcc.dg/vect/slp-45.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237474 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-15 Richard Biener <rguenther@suse.de>
rguenth [Wed, 15 Jun 2016 09:53:07 +0000 (09:53 +0000)] 
2016-06-15  Richard Biener  <rguenther@suse.de>

* tree-vect-data-refs.c (vect_analyze_data_ref_dependence): Do
not consider dependences between accesses that belong to the
same group.
(vect_analyze_data_ref_dependences): Do not analyze read-read
or self-dependences.

* gcc.dg/vect/bb-slp-pattern-2.c: Disable loop vectorization.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237473 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agospellcheck.h: add best_match template; implement early-reject
dmalcolm [Wed, 15 Jun 2016 03:29:39 +0000 (03:29 +0000)] 
spellcheck.h: add best_match template; implement early-reject

gcc/c/ChangeLog:
* c-typeck.c: Include spellcheck-tree.h rather than spellcheck.h.

gcc/cp/ChangeLog:
* search.c: Include spellcheck-tree.h rather than spellcheck.h.

gcc/ChangeLog:
* spellcheck-tree.c: Include spellcheck-tree.h rather than
spellcheck.h.
(find_closest_identifier): Reimplement in terms of
best_match<tree,tree>.
* spellcheck-tree.h: New file.
* spellcheck.c (struct edit_distance_traits<const char *>): New
struct.
(find_closest_string): Reimplement in terms of
best_match<const char *, const char *>.
* spellcheck.h (levenshtein_distance): Move prototype of tree-based
overload to spellcheck-tree.h.
(find_closest_identifier): Likewise.
(struct edit_distance_traits<T>): New template.
(class best_match): New class.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237471 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoDaily bump.
gccadmin [Wed, 15 Jun 2016 00:16:21 +0000 (00:16 +0000)] 
Daily bump.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237470 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoAdd more spellcheck selftests
dmalcolm [Wed, 15 Jun 2016 00:12:16 +0000 (00:12 +0000)] 
Add more spellcheck selftests

gcc/ChangeLog:
* selftest-run-tests.c (selftest::run_tests): Call
selftest::spellcheck_tree_c_tests.
* selftest.h (selftest::spellcheck_tree_c_tests): New decl.
* spellcheck-tree.c: Include selftest.h and stringpool.h.
(selftest::test_find_closest_identifier): New function.
(selftest::spellcheck_tree_c_tests): New function.
* spellcheck.c (selftest::test_find_closest_string): Verify that
the order of the vec does not affect the results for this case.
(selftest::test_data): New array.
(selftest::test_metric_conditions): New function.
(selftest::spellcheck_c_tests): Add a test of case-comparison.
Call selftest::test_metric_conditions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237466 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 14 Jun 2016 23:18:11 +0000 (23:18 +0000)] 
2016-06-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* config/rs6000/rs6000-builtin.def (commentary): Typo.
(BU_P9_MISC_1): Likewise.
(BU_P9_64BIT_MISC_0): Likewise.
(BU_P9_MISC_0): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237465 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Bill Schmidt <wschmidt@linux.vnet.ibm.com>
wschmidt [Tue, 14 Jun 2016 23:13:27 +0000 (23:13 +0000)] 
2016-06-14  Bill Schmidt  <wschmidt@linux.vnet.ibm.com>

* gcc.target/powerpc/vsx-elemrev-2.c: Change effective target
requirements, and disable for AIX for now.
* gcc.target/powerpc/vsx-elemrev-4.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237464 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoIntroduce gcc_rich_location::add_fixit_misspelled_id
dmalcolm [Tue, 14 Jun 2016 23:08:34 +0000 (23:08 +0000)] 
Introduce gcc_rich_location::add_fixit_misspelled_id

gcc/c/ChangeLog:
* c-typeck.c (build_component_ref): Simplify fixit code by
using gcc_rich_location::add_fixit_misspelled_id.
(set_init_label): Likewise.

gcc/cp/ChangeLog:
* typeck.c: Include "gcc-rich-location.h".
(finish_class_member_access_expr): Simplify fixit code by
using gcc_rich_location::add_fixit_misspelled_id.

gcc/ChangeLog:
* gcc-rich-location.c
(gcc_rich_location::add_fixit_misspelled_id): New method.
* gcc-rich-location.h
(gcc_rich_location::add_fixit_misspelled_id): Add decl.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237463 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago P0145R2: Refining Expression Order for C++.
jason [Tue, 14 Jun 2016 20:18:34 +0000 (20:18 +0000)] 
P0145R2: Refining Expression Order for C++.

gcc/c-family/
* c.opt (fargs-in-order): New.
* c-opts.c (c_common_post_options): Adjust flag_args_in_order.
gcc/cp/
* cp-tree.h (CALL_EXPR_OPERATOR_SYNTAX, CALL_EXPR_ORDERED_ARGS)
(CALL_EXPR_REVERSE_ARGS): New.
* call.c (build_new_op_1): Set them.
(extract_call_expr, op_is_ordered): New.
(build_over_call): Set CALL_EXPR_ORDERED_ARGS.
* cp-gimplify.c (cp_gimplify_expr) [CALL_EXPR]: Handle new flags.
* pt.c (tsubst_copy_and_build): Copy new flags.
* semantics.c (simplify_aggr_init_expr): Likewise.
* tree.c (build_aggr_init_expr): Likewise.
(build_min_non_dep_op_overload): Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237459 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/71528
jakub [Tue, 14 Jun 2016 19:55:08 +0000 (19:55 +0000)] 
PR c++/71528
* decl.c (duplicate_decls): For DECL_INITIALIZED_P non-external
olddecl vars, preserve their TREE_READONLY bit.

* g++.dg/opt/pr71528.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237458 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Andreas Tobler <andreast@gcc.gnu.org>
andreast [Tue, 14 Jun 2016 19:53:01 +0000 (19:53 +0000)] 
2016-06-14  Andreas Tobler  <andreast@gcc.gnu.org>

    * config/arm/freebsd.h: Only enable unaligned access for armv6 on
    FreeBSD 11 and above.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237457 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago* MAINTAINERS (Write After Approval): Update e-mail address.
mikael [Tue, 14 Jun 2016 17:43:39 +0000 (17:43 +0000)] 
* MAINTAINERS (Write After Approval): Update e-mail address.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237454 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago escape: Implement flood phase.
ian [Tue, 14 Jun 2016 17:20:33 +0000 (17:20 +0000)] 
escape: Implement flood phase.

    Walks the connection graphs built in the assign phase from the
    function context's sink, propagating the escape level to each
    visited node and uncovering nodes that leak out of their scope
    which implies they must be heap allocated.

    Reviewed-on: https://go-review.googlesource.com/18413

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237453 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago [AArch64] Add commit message
evandro [Tue, 14 Jun 2016 16:26:02 +0000 (16:26 +0000)] 
[AArch64] Add commit message

* gcc/ChangeLog: Add commit messages for patch series that added
support for optionally using the Newton series for division and
square root.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237452 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * config/i386/i386.md (signbittf2): Emit sse_movmskps for TARGET_SSE.
uros [Tue, 14 Jun 2016 16:10:11 +0000 (16:10 +0000)] 
* config/i386/i386.md (signbittf2): Emit sse_movmskps for TARGET_SSE.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237451 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR c++/71516
jakub [Tue, 14 Jun 2016 14:33:11 +0000 (14:33 +0000)] 
PR c++/71516
* decl.c (complete_vars): Handle gracefully type == error_mark_node.

* g++.dg/init/pr71516.C: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237445 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago/cp
paolo [Tue, 14 Jun 2016 14:15:53 +0000 (14:15 +0000)] 
/cp
2016-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

* typeck2.c (digest_init_r): Use EXPR_LOC_OR_LOC on init.

/testsuite
2016-06-14  Paolo Carlini  <paolo.carlini@oracle.com>

* g++.dg/init/array46.C: New.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237444 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago * gcc.target/i386/float128-3.c: New test.
uros [Tue, 14 Jun 2016 14:00:45 +0000 (14:00 +0000)] 
    * gcc.target/i386/float128-3.c: New test.
        * gcc.target/i386/quad-sse4.c: Ditto.
        * gcc.target/i386/quad-sse.c: Use -msse instead of -msse2.
        Update scan strings.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237443 138bc75d-0d04-0410-961f-82ee72b054a4

9 years agoFix typo in copyright boilerplate
ktkachov [Tue, 14 Jun 2016 13:53:50 +0000 (13:53 +0000)] 
Fix typo in copyright boilerplate

* expmed.h: Close parenthesis in "at your option" in copyright
boilerplate.
* lower-subreg.h: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237442 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Jun 2016 13:47:01 +0000 (13:47 +0000)] 
2016-06-14  Richard Biener  <rguenther@suse.de>

PR middle-end/71526
* genmatch.c (expr::gen_transform): Use in_type for comparisons
if available.

* gfortran.dg/pr71526.f90: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237441 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago[AArch64] Handle AND+ASHIFT form of UBFIZ correctly in costs
ktkachov [Tue, 14 Jun 2016 13:39:03 +0000 (13:39 +0000)] 
[AArch64] Handle AND+ASHIFT form of UBFIZ correctly in costs

* config/aarch64/aarch64.c (aarch64_mask_and_shift_for_ubfiz_p):
New function.
(aarch64_rtx_costs): Use it.  Rewrite CONST_INT_P (op1) case to handle
mask+shift version.
* config/aarch64/aarch64-protos.h (aarch64_mask_and_shift_for_ubfiz_p):
New prototype.
* config/aarch64/aarch64.md (*andim_ashift<mode>_bfiz): Replace
matching condition with aarch64_mask_and_shift_for_ubfiz_p.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237440 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 14 Jun 2016 12:41:03 +0000 (12:41 +0000)] 
2016-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch6.adb (Set_Actual_Subtypes): Do not generate actual
subtypes for unconstrained formals when analyzing the generated
body of an expression function, because it may lead to premature
and misplaced freezing of the types of formals.

2016-06-14  Gary Dismukes  <dismukes@adacore.com>

* sem_elab.adb, sem_ch4.adb: Minor reformatting and typo fix.

2016-06-14  Tristan Gingold  <gingold@adacore.com>

* einfo.adb (Set_Has_Timing_Event): Add assertion.
* sem_util.ads, sem_util.adb (Propagate_Concurrent_Flags): New
name for Propagate_Type_Has_Flags.
* exp_ch3.adb, sem_ch3.adb, sem_ch7.adb, sem_ch9.adb: Adjust after
renaming.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237439 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Bob Duff <duff@adacore.com>
charlet [Tue, 14 Jun 2016 12:39:11 +0000 (12:39 +0000)] 
2016-06-14  Bob Duff  <duff@adacore.com>

* sem_elab.adb (Check_A_Call): Do nothing if the callee is
(or is in) an instance, and the caller is outside.  Misc cleanup.

2016-06-14  Javier Miranda  <miranda@adacore.com>

* sem_ch4.adb (Analyze_Quantified_Expression):
Generating C code avoid spurious warning on loop variable of
inlinined postconditions.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237438 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Javier Miranda <miranda@adacore.com>
charlet [Tue, 14 Jun 2016 12:37:54 +0000 (12:37 +0000)] 
2016-06-14  Javier Miranda  <miranda@adacore.com>

* sem_attr.adb (Analyze_Attribute_Old_Result): Adding assertion.
(Analyze_Attribute [Attribute_Old]): Generating C handle
analysis of 'old in inlined postconditions.
(Analyze_Attribute [Attribute_Result]): Generating C handle analysis
of 'result in inlined postconditions.
* exp_attr.adb (Expand_N_Attribute_Reference [Attribute_Old]):
Generating C handle expansion of 'old in inlined postconditions.
* inline.adb (Declare_Postconditions_Result): New subprogram.
* sem_ch12.adb (Copy_Generic_Node): Copy pragmas generated from
aspects when generating C code since pre/post conditions are
inlined and the frontend inlining relies on this routine to
perform inlining.
* exp_ch6.adb (Inlined_Subprogram): Replace Generate_C_Code
by Modify_Tree_For_C.
* exp_unst.adb (Visit_Node): Searching for up-level references
skip entities defined in inlined subprograms.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237437 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 14 Jun 2016 12:36:01 +0000 (12:36 +0000)] 
2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_ch7.adb, sem_ch12.adb, freeze.adb, lib-xref.ads, exp_ch3.adb:
Minor reformatting.

2016-06-14  Bob Duff  <duff@adacore.com>

* sem_elab.adb: Do nothing if the callee is intrinsic.
* sinfo.ads, einfo.ads: Minor comment fixes.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237436 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 14 Jun 2016 12:33:56 +0000 (12:33 +0000)] 
2016-06-14  Ed Schonberg  <schonberg@adacore.com>

* contracts.adb (Has_Null_Body): Move to sem_util, for general
availability.
* sem_util.ads, sem_util.adb (Has_Null_Body): Predicate to
determine when an internal procedure created for some assertion
checking (e.g. type invariant) is a null procedure. Used to
eliminate redundant calls to such procedures when they apply to
components of composite types.
* exp_ch3.adb (Build_Component_Invariant_Call): Do not add call
if invariant procedure has a null body.

2016-06-14  Thomas Quinot  <quinot@adacore.com>

* g-socket.ads (Check_Selector): Clarify effect on IN OUT socket
set parameters.

2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Process_Action): Pass the action
list to Process_Transient_Object.
(Process_If_Case_Statements): Pass the action list to
Process_Transient_Object.
(Process_Transient_Object): Add new parameter Stmts and update the
comment on usage. When the context is a Boolean evaluation, insert
any finalization calls after the last statement of the construct.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237435 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Tristan Gingold <gingold@adacore.com>
charlet [Tue, 14 Jun 2016 12:23:34 +0000 (12:23 +0000)] 
2016-06-14  Tristan Gingold  <gingold@adacore.com>

* einfo.adb, einfo.ads (Has_Timing_Event,
Set_Has_Timing_Event): Add Has_Timing_Event flag.
(Write_Entity_Flags): Display * sem_util.ads, sem_util.adb:
(Propagate_Type_Has_Flags): New procedure to factorize code.
* exp_ch3.adb (Expand_Freeze_Array_Type,
Expand_Freeze_Record_Type): Call Propagate_Type_Has_Flags.
* sem_ch3.adb (Access_Type_Decalaration): Initialize
Has_Timing_Event flag. (Analyze_Object_Declaration):
Move code that check No_Local_Timing_Events near
the code that check No_Local_Protected_Objects.
(Analyze_Private_Extension_Declaration, Array_Type_Declaration)
(Build_Derived_Type, Copy_Array_Base_Type_Attributes,
Process_Full_View) (Record_Type_Definition): Call
Propagate_Type_Has_Flags.
* sem_ch4.adb (Analyze_Allocator): Check No_Local_Timing_Events.
* sem_ch7.adb (New_Private_Type): Set Has_Timing_Event on the
Timing_Event type.
(Uninstall_Declaration): Call Propagate_Type_Has_Flags.
* sem_ch9.adb (Analyze_Protected_Definition): Call
Propagate_Type_Has_Flags.

2016-06-14  Arnaud Charlet  <charlet@adacore.com>

* sem.ads: Minor style fix.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237434 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Ed Schonberg <schonberg@adacore.com>
charlet [Tue, 14 Jun 2016 12:20:01 +0000 (12:20 +0000)] 
2016-06-14  Ed Schonberg  <schonberg@adacore.com>

* sem_ch12.adb (Analyze_Associations): An actual parameter
with a box must be included in the count of actuals, to detect
possible superfluous named actuals that do not match any of the
formals of the generic unit in a formal package declaration.

2016-06-14  Justin Squirek  <squirek@adacore.com>

* sem_ch3.adb (Analyze_Object_Declaration): Fix formatting
of error output related to SPARK RM 6.1.7(3) and pragma
Extensions_Visible.
* sem_ch4.adb (Analyze_Type_Conversion): Fix formatting of error
output related to SPARK RM 6.1.7(3) and pragma Extensions_Visible.
* sem_prag.adb (Analyze_Pragma): Fix formatting of error output
related to SPARK RM 7.1.2(15) and pragma Volatile_Function
so that the values True and False are no longer surrounded by
double quotes.
* sem_res.adb (Resolve_Actuals): Fix formatting of error output
related to SPARK RM 6.1.7(3) and pragma Extensions_Visible.

2016-06-14  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb (Adjust_Global_Switches): Enable access checks
in codepeer mode.
* freeze.adb: Minor grammar fix in comment.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237433 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Hristian Kirtchev <kirtchev@adacore.com>
charlet [Tue, 14 Jun 2016 12:17:48 +0000 (12:17 +0000)] 
2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* lib.adb: Minor reformatting.
* sem_util.adb (Is_OK_Volatile_Context): Do
include Address in the supported attributes.

2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* exp_ch4.adb (Expand_N_Case_Expression):
Code cleanup. Finalize any transient controlled
objects on exit from a case expression alternative.
(Expand_N_If_Expression): Code cleanup.
(Process_Actions): Removed.
(Process_If_Case_Statements): New routine.
(Process_Transient_Object): Change the name of formal Rel_Node to
N and update all occurrences. Update the comment on usage. When
the type of the context is Boolean, the proper insertion point
for the finalization call is after the last declaration.

2016-06-14  Ed Schonberg  <schonberg@adacore.com>

* lib-xref.ads, lib-xref.adb (Has_Deferred_Reference): new
predicate to determine whether an entity appears in a context
for which a Deferred_Reference was created, because it is not
possible to determine when reference is analyzed whether it
appears in a context in which the entity is modified.
* sem_ch5.adb (Analyze_Statement): Do not emit a useless warning
on assignment for an entity that has a deferred_reference.

2016-06-14  Javier Miranda  <miranda@adacore.com>

* sem_res.adb (Resolve_Actuals): Generate a reference to actuals that
come from source. Previously the reference was generated only if the
call comes from source but the call may be rewritten by the expander
thus causing the notification of spurious warnings.

2016-06-14  Arnaud Charlet  <charlet@adacore.com>

* gnat1drv.adb: Remove further references to AAMP.
* checks.adb (Apply_Scalar_Range_Check): Take
Check_Float_Overflow info account.
* live.ads, live.adb Added subprogram headers and
start-of-processing-for comments.
* sem_ch12.adb (Instantiate_Package_Body): Do not suppress
checks when instantiating runtime units in CodePeer mode.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237432 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Arnaud Charlet <charlet@adacore.com>
charlet [Tue, 14 Jun 2016 12:12:42 +0000 (12:12 +0000)] 
2016-06-14  Arnaud Charlet  <charlet@adacore.com>

* exp_ch3.adb (Expand_N_Object_Declaration): Only consider
nodes from sources.

2016-06-14  Arnaud Charlet  <charlet@adacore.com>

* switch-c.adb, gnat1drv.adb (Adjust_Global_Switches): Only disable
simple value propagation in CodePeer mode when warnings are disabled.
(Scan_Front_End_Switches): Enable relevant front-end switches
when using -gnateC.

2016-06-14  Hristian Kirtchev  <kirtchev@adacore.com>

* sem_util.adb (Is_OK_Volatile_Context): A
reference to a volatile object is considered OK if appears as
the prefix of attributes Address, Alignment, Component_Size,
First_Bit, Last_Bit, Position, Size, Storage_Size.

2016-06-14  Yannick Moy  <moy@adacore.com>

* lib-xref-spark_specific.adb (Add_SPARK_File): Do not traverse
subunits directly, as they are already traversed as part of the
top-level unit to which they belong.
(Add_SPARK_Xrefs): Add assertions to ensure correct sorting.
(Generate_Dereference): Use unique definition place for special
variable __HEAP, to ensure correct sorting of references.
* lib-xref.adb (Generate_Reference): Use top-level unit in case
of subunits.
* lib.adb, lib.ads (Get_Top_Level_Code_Unit): New functions that
compute the top-level code unit for a source location of AST node,
that go past subunits.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237431 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Andre Vieira <andre.simoesdiasvieira@arm.com>
avieira [Tue, 14 Jun 2016 11:24:51 +0000 (11:24 +0000)] 
2016-06-14  Andre Vieira  <andre.simoesdiasvieira@arm.com>

gcc/testsuite/ChangeLog:
* gcc.dg/zero_bits_compound-1.c: Support aarch64.
* gcc.dg/zero_bits_compound-1.c: Likewise.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237430 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Jun 2016 10:42:00 +0000 (10:42 +0000)] 
2016-06-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71522
* tree-ssa.c (non_rewritable_lvalue_p): Do not rewrite non-float
copying into float copying.

* gcc.dg/torture/pr71522.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237429 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Jun 2016 10:28:23 +0000 (10:28 +0000)] 
2016-06-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71521
* tree-vrp.c (extract_range_from_binary_expr_1): Guard
division int_const_binop against zero divisor.

* gcc.dg/tree-ssa/vrp101.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237428 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago PR tree-optimization/71520
jakub [Tue, 14 Jun 2016 10:20:04 +0000 (10:20 +0000)] 
PR tree-optimization/71520
* tree-ssa-tail-merge.c (find_duplicate): Handle labels.
(replace_block_by): Move user labels from bb1 to bb2.

* gcc.dg/tree-ssa/pr71520.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237427 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Jun 2016 07:26:52 +0000 (07:26 +0000)] 
2016-06-14  Richard Biener  <rguenther@suse.de>

PR middle-end/71310
PR bootstrap/71510
* expr.h (get_bit_range): Declare.
* expr.c (get_bit_range): Export.
* fold-const.c (optimize_bit_field_compare): Use get_bit_range and
word_mode again to constrain the bitfield access.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237426 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago2016-06-14 Richard Biener <rguenther@suse.de>
rguenth [Tue, 14 Jun 2016 07:22:04 +0000 (07:22 +0000)] 
2016-06-14  Richard Biener  <rguenther@suse.de>

PR tree-optimization/71521
* tree-vrp.c (extract_range_from_binary_expr_1): Guard
division int_const_binop against zero divisor.

* gcc.dg/tree-ssa/vrp101.c: New testcase.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237425 138bc75d-0d04-0410-961f-82ee72b054a4

9 years ago escape: Implement assign phase.
ian [Tue, 14 Jun 2016 04:29:43 +0000 (04:29 +0000)] 
escape: Implement assign phase.

    Implementation of the assign/connect phase.
    Statements containing expressions which alias local, parameter,
    and global objects are analyzed and the alias relationship between
    objects containing pointers are captured in a connection graph to
    summarize the assignments within a function.

    Reviewed-on: https://go-review.googlesource.com/18302

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@237424 138bc75d-0d04-0410-961f-82ee72b054a4