Commit Graph

142658 Commits

Author SHA1 Message Date
Richard Biener
b9e86e2ca1 re PR tree-optimization/66721 (gcc.target/i386/pr61403.c FAILs)
2015-11-26  Richard Biener  <rguenther@suse.de>

	PR tree-optimization/66721
	* tree-vect-loop.c (vect_analyze_loop_2): Compute scalar
	iteration cost earlier.  Re-do analysis without SLP when
	vectorization using SLP fails and without has a chance to succeed.

From-SVN: r230956
2015-11-26 13:46:59 +00:00
Richard Biener
6be52f624e genmatch.c (dt_simplify::gen_1): For generic wrap all multi-result-use captures in a SAVE_EXPR.
2015-11-26  Richard Biener  <rguenther@suse.de>

	* genmatch.c (dt_simplify::gen_1): For generic wrap all
	multi-result-use captures in a SAVE_EXPR.

From-SVN: r230955
2015-11-26 13:45:45 +00:00
David Edelsohn
3e0fb1a3e3 Fix typo
From-SVN: r230954
2015-11-26 08:44:36 -05:00
Matthew Wahab
a3735e01f9 [AArch64] Add support for ARMv8.1 Adv.SIMD instructions.
* config/aarch64/aarch64.h (AARCH64_ISA_RDMA): New.
	(TARGET_SIMD_RDMA): New.

From-SVN: r230953
2015-11-26 13:39:20 +00:00
David Edelsohn
6cfe90e6d7 * configure: Regenerate.
From-SVN: r230950
2015-11-26 08:27:21 -05:00
David Edelsohn
f95207445b * configure: Regenerate.
From-SVN: r230949
2015-11-26 08:24:19 -05:00
David Edelsohn
cc3baaa963 * libtool.m4 (export_symbols_cmds) [AIX]: Add global TLS "L" symbols.
From-SVN: r230948
2015-11-26 08:20:59 -05:00
Paolo Carlini
7070a0fab2 re PR c++/67249 ([concepts] ICE parsing f(pair<auto, concept>))
2015-11-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67249
	* g++.dg/concepts/pr67249.C: New.

From-SVN: r230947
2015-11-26 13:14:45 +00:00
Kyrylo Tkachov
f0e8751330 [combine] Only restrict pure simplification in mult-extend subst case, allow other substitutions
* combine.c (subst): Do not return clobber of zero in widening mult
	case.  Just return x unchanged if it is a no-op substitution.

From-SVN: r230946
2015-11-26 13:07:29 +00:00
Richard Biener
5564c379b0 re PR testsuite/66799 (gcc.dg/vect/pr20122.c FAILs)
2015-11-26  Richard Biener  <rguenther@suse.de>

	PR testsuite/66799
	* gcc.dg/vect/pr20122.c (main): Do not align Kernel, do not
	vectorize init loop and adjust expected outcome.

From-SVN: r230943
2015-11-26 12:15:43 +00:00
Eric Botcazou
89a01fcf4c re PR c++/68527 (ICE with -fdump-ada-spec on invalid C++ 11 code)
PR c++/68527
	* c-ada-spec.c (dump_nested_types): Add guard for error_mark_node.
	(print_ada_struct_decl): Likewise.

From-SVN: r230942
2015-11-26 12:04:50 +00:00
Richard Biener
d083907f1f re PR testsuite/67203 (FAIL: g++.dg/tree-ssa/pr61034.C -std=gnu++11 scan-tree-dump-times fre2 "free" 10)
2015-11-26  Richard Biener  <rguenther@suse.de>

	PR testsuite/67203
	* g++.dg/tree-ssa/pr61034.C: Make expected optimization result
	dependent on PUSH_ARGS_REVERSED.  Drop optimization level and
	also monitor final optimization result.

From-SVN: r230940
2015-11-26 11:53:13 +00:00
Jakub Jelinek
9d465067af re PR rtl-optimization/68249 (wrong code at -O2 and -O3 on x86_64-linux-gnu)
PR rtl-optimization/68249
	PR rtl-optimization/68321
	* gcc.c-torture/execute/pr68249.c: New test.
	* gcc.c-torture/execute/pr68321.c: New test.

From-SVN: r230939
2015-11-26 12:52:11 +01:00
Ilya Enkovich
d0470103a9 re PR target/68416 ([MPX] GCC emits a lot of redundant bndmov instructions)
gcc/

2015-11-26  Vladimir Makarov  <vmakarov@redhat.com>

	PR target/68416
	* config/i386/i386.h (enum reg_class): Add
	bounds registers to ALL_REGS.

gcc/testsuite/

2015-11-26  Ilya Enkovich  <enkovich.gnu@gmail.com>

	PR target/68416
	* gcc.target/i386/mpx/pr68416.c: New test.

From-SVN: r230938
2015-11-26 11:49:20 +00:00
Eric Botcazou
182a997303 Back out latest change.
From-SVN: r230935
2015-11-26 11:17:20 +00:00
Paolo Carlini
a3be0c83f8 re PR c++/67313 (ICE: in vague_linkage_p, at cp/decl2.c:1878 with -fno-weak and variadic template)
2015-11-26  Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/67313
	* g++.dg/cpp0x/no-weak1.C: New.

From-SVN: r230934
2015-11-26 10:37:33 +00:00
Jakub Jelinek
1a80d6b87d re PR tree-optimization/68128 (A huge regression in Parboil v2.5 OpenMP CUTCP test (2.5 times lower performance))
PR tree-optimization/68128
	* tree.h (OMP_CLAUSE_SHARED_READONLY): Define.
	* gimplify.c: Include gimple-walk.h.
	(enum gimplify_omp_var_data): Add GOVD_WRITTEN.
	(omp_notice_variable): Set flags to n->value if n already
	exists in target region, but we need to jump to do_outer.
	(omp_shared_to_firstprivate_optimizable_decl_p,
	omp_mark_stores, omp_find_stores_op, omp_find_stores_stmt): New
	functions.
	(gimplify_adjust_omp_clauses_1): Set OMP_CLAUSE_SHARED_READONLY
	on OMP_CLAUSE_SHARED if it is a scalar non-addressable that is
	not modified in the body.  Call omp_mark_stores for outer
	contexts on OMP_CLAUSE_SHARED clauses if they could be written
	in the body or on OMP_CLAUSE_LASTPRIVATE.
	(gimplify_adjust_omp_clauses): Add body argument, call
	omp_find_stores_{stmt,op} on the body through walk_gimple_seq.
	Set OMP_CLAUSE_SHARED_READONLY
	on OMP_CLAUSE_SHARED if it is a scalar non-addressable that is
	not modified in the body.  Call omp_mark_stores for outer
	contexts on OMP_CLAUSE_SHARED clauses if they could be written
	in the body or on OMP_CLAUSE_LASTPRIVATE or on OMP_CLAUSE_LINEAR
	without OMP_CLAUSE_LINEAR_NO_COPYOUT or on OMP_CLAUSE_REDUCTION.
	(gimplify_oacc_cache, gimplify_omp_parallel, gimplify_omp_task,
	gimplify_omp_for, gimplify_omp_workshare, gimplify_omp_target_update,
	gimplify_expr): Adjust gimplify_adjust_omp_clauses callers.
	* tree-nested.c (convert_nonlocal_omp_clauses,
	convert_local_omp_clauses): Clear OMP_CLAUSE_SHARED_READONLY on
	non-local vars or local vars referenced from nested routines.
	* omp-low.c (scan_sharing_clauses): For OMP_CLAUSE_SHARED_READONLY
	attempt to optimize it into OMP_CLAUSE_FIRSTPRIVATE.  Even for
	TREE_READONLY, don't call use_pointer_for_field with non-NULL
	second argument until we are sure we are keeping OMP_CLAUSE_SHARED.

	* gcc.dg/gomp/pr68128-1.c: New test.
	* gcc.dg/gomp/pr68128-2.c: New test.

From-SVN: r230932
2015-11-26 11:18:50 +01:00
Paolo Bonzini
a37a22da2d implement-c.texi (Integers Implementation): Make GCC's promises about signed left shift stronger and clarify the cases when...
2015-11-26  Paolo Bonzini <bonzini@gnu.org>

	* doc/implement-c.texi (Integers Implementation): Make GCC's promises
	about signed left shift stronger and clarify the cases when they're
	broken.

From-SVN: r230931
2015-11-26 10:16:56 +00:00
Kyrylo Tkachov
b3877860a8 [calls.c] PR rtl-optimization/67226: Take into account pretend_args_size when checking stack offsets for sibcall optimisation
2015-11-26  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
            Bernd Schmidt  <bschmidt@redhat.com>

	PR rtl-optimization/67226
	* calls.c (store_one_arg): Take into account
	crtl->args.pretend_args_size when checking for overlap between
	arg->value and argblock + arg->locate.offset during sibcall
	optimization.

	* gcc.c-torture/execute/pr67226.c: New test.


Co-Authored-By: Bernd Schmidt <bernds@redhat.com>

From-SVN: r230929
2015-11-26 09:58:28 +00:00
Jakub Jelinek
62775f0d9a re PR c++/68508 (Internal compiler error with parentheses around return value in C++14 with ASan enabled)
PR c++/68508
	* cp-tree.h (cp_ubsan_maybe_instrument_downcast): Add INTYPE argument.
	* cp-ubsan.c (cp_ubsan_maybe_instrument_downcast): Likewise.  Use
	it instead of or in addition to TREE_TYPE (op).  Use
	is_properly_derived_from, return NULL_TREE if TREE_TYPE (intype) and
	TREE_TYPE (type) are the same type minus qualifiers.
	* typeck.c (build_static_cast_1): Adjust callers.

	* g++.dg/ubsan/pr68508.C: New test.

From-SVN: r230928
2015-11-26 10:52:48 +01:00
Wilco Dijkstra
bf8e1b52f7 [AArch64] Update patterns to support FP zero
2015-11-26  Wilco Dijkstra  <wdijkstr@arm.com>

	* config/aarch64/aarch64.md (cbranch<mode>4): Use
	aarch64_fp_compare_operand.
	(store_pairsf): Use aarch64_reg_or_fp_zero.
	(store_pairdf): Likewise.
	(cstore<mode>4): Use aarch64_fp_compare_operand.
	(cmov<mode>6): Likewise.
	* config/aarch64/aarch64-ldpstp.md: Use aarch64_reg_or_fp_zero.

From-SVN: r230927
2015-11-26 09:46:34 +00:00
Jakub Jelinek
0e65fd7d19 * testsuite/libgomp.c/target-35.c: New test.
From-SVN: r230926
2015-11-26 10:44:49 +01:00
Martin Sebor
e82f9ef748 PR c++/67876 - [6 Regression] ICE when compiling Firefox 38
gcc/cp
	* pt.c (convert_template_argument): Make sure number of tree
	operands is greater than zero before attempting to extract one.

gcc/testsuite/
	* g++.dg/pr67876.C: New test.

From-SVN: r230924
2015-11-25 18:52:04 -07:00
Ian Lance Taylor
ae026741df re PR go/61303 (gccgo: segfault, regression since 4.8.2)
PR go/61303
    runtime: don't overallocate in select code
    
    If we've already allocated an fd_set, don't allocate another one.
    
    Also, don't bother to read from rdwake if it wasn't returned in select.
    
    Fixes https://gcc.gnu.org/PR61303.
    
    Reviewed-on: https://go-review.googlesource.com/17243

From-SVN: r230922
2015-11-26 00:24:21 +00:00
GCC Administrator
1a5d8ff69c Daily bump.
From-SVN: r230921
2015-11-26 00:16:12 +00:00
Aditya Kumar
d6416b3800 fix PR68453: recursively add phi nodes to merge points
The patch adds close phi nodes to every outer loop exit, and to every loop
guard.  For loop guards it computes an initial value that determines where we
stop inserting phi nodes.  When the initial value is a constant, the initial
value is considered to be defined in the entry of the code gen region.

Co-Authored-By: Sebastian Pop <s.pop@samsung.com>

From-SVN: r230918
2015-11-26 00:07:43 +00:00
Martin Sebor
91f6ec2fc6 PR c/66516 - missing diagnostic on taking the address of a builtin function
PR c/66516 - missing diagnostic on taking the address of a builtin function
	* g++.dg/addr_builtin-1.C: New test (accidentally omitted from
	initial commit).
	* gcc.dg/addr_builtin-1.c: Same.

From-SVN: r230916
2015-11-25 16:29:57 -07:00
Jan Hubicka
1ff9ed6fb2 re PR lto/67548 (LTO drops weak binding with "ld -r")
PR lto/67548
	* lto-plugin.c (linker_output, linker_output_set): New statics.
	(all_symbols_read_handler): Add -flinker-output option.
	(onload): Record linker_output info.

	* ipa-visibility.c (cgraph_externally_visible_p,
	varpool_node::externally_visible_p): When doing incremental linking,
	hidden symbols may be still used later.
	(update_visibility_by_resolution_info): Do not drop weak during
	incremental link.
	(function_and_variable_visibility): Fix formating.
	* flag-types.h (lto_linker_output): Declare.
	* common.opt 9flag_incremental_link): New flag.

	* lto-lang.c (lto_post_options): Process flag_lto_linker_output.
	* lang.opt (lto_linker_output): New enum.
	(flinker_output): New flag.

From-SVN: r230915
2015-11-25 23:05:07 +00:00
Michael Meissner
c9d82fb023 update changelog
From-SVN: r230914
2015-11-25 23:01:59 +00:00
Michael Meissner
d5906efcaa <patch #10>
[gcc]
2015-11-25  Michael Meissner  <meissner@linux.vnet.ibm.com>

	<patch #10>
	* config/rs6000/constraints.md (wb constraint): New constraint for
	ISA 3.0 d-form scalar addressing.

	* config/rs6000/rs6000.c (mode_supports_vmx_dform): Add support
	for ISA 3.0 D-form addressing to load SFmode/DFmode scalars into
	Altivec registers.  Add wb constraint for Altivec registers with
	D-form addressing.  If we have ISA 3.0 d-form support, undo
	secondary reload support for using FPR registers if we want to do
	D-form addressing.
	(rs6000_debug_reg_global): Likewise.
	(rs6000_setup_reg_addr_masks): Likewise.
	(rs6000_init_hard_regno_mode_ok): Likewise.
	(rs6000_secondary_reload): Likewise.
	(rs6000_preferred_reload_class): Likewise.
	(rs6000_secondary_reload_class): Likewise.

	* config/rs6000/rs6000.h (enum r6000_reg_class_enum): Add wb
	constraint.

	* config/rs6000/rs6000.md (f32_lr2 mode attribute): Add support
	for ISA 3.0 SFmode/DFmode d-form addressing to Altivec registers.
	(f32_lm2): Likewise.
	(f32_li2): Likewise.
	(f32_sr2): Likewise.
	(f32_sm2): Likewise.
	(f32_si2): Likewise.
	(f64_p9): Likewise.
	(extendsfdf2_fpr): Likewise.
	(mov<mode>_hardfloat): Likewise.
	(mov<mode>_hardfloat32): Likewise.
	(mov<mode>_hardfloat64): Likewise.

	* doc/md.texi (RS/6000 constraints): Document wb constraint.
	Fixup we constraint documentation.

[gcc/testsuite]
2015-11-25  Michael Meissner  <meissner@linux.vnet.ibm.com>

	* gcc.target/powerpc/dform-1.c: New test.
	* gcc.target/powerpc/dform-2.c: Likewise.

From-SVN: r230913
2015-11-25 22:49:41 +00:00
Jan Hubicka
22bea0be95 lto-symtab.c: Include alias.h
* lto-symtab.c: Include alias.h
	(warn_type_compatibility_p): Replace types_compatible_p checks by
	TBAA and size checks; set bit 2 if locations are TBAA incompatible.
	(lto_symtab_merge): Compare DECL sizes.
	(lto_symtab_merge_decls_2): Warn about TBAA in compatibility.
	* gfortran.dg/lto/bind_c-6_0.f90: New testcase.
	* gfortran.dg/lto/bind_c-6_1.c: New testcase.

From-SVN: r230911
2015-11-25 22:22:37 +00:00
Jason Merrill
c74f743ae4 * g++.dg/init/self1.C: Remove dg-do run.
From-SVN: r230910
2015-11-25 17:13:28 -05:00
Ryan Burn
a0c0e716fa re PR c++/68434 ([concepts] function tsubst sets TYPE_CANONICAL before setting a type's PLACEHOLDER_TYPE_CONSTRAINTS)
PR c++/68434

	* pt.c (tsubst): Set PLACEHOLDER_TYPE_CONSTRAINTS before
	calling canonical_type_parameter.

From-SVN: r230909
2015-11-25 17:13:23 -05:00
Jason Merrill
75729cff1e lambda.c (maybe_add_lambda_conv_op): Only set no_sanitize_undefined if SANITIZE_NULL.
* lambda.c (maybe_add_lambda_conv_op): Only set
	no_sanitize_undefined if SANITIZE_NULL.

From-SVN: r230908
2015-11-25 16:34:00 -05:00
Tom de Vries
b5f34b425a Add pass_oacc_kernels pass group in passes.def
2015-11-25  Tom de Vries  <tom@codesourcery.com>

	* omp-low.c (pass_expand_omp_ssa::clone): New function.
	* passes.def: Add pass_oacc_kernels pass group.
	* tree-ssa-loop-ch.c (pass_ch::clone): New function.

	* g++.dg/tree-ssa/copyprop-1.C: Update after adding new dce1.
	* gcc.dg/pr23911.c: Same.
	* gcc.dg/tree-ssa/20030709-2.c: Same.
	* gcc.dg/tree-ssa/20030731-2.c: Same.
	* gcc.dg/tree-ssa/20040729-1.c: Same.
	* gcc.dg/tree-ssa/cfgcleanup-1.c: Same.
	* gcc.dg/tree-ssa/loop-36.c: Same.
	* gcc.dg/tree-ssa/pr21086.c: Same.
	* gcc.dg/tree-ssa/ssa-dce-1.c: Same.
	* gcc.dg/tree-ssa/ssa-dce-2.c: Same.
	* gcc.dg/vect/pr26359.c: Same.
	* c-c++-common/restrict-2.c: Update after adding new lim1.
	* c-c++-common/restrict-4.c: Same.
	* g++.dg/tree-ssa/pr33615.C: Same.
	* g++.dg/tree-ssa/restrict1.C: Same.
	* gcc.dg/tm/pub-safety-1.c: Same.
	* gcc.dg/tm/reg-promotion.c: Same.
	* gcc.dg/tree-ssa/20050314-1.c: Same.
	* gcc.dg/tree-ssa/loop-32.c: Same.
	* gcc.dg/tree-ssa/loop-33.c: Same.
	* gcc.dg/tree-ssa/loop-34.c: Same.
	* gcc.dg/tree-ssa/loop-35.c: Same.
	* gcc.dg/tree-ssa/loop-7.c: Same.
	* gcc.dg/tree-ssa/pr23109.c: Same.
	* gcc.dg/tree-ssa/restrict-3.c: Same.
	* gcc.dg/tree-ssa/restrict-5.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-1.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-10.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-11.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-12.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-2.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-3.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-6.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-7.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-8.c: Same.
	* gcc.dg/tree-ssa/ssa-lim-9.c: Same.
	* gcc.dg/tree-ssa/structopt-1.c: Same.
	* gfortran.dg/pr32921.f: Same.
	* g++.dg/tree-ssa/pr19637.C: Update after adding new dom1.
	* g++.dg/tree-ssa/pr61009.C: Same.
	* g++.dg/tree-ssa/ssa-dom.C: Same.
	* gcc.dg/pr20115-1.c: Same.
	* gcc.dg/tree-prof/20050826-2.c: Same.
	* gcc.dg/tree-prof/cmpsf-1.c: Same.
	* gcc.dg/tree-ssa/20030821-1.c: Same.
	* gcc.dg/tree-ssa/20030922-2.c: Same.
	* gcc.dg/tree-ssa/20031022-1.c: Same.
	* gcc.dg/tree-ssa/20040615-1.c: Same.
	* gcc.dg/tree-ssa/20040624-1.c: Same.
	* gcc.dg/tree-ssa/pr21417.c: Same.
	* gcc.dg/tree-ssa/pr61607.c: Same.
	* gcc.dg/tree-ssa/slsr-27.c: Same.
	* gcc.dg/tree-ssa/slsr-28.c: Same.
	* gcc.dg/tree-ssa/slsr-29.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-branch-1.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-cse-3.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-1.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2a.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2b.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2c.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2d.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2e.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-2f.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-4.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-5.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-6.c: Same.
	* gcc.dg/tree-ssa/ssa-dom-thread-7.c: Same.
	* gcc.dg/tree-ssa/ssa-thread-12.c: Same.
	* gcc.dg/tree-ssa/vrp47.c: Same.
	* gcc.dg/tree-ssa/copy-headers.c: Update after adding ch1.
	* gcc.dg/tree-ssa/foldconst-2.c: Same.
	* gcc.dg/tree-ssa/loop-40.c: Same.
	* gcc.dg/gomp/notify-new-function-3.c: Update after adding ompexpssa1.

From-SVN: r230907
2015-11-25 21:26:37 +00:00
Tom de Vries
896522eec5 Add pass_oacc_kernels
2015-11-25  Tom de Vries  <tom@codesourcery.com>

	* tree-pass.h (make_pass_oacc_kernels, make_pass_oacc_kernels2):
	Declare.
	* tree-ssa-loop.c (gate_oacc_kernels): New static function.
	(pass_data_oacc_kernels, pass_data_oacc_kernels2): New pass_data.
	(class pass_oacc_kernels, class pass_oacc_kernels2): New pass.
	(make_pass_oacc_kernels, make_pass_oacc_kernels2): New function.

From-SVN: r230906
2015-11-25 21:26:24 +00:00
Paolo Carlini
faadf84ceb constexpr-array13.C: Fix.
2015-11-25  Paolo Carlini  <paolo.carlini@oracle.com>

	* g++.dg/cpp0x/constexpr-array13.C: Fix.

From-SVN: r230903
2015-11-25 20:46:25 +00:00
Jan Hubicka
ed7dc894d7 timevar.def (TV_IPA_LTO_DECOMPRESS, [...]): New.
* timevar.def (TV_IPA_LTO_DECOMPRESS, TV_IPA_LTO_COMPRESS,
	TV_IPA_LTO_OUTPUT): New.
	* lto-compress.c: Include timevar.h
	(lto_end_compression, lto_end_uncompression): Add timers.
	* langhooks.c: Include timevar.h
	(lhd_append_data): Add timer.

From-SVN: r230902
2015-11-25 20:00:47 +00:00
David Edelsohn
72ad6d3339 * gfortran.dg/nint_p7.f90: New testcase.
From-SVN: r230898
2015-11-25 14:39:19 -05:00
Jason Merrill
5546e16045 re PR sanitizer/67941 (calls on function pointer from a captureless lambda cause ubsan warning)
PR c++/67941
	* lambda.c (maybe_add_lambda_conv_op): Mark _FUN as
	no_sanitize_undefined.

From-SVN: r230897
2015-11-25 13:58:11 -05:00
Jason Merrill
917124c302 cp-ubsan.c (cp_ubsan_instrument_vptr_p): Use do_ubsan_in_current_function.
* cp-ubsan.c (cp_ubsan_instrument_vptr_p): Use
	do_ubsan_in_current_function.

From-SVN: r230896
2015-11-25 13:58:06 -05:00
Jan Hubicka
c217bac5d4 varasm.c (default_elf_asm_output_limited_string, [...]): Replace fprintf by putc.
* varasm.c (default_elf_asm_output_limited_string,
	default_elf_asm_output_ascii): Replace fprintf by putc.

From-SVN: r230895
2015-11-25 18:12:51 +00:00
Vladimir Makarov
6c051d60a9 re PR rtl-optimization/67954 (internal compiler error: in patch_jump_insn, at cfgrtl.c:1303)
2015-11-25  Vladimir Makarov  <vmakarov@redhat.com>

	PR rtl-optimization/67954
	* lra-constraints.c (curr_insn_transform): Add check on scratch
	pseudo when change class to NO_REGS.  Add an assert.

From-SVN: r230894
2015-11-25 17:58:35 +00:00
Nathan Sidwell
df1bddedd4 nvptx.md (load_arg_reg<mode>): Arg number constraint is 'n'.
* config/nvptx/nvptx.md (load_arg_reg<mode>): Arg number
	constraint is 'n'.
	* config/nvptx/nvptx.c (write_one_arg): Use 'i' directly as arg
	number.
	(nvptx_write_function_decl): Number args from 0.
	(nvptx_declare_function_name): Likewise.
	(nvptx_function_incoming_arg): Likewise.
	(nvptx_output_call_insn): Correct formatting.

From-SVN: r230889
2015-11-25 17:33:30 +00:00
David Sherwood
ccb57bb090 optabs.def: Add new optabs fmax_optab/fmin_optab.
2015-11-25  David Sherwood  <david.sherwood@arm.com>

        * optabs.def: Add new optabs fmax_optab/fmin_optab.
        * internal-fn.def: Add new fmax/fmin internal functions.
        * doc/md.texi: Add fmin and fmax patterns.

From-SVN: r230888
2015-11-25 17:12:28 +00:00
Markus Trippelsdorf
c2127564ef re PR c++/68087 (ICE with constexpr in array with negative index)
/cp
2015-11-25  Markus Trippelsdorf  <markus@trippelsdorf.de>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68087
	* constexpr.c (cxx_eval_array_reference): Use tree_fits_shwi_p before
	tree_to_shwi to avoid ICEs.

/testsuite
2015-11-25  Markus Trippelsdorf  <markus@trippelsdorf.de>
	    Paolo Carlini  <paolo.carlini@oracle.com>

	PR c++/68087
	* g++.dg/cpp0x/constexpr-array13.C: New.

Co-Authored-By: Paolo Carlini <paolo.carlini@oracle.com>

From-SVN: r230886
2015-11-25 16:40:16 +00:00
Arnaud Charlet
8e2d104ba2 [multiple changes]
2015-11-25  Eric Botcazou  <ebotcazou@adacore.com>

	* gnatlink.adb (Gnatlink): Do not reinstate -fsjlj for the linker
	from the switches saved in the ALI file but from the exception
	settings.

2015-11-25  Arnaud Charlet  <charlet@adacore.com>

	* lib-xref-spark_specific.adb
	(Add_SPARK_Scope): Take entry families into account.
	* a-exetim.ads, a-exetim-default.ads, a-exetim-mingw.ads (Clock,
	Clock_For_Interrupts): preconditions added.
	* a-extiin.ads (Clock): preconditions added.
	* par-ch3.adb (P_Declarative_Items): In case of misplaced
	aspect specifications, ensure that flag Done is properly set to
	continue parsing.

From-SVN: r230879
2015-11-25 16:30:09 +01:00
Arnaud Charlet
7b52257cfa [multiple changes]
2015-11-25  Arnaud Charlet  <charlet@adacore.com>

	* exp_util.adb (Remove_Side_Effects): Minimize extra temporaries
	and use of 'Reference when needed.

2015-11-25  Doug Rupp  <rupp@adacore.com>

	* sigtramp-vxworks-target.inc (__x86_64__): Restore context for the
	sake of uniformity.
	* init.c (__gnat_inum_to_ivec): Add some casting to avoid
	warnings when sizeof(long) != sizeof(int)

2015-11-25  Yannick Moy  <moy@adacore.com>

	* lib-xref-spark_specific.adb (SPARK_Entities): Add entries for
	consideration.
	(Add_SPARK_Scope): Take tasks into account.
	(Detect_And_Add_SPARK_Scope): Take tasks into account.
	(Enclosing_Subprogram_Or_Library_Package): Take tasks into account.

From-SVN: r230878
2015-11-25 16:16:44 +01:00
Arnaud Charlet
e9c12b91f4 [multiple changes]
2015-11-25  Bob Duff  <duff@adacore.com>

	* sem_elab.adb (Check_Internal_Call_Continue): Code clean ups.

2015-11-25  Eric Botcazou  <ebotcazou@adacore.com>

	* sem_util.ads (Has_Compatible_Alignment): Add Layout_Done
	parameter.
	* sem_util.adb (Has_Compatible_Alignment): Likewise.
	(Has_Compatible_Alignment_Internal): Likewise.	Do not set the
	result to Unknown for packed types if Layout_Done is true.
	* checks.adb (Apply_Address_Clause_Check): Adjust call and
	pass False to Has_Compatible_Alignment.
	* sem_ch13.adb (Validate_Address_Clauses): Likewise but pass True.

From-SVN: r230877
2015-11-25 16:14:27 +01:00
Arnaud Charlet
3429710e69 [multiple changes]
2015-11-25  Vincent Celier  <celier@adacore.com>

	* gnatcmd.adb: When <target>-gnat is called with switch -P
	and a GPR tool is invoked, invoke the GPR tool with switch
	--target=<target>.

2015-11-25  Hristian Kirtchev  <kirtchev@adacore.com>

	* opt.adb, bcheck.adb: Minor reformatting.

From-SVN: r230876
2015-11-25 16:10:52 +01:00