Thomas Preud'homme
b5c7b957ae
[ARM] Implement __ARM_FEATURE_COPROC coprocessor intrinsic feature macro
...
2017-06-20 Prakhar Bahuguna <prakhar.bahuguna@arm.com>
gcc/
* config/arm/arm-c.c (arm_cpu_builtins): New block to define
__ARM_FEATURE_COPROC according to support.
gcc/testsuite/
* gcc.target/arm/acle/cdp.c: Add feature macro bitmap test.
* gcc.target/arm/acle/cdp2.c: Likewise.
* gcc.target/arm/acle/ldc.c: Likewise.
* gcc.target/arm/acle/ldc2.c: Likewise.
* gcc.target/arm/acle/ldc2l.c: Likewise.
* gcc.target/arm/acle/ldcl.c: Likewise.
* gcc.target/arm/acle/mcr.c: Likewise.
* gcc.target/arm/acle/mcr2.c: Likewise.
* gcc.target/arm/acle/mcrr.c: Likewise.
* gcc.target/arm/acle/mcrr2.c: Likewise.
* gcc.target/arm/acle/mrc.c: Likewise.
* gcc.target/arm/acle/mrc2.c: Likewise.
* gcc.target/arm/acle/mrrc.c: Likewise.
* gcc.target/arm/acle/mrrc2.c: Likewise.
* gcc.target/arm/acle/stc.c: Likewise.
* gcc.target/arm/acle/stc2.c: Likewise.
* gcc.target/arm/acle/stc2l.c: Likewise.
* gcc.target/arm/acle/stcl.c: Likewise.
From-SVN: r249399
2017-06-20 09:25:08 +00:00
Jakub Jelinek
0e36bb52a8
tree-chkp.c (chkp_get_hard_register_var_fake_base_address): Rewritten to avoid overflow for > 32-bit pointers.
...
* tree-chkp.c (chkp_get_hard_register_var_fake_base_address):
Rewritten to avoid overflow for > 32-bit pointers.
From-SVN: r249398
2017-06-20 09:22:31 +02:00
Jakub Jelinek
cb6794f631
re PR sanitizer/81125 (-fsanitize=undefined ICE)
...
PR sanitizer/81125
* ubsan.h (ubsan_encode_value): Workaround buggy clang++ parser
by removing enum keyword.
(ubsan_type_descriptor): Likewise. Formatting fix.
From-SVN: r249397
2017-06-20 09:10:14 +02:00
Jakub Jelinek
a1aa2599dd
re PR target/81121 (ICE: in extract_insn, at recog.c:2311)
...
PR target/81121
* config/i386/i386.md (TARGET_USE_VECTOR_CONVERTS float si->{sf,df}
splitter): Require TARGET_SSE2 in the condition.
* gcc.target/i386/pr81121.c: New test.
From-SVN: r249396
2017-06-20 09:04:27 +02:00
Michael Meissner
16122c22dc
re PR target/79799 (Improve vec_insert of float on Power9)
...
[gcc]
2017-06-20 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/79799
* config/rs6000/rs6000.c (rs6000_expand_vector_init): Add support
for doing vector set of SFmode on ISA 3.0.
* config/rs6000/vsx.md (vsx_set_v4sf_p9): Likewise.
(vsx_set_v4sf_p9_zero): Special case setting 0.0f to a V4SF
element.
(vsx_insert_extract_v4sf_p9): Add an optimization for inserting a
SFmode value into a V4SF variable that was extracted from another
V4SF variable without converting the element to double precision
and back to single precision vector format.
(vsx_insert_extract_v4sf_p9_2): Likewise.
[gcc/testsuite]
2017-06-20 Michael Meissner <meissner@linux.vnet.ibm.com>
PR target/79799
* gcc.target/powerpc/pr79799-1.c: New test.
* gcc.target/powerpc/pr79799-2.c: Likewise.
* gcc.target/powerpc/pr79799-3.c: Likewise.
* gcc.target/powerpc/pr79799-4.c: Likewise.
* gcc.target/powerpc/pr79799-5.c: Likewise.
From-SVN: r249395
2017-06-20 06:26:27 +00:00
GCC Administrator
62be3709cd
Daily bump.
...
From-SVN: r249394
2017-06-20 00:16:31 +00:00
Jason Merrill
66d052d5cb
PR c++/80562 - ICE with constexpr if.
...
* semantics.c (finish_if_stmt_cond): Call
instantiate_non_dependent_expr.
From-SVN: r249387
2017-06-19 16:55:27 -04:00
Jason Merrill
ecc5761533
PR c++/80829 - ICE with constexpr copy of base subobject.
...
* constexpr.c (clear_no_implicit_zero): New.
(cxx_eval_call_expression): Call it.
From-SVN: r249386
2017-06-19 16:55:21 -04:00
Nathan Sidwell
5ec046c036
re PR c++/81124 (internal compiler error: in operator*, at cp/cp-tree.h:726)
...
PR c++/81124
PR c++/79766
* name-lookup.c (set_decl_namespace): Don't follow using
directives and ignore using decls. Only check overly-explicit
scope after discovering decl.
* g++.dg/lookup/pr79766.C: New.
* g++.dg/lookup/pr81124.C: New.
* g++.dg/template/explicit6.C: Adjust.
* g++.old-deja/g++.other/decl5.C: Adjust.
From-SVN: r249385
2017-06-19 19:11:31 +00:00
Christophe Lyon
c72e002cc3
badalloc1.C: Remove code path for -DSTACK_SIZE.
...
* g++.old-deja/g++.eh/badalloc1.C: Remove code path for -DSTACK_SIZE.
2017-06-19 Christophe Lyon <christophe.lyon@linaro.org>
* g++.old-deja/g++.eh/badalloc1.C: Remove code path for
-DSTACK_SIZE.
From-SVN: r249384
2017-06-19 20:59:00 +02:00
Jason Merrill
4b691b139f
PR c++/81073 - constexpr and static var in statement-expression.
...
* typeck2.c (store_init_value): Always call
require_potential_constant_expression.
* pt.c (convert_nontype_argument): Likewise.
* constexpr.c (potential_constant_expression_1): Adjust message.
Use decl_maybe_constant_var_p instead of decl_constant_var_p.
* decl2.c (decl_maybe_constant_var_p): Consider initializer.
From-SVN: r249382
2017-06-19 14:20:10 -04:00
Jakub Jelinek
c9f8853f9e
tree-ssa-structalias.c (get_constraint_for_ptr_offset): Multiply in UWHI to avoid undefined overflow.
...
* tree-ssa-structalias.c (get_constraint_for_ptr_offset): Multiply
in UWHI to avoid undefined overflow.
From-SVN: r249381
2017-06-19 19:56:44 +02:00
Jakub Jelinek
9f8fafe847
re PR sanitizer/81125 (-fsanitize=undefined ICE)
...
PR sanitizer/81125
* ubsan.h (enum ubsan_encode_value_phase): New.
(ubsan_encode_value): Change second argument to
enum ubsan_encode_value_phase with default value of
UBSAN_ENCODE_VALUE_GENERIC.
* ubsan.c (ubsan_encode_value): Change second argument to
enum ubsan_encode_value_phase PHASE from bool IN_EXPAND_P,
adjust uses, for UBSAN_ENCODE_VALUE_GENERIC use just
create_tmp_var_raw instead of create_tmp_var and use a
TARGET_EXPR.
(ubsan_expand_bounds_ifn, ubsan_build_overflow_builtin,
instrument_bool_enum_load, ubsan_instrument_float_cast): Adjust
ubsan_encode_value callers.
* g++.dg/ubsan/pr81125.C: New test.
From-SVN: r249376
2017-06-19 17:28:42 +02:00
Jakub Jelinek
4301ae2263
re PR sanitizer/81111 (Cannot build libstdc++ with -fsanitize=undefined)
...
PR sanitizer/81111
* ubsan.c (ubsan_encode_value): If current_function_decl is NULL,
use create_tmp_var_raw instead of create_tmp_var, mark it addressable
just by setting TREE_ADDRESSABLE on the result and use a TARGET_EXPR.
* g++.dg/ubsan/pr81111.C: New test.
From-SVN: r249375
2017-06-19 17:27:40 +02:00
Richard Biener
21e4389f50
re PR tree-optimization/81118 (ice in remove_redundant_iv_tests)
...
2017-06-19 Richard Biener <rguenther@suse.de>
PR middle-end/81118
* tree-cfgcleanup.c (cleanup_tree_cfg_noloop): Clear niter
estimates if we changed anything.
* gcc.dg/torture/pr81118.c: New testcase.
From-SVN: r249374
2017-06-19 15:08:02 +00:00
Richard Biener
343ae898b1
re PR bootstrap/80887 (gnat bootstrap fails at s-regpat.o: raised STORAGE_ERROR : stack overflow or erroneous memory access)
...
2017-06-19 Richard Biener <rguenther@suse.de>
PR tree-optimization/80887
c/
* gimple-parser.c (c_parser_gimple_postfix_expression): Handle
negated _Literals to parse _Literal (int) -1.
* tree-ssa-sccvn.c (mprts_hook_cnt): New global.
(vn_lookup_simplify_result): Allow only mprts_hook_cnt succesful
simplified lookups, then reset mprts_hook.
(vn_nary_build_or_lookup_1): Set mprts_hook_cnt to 9 before
simplifying.
(try_to_simplify): Likewise.
* gcc.dg/tree-ssa/pr80887.c: New testcase.
From-SVN: r249373
2017-06-19 15:01:13 +00:00
Jakub Jelinek
9787269815
re PR ipa/81112 (internal compiler error: tree check: expected integer_cst, have range_expr in get_len, at tree.h:5321)
...
PR ipa/81112
* g++.dg/torture/pr81112.C: Add -Wno-psabi to dg-additional-options.
From-SVN: r249371
2017-06-19 16:35:18 +02:00
Nathan Sidwell
74e5699514
pt.c (coerce_template_parms): Fix indentation.
...
* pt.c (coerce_template_parms): Fix indentation.
(tsubst_decl): Remove repeated SET_DECL_RTL. Move VAR_P handling
in to single block.
From-SVN: r249370
2017-06-19 14:19:35 +00:00
Nathan Sidwell
c14c0b1568
re PR c++/81119 (-Wshadow warns on "typedef struct foo foo;")
...
PR c++/81119
* name-lookup.c (update_binding): Only warn about constructors
hidden by functions.
PR c++/81119
* g++.dg/warn/pr81119.C: New.
From-SVN: r249369
2017-06-19 14:13:58 +00:00
Martin Liska
a6e5212a77
Initialize live_switch_vars for SWITCH_BODY == STATEMENT_LIST (PR sanitizer/80879).
...
2017-06-19 Martin Liska <mliska@suse.cz>
PR sanitizer/80879
* gimplify.c (gimplify_switch_expr):
Initialize live_switch_vars for SWITCH_BODY == STATEMENT_LIST.
2017-06-19 Martin Liska <mliska@suse.cz>
PR sanitizer/80879
* gcc.dg/asan/use-after-scope-switch-4.c: New test.
From-SVN: r249368
2017-06-19 13:27:48 +00:00
Martin Liska
1a1e0df1cd
Enable -flto in all PGO stages for bootstrap-lto-{,noplugin}.mk.
...
2017-06-19 Martin Liska <mliska@suse.cz>
* bootstrap-lto-noplugin.mk: Enable -flto in all PGO stages.
* bootstrap-lto.mk: Likewise.
From-SVN: r249367
2017-06-19 13:20:20 +00:00
Martin Liska
0d053a49b6
Introduce 4-stages profiledbootstrap to get a better profile.
...
2017-06-19 Martin Liska <mliska@suse.cz>
* doc/install.texi: Document that PGO runs in 4 stages.
2017-06-19 Martin Liska <mliska@suse.cz>
* Makefile.def: Define 4 stages PGO bootstrap.
* Makefile.tpl: Define FLAGS.
* Makefile.in: Regenerate.
From-SVN: r249366
2017-06-19 13:19:56 +00:00
Martin Liska
871cc215f7
Fix multi-versioning issues (PR ipa/80732).
...
2017-06-19 Martin Liska <mliska@suse.cz>
PR ipa/80732
* attribs.c (make_dispatcher_decl): Do not append '.ifunc'
to dispatcher function name.
* multiple_target.c (replace_function_decl): New function.
(create_dispatcher_calls): Redirect both edges and references.
2017-06-19 Martin Liska <mliska@suse.cz>
PR ipa/80732
* gcc.target/i386/mvc5.c: Scan indirect_function.
* gcc.target/i386/mvc7.c: Likewise.
* gcc.target/i386/pr80732.c: New test.
From-SVN: r249365
2017-06-19 13:12:51 +00:00
Paolo Carlini
431abe69f1
re PR c++/66093 (g++ produces incorrect output on code with constexpr function initializing class with private fields)
...
2017-06-19 Paolo Carlini <paolo.carlini@oracle.com>
PR c++/66093
* g++.dg/cpp1y/constexpr-66093.C: New.
From-SVN: r249364
2017-06-19 10:15:57 +00:00
Rainer Orth
a06a538548
Update Solaris baselines for GCC 8.0 (PR libstdc++/81092)
...
* config/abi/post/i386-solaris2.10/baseline_symbols.txt: Regenerate.
* config/abi/post/i386-solaris2.10/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/i386-solaris2.11/baseline_symbols.txt: Likewise.
* config/abi/post/i386-solaris2.11/amd64/baseline_symbols.txt: Likewise.
* config/abi/post/sparc-solaris2.10/baseline_symbols.txt: Likewise.
* config/abi/post/sparc-solaris2.10/sparcv9/baseline_symbols.txt:
Likewise.
* config/abi/post/sparc-solaris2.11/baseline_symbols.txt: Likewise.
* config/abi/post/sparc-solaris2.11/sparcv9/baseline_symbols.txt:
Likewise.
From-SVN: r249362
2017-06-19 10:06:41 +00:00
Jan Hubicka
b2c2a7e468
Fix typo
...
From-SVN: r249361
2017-06-19 09:50:13 +00:00
Jan Hubicka
4e9a497f07
profile-count.c (profile_count::dump): Dump quality.
...
* profile-count.c (profile_count::dump): Dump quality.
(profile_count::differs_from_p): Update for unsigned val.
* profile-count.h (profile_count_quality): New enum.
(profile_count): Turn m_val to 62bit unsigned, add quality tracking.
From-SVN: r249360
2017-06-19 09:47:31 +00:00
Rainer Orth
fe1ae16592
Remove reference to Solaris 2.[56]
...
* g++.dg/other/unused1.C: Remove *-*-solaris2.[56]* from
dg-skip-if list.
From-SVN: r249359
2017-06-19 09:29:16 +00:00
Richard Biener
adb7eaa2ba
tree-ssa-loop-niter.h (estimate_numbers_of_iterations): Take struct function as arg.
...
2017-06-19 Richard Biener <rguenther@suse.de>
* tree-ssa-loop-niter.h (estimate_numbers_of_iterations): Take
struct function as arg.
(estimate_numbers_of_iterations): Export overload with loop arg.
(free_numbers_of_iterations_estimates_loop): Use an overload of
free_numbers_of_iterations_estimates instead.
* tree-cfg.c (remove_bb): Adjust.
* tree-cfgcleanup.c (remove_forwarder_block_with_phi): Likewise.
* tree-parloops.c (gen_parallel_loop): Likewise.
* tree-ssa-loop-ivcanon.c (canonicalize_induction_variables):
Likewise.
(tree_unroll_loops_completely): Likewise.
* tree-ssa-loop-niter.c (estimate_numbers_of_iterations_loop):
Use an overload instead and export.
(estimated_loop_iterations): Adjust.
(max_loop_iterations): Likewise.
(likely_max_loop_iterations): Likewise.
(estimate_numbers_of_iterations): Take struct function as arg
and adjust.
(loop_exits_before_overflow): Adjust.
(free_numbers_of_iterations_estimates_loop): Use an overload.
* tree-vect-loop.c (vect_analyze_loop_form): Adjust.
* tree-vectorizer.c (vect_free_loop_info_assumptions): Likewise.
From-SVN: r249358
2017-06-19 07:26:50 +00:00
Richard Biener
db9bbdeca4
re PR ipa/81112 (internal compiler error: tree check: expected integer_cst, have range_expr in get_len, at tree.h:5321)
...
2017-06-19 Richard Biener <rguenther@suse.de>
PR ipa/81112
* ipa-prop.c (find_constructor_constant_at_offset): Handle
RANGE_EXPR conservatively.
* g++.dg/torture/pr81112.C: New testcase.
From-SVN: r249357
2017-06-19 07:17:55 +00:00
GCC Administrator
245ad722ca
Daily bump.
...
From-SVN: r249356
2017-06-19 00:16:29 +00:00
Jan Hubicka
1815484627
* gcc.dg/lto/pr69866_0.c: This test needs alias.
...
From-SVN: r249352
2017-06-18 19:56:45 +00:00
Thomas Koenig
5dace4bf90
re PR fortran/52473 (CSHIFT slow - inline it?)
...
2017-06-18 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52473
* m4/cshift0.m4: For arrays that are contiguous up to
shift, implement blocked algorighm for cshift.
* generated/cshift0_c10.c: Regenerated.
* generated/cshift0_c16.c: Regenerated.
* generated/cshift0_c4.c: Regenerated.
* generated/cshift0_c8.c: Regenerated.
* generated/cshift0_i1.c: Regenerated.
* generated/cshift0_i16.c: Regenerated.
* generated/cshift0_i2.c: Regenerated.
* generated/cshift0_i4.c: Regenerated.
* generated/cshift0_i8.c: Regenerated.
* generated/cshift0_r10.c: Regenerated.
* generated/cshift0_r16.c: Regenerated.
* generated/cshift0_r4.c: Regenerated.
* generated/cshift0_r8.c: Regenerated.
2017-06-18 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/52473
* gfortran.dg/cshift_1.f90: New test.
From-SVN: r249350
2017-06-18 18:04:19 +00:00
H.J. Lu
82aa64e5af
x32: Update baseline_symbols.txt
...
PR libstdc++/81092
* config/abi/post/x86_64-linux-gnu/x32/baseline_symbols.txt: Updated.
From-SVN: r249349
2017-06-18 09:43:53 -07:00
Andreas Schwab
60a51885f2
re PR libstdc++/81092 (Missing symbols for new std::wstring constructors)
...
PR libstdc++/81092
* config/abi/post/m68k-linux-gnu/baseline_symbols.txt: Update.
From-SVN: r249348
2017-06-18 14:36:02 +00:00
Jason Merrill
20ef9df1cf
PR c++/60063 - -Wunused-local-typedefs and templates.
...
* decl2.c (is_late_template_attribute): Return false for "used".
From-SVN: r249347
2017-06-18 00:55:02 -04:00
Jason Merrill
5ebcc5477a
PR c++/70844 - -Wuseless-cast and inheriting constructor.
...
* method.c (forward_parm): Suppress warn_useless_cast.
From-SVN: r249344
2017-06-18 00:25:15 -04:00
GCC Administrator
28ab5c5ea9
Daily bump.
...
From-SVN: r249343
2017-06-18 00:16:40 +00:00
Rainer Orth
4f4b0ab85f
Get rid of dg-skip-if etc. default args
...
libstdc++-v3:
* testsuite: Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if
default args.
libgomp:
* testsuite/libgomp.fortran/strassen.f90: Remove dg-skip-if
default args.
* testsuite/libgomp.oacc-c-c++-common/vprop.c: Remove
dg-xfail-run-if default args.
gcc/testsuite:
Remove dg-skip-if, dg-xfail-if, dg-xfail-run-if default args.
From-SVN: r249339
2017-06-17 15:32:28 +00:00
Jonathan Wakely
14d8a91212
PR libstdc++/80893 don't run test for C++98 modes
...
PR libstdc++/80893
* testsuite/23_containers/vector/bool/80893.cc: Add { target c++11 }.
From-SVN: r249338
2017-06-17 13:11:47 +01:00
Carl Love
394a527f85
altivec.md (define_mode_attr VF_sxddp): Move to vsx.md.
...
gcc/ChangeLog:
2017-06-16 Carl Love <cel@us.ibm.com>
* config/rs6000/altivec.md (define_mode_attr VF_sxddp): Move to vsx.md.
* config/rs6000/vsx.md (define_mode_attr VF_sxddp
define_expand "floate<mode>",
define_expand "floato<mode>"): Add VF_sxddp definition, replace
undefined VFC_inst with VF_sxddp definition
From-SVN: r249337
2017-06-17 03:14:53 +00:00
Carl Love
b36a612c99
ChangeLog: Update for commit 249311 didn't get committed
...
2017-06-16 Carl Love <cel@us.ibm.com>
* gcc/ChangeLog: Update for commit 249311 didn't get committed
* gcc/testsuite/ChangeLog: Update for commit commit 249311 didn't
get committed.
From-SVN: r249336
2017-06-17 03:12:12 +00:00
Jason Merrill
e8cc8c92f0
fix ChangeLog
...
From-SVN: r249334
2017-06-16 22:48:52 -04:00
Jason Merrill
ccb7042db8
PR c++/81045 - Wrong type-dependence with auto return type.
...
* pt.c (type_dependent_expression_p): An undeduced auto outside the
template isn't dependent.
* call.c (build_over_call): Instantiate undeduced auto even in a
template.
From-SVN: r249323
2017-06-16 22:28:25 -04:00
Jason Merrill
d4b1d43cec
PR c++/80465 - ICE with generic lambda with noexcept-specifier.
...
* lambda.c (maybe_add_lambda_conv_op): Keep processing_template_decl
set longer for a generic lambda.
From-SVN: r249322
2017-06-16 22:28:18 -04:00
Jason Merrill
cc14602e32
PR c++/80614 - Wrong mangling for C++17 noexcept type
...
* mangle.c (write_type): Put the eh spec back on the function type.
From-SVN: r249321
2017-06-16 22:28:06 -04:00
Jason Merrill
3da557ec14
PR c++/81102 - Wrong error with partial specialization.
...
* pt.c (unify) [TEMPLATE_PARM_INDEX]: Strip reference when comparing
types. Do type deduction later.
From-SVN: r249320
2017-06-16 22:27:59 -04:00
Jason Merrill
157420b4bd
PR c++/80174 - ICE with partial specialization of member template.
...
PR c++/71747
* pt.c (get_partial_spec_bindings): Only coerce innermost args.
From-SVN: r249319
2017-06-16 22:27:52 -04:00
Jason Merrill
3eec359d0d
PR c++/80831 - ICE with -fsyntax-only.
...
* decl2.c (c_parse_final_cleanups): Use cgraph_node::get_create.
From-SVN: r249318
2017-06-16 22:27:45 -04:00
Jason Merrill
b126bff44d
PR c++/80639 - ICE with invalid PMF initialization.
...
PR c++/80043 - ICE with -fpermissive
* typeck.c (convert_for_assignment): Recurse when instantiate_type
returns without an error.
From-SVN: r249317
2017-06-16 22:27:33 -04:00