Jakub Jelinek
01275e1e5a
re PR libgomp/80822 (libgomp incorrect affinity when OMP_PLACES=threads)
...
PR libgomp/80822
* config/linux/affinity.c (gomp_affinity_init_level_1): New function.
(gomp_affinity_init_level): Use it. Always analyze the core and thread
sibling lists, depending on level just pick up what CPUs to put
together into a place vs. whether add multiple ordered places.
From-SVN: r248683
2017-05-30 14:05:30 +02:00
Richard Biener
ba7629e2dd
re PR tree-optimization/80901 (ICE on valid code at -Os and above on x86_64-linux-gnu: in verify_loop_structure, at cfgloop.c:1644)
...
2017-05-30 Richard Biener <rguenther@suse.de>
PR middle-end/80901
* cfgexpand.c (expand_gimple_cond): Match up loop fixup with
split_edge code.
* gcc.dg/torture/pr80901.c: New testcase.
From-SVN: r248681
2017-05-30 11:08:36 +00:00
Robin Dapp
4d3d23fb7d
Vector peeling cost model 6/6
...
gcc/ChangeLog:
2017-05-24 Robin Dapp <rdapp@linux.vnet.ibm.com>
* tree-vect-data-refs.c (vect_get_peeling_costs_all_drs):
Introduce unknown_misalignment parameter and remove vf.
(vect_peeling_hash_get_lowest_cost):
Pass unknown_misalignment parameter.
(vect_enhance_data_refs_alignment):
Fix unsupportable data ref treatment.
From-SVN: r248680
2017-05-30 11:02:14 +00:00
Robin Dapp
4bfb347c02
Vector peeling cost model 5/6
...
gcc/testsuite/ChangeLog:
2017-05-30 Robin Dapp <rdapp@linux.vnet.ibm.com>
* gcc.target/s390/vector/vec-nopeel-2.c: New test.
From-SVN: r248679
2017-05-30 11:00:50 +00:00
Robin Dapp
64812d33ac
Vector peeling cost model 4/6
...
gcc/ChangeLog:
2017-05-30 Robin Dapp <rdapp@linux.vnet.ibm.com>
* tree-vect-data-refs.c (vect_get_data_access_cost):
Workaround for SLP handling.
(vect_enhance_data_refs_alignment):
Compute costs for doing no peeling at all, compare to the best
peeling costs so far and avoid peeling if cheaper.
From-SVN: r248678
2017-05-30 10:59:07 +00:00
Robin Dapp
1e69cc8f27
Vector peeling cost model 3/6
...
gcc/ChangeLog:
2017-05-30 Robin Dapp <rdapp@linux.vnet.ibm.com>
* tree-vect-data-refs.c (vect_peeling_hash_choose_best_peeling):
Return peeling info and set costs to zero for unlimited cost
model.
(vect_enhance_data_refs_alignment): Also inspect all datarefs
with unknown misalignment. Compute and costs for unknown
misalignment, compare them to the costs for known misalignment
and choose the cheapest for peeling.
From-SVN: r248677
2017-05-30 10:57:53 +00:00
Robin Dapp
71595748a3
Vector peeling cost model 2/6
...
gcc/ChangeLog:
2017-05-30 Robin Dapp <rdapp@linux.vnet.ibm.com>
* tree-vect-data-refs.c (vect_update_misalignment_for_peel): Rename.
(vect_get_peeling_costs_all_drs): Create function.
(vect_peeling_hash_get_lowest_cost):
Use vect_get_peeling_costs_all_drs.
(vect_peeling_supportable): Create function.
(vect_enhance_data_refs_alignment): Use vect_peeling_supportable.
From-SVN: r248676
2017-05-30 10:56:15 +00:00
Robin Dapp
8d21ff9f66
Vector peeling cost model 1/6
...
gcc/ChangeLog:
2017-05-30 Robin Dapp <rdapp@linux.vnet.ibm.com>
* tree-vect-data-refs.c (vect_compute_data_ref_alignment): Create
DR_HAS_NEGATIVE_STEP.
(vect_update_misalignment_for_peel): Define DR_MISALIGNMENT.
(vect_enhance_data_refs_alignment): Use.
(vect_duplicate_ssa_name_ptr_info): Use.
* tree-vectorizer.h (dr_misalignment): Use.
(known_alignment_for_access_p): Use.
From-SVN: r248675
2017-05-30 10:53:25 +00:00
Jozef Lawrynowicz
b3125625df
re PR target/78838 (msp430 option -mcode-region=either, -ffunction-sections, and interrupt function attributes cause incorrect section to be created)
...
PR target/78838
gcc * config/msp430/msp430.c (gen_prefix): Return NULL when section name is
.lowtext.
(has_section_name): New function.
testsuite * gcc.target/msp430/interrupt_fn_placement.c: New test.
From-SVN: r248674
2017-05-30 10:49:29 +00:00
Martin Liska
b2deed1233
Fix parenthesis in auto-profile.c (PR other/80909).
...
2017-05-30 Martin Liska <mliska@suse.cz>
PR other/80909
* auto-profile.c (get_function_decl_from_block): Fix
parenthesis.
From-SVN: r248647
2017-05-30 08:02:03 +00:00
Richard Biener
892d61696c
re PR tree-optimization/80876 (ICE in verify_loop_structure, at cfgloop.c:1644 (error: loop 1's latch does not have an edge to its header))
...
2017-05-30 Richard Biener <rguenther@suse.de>
PR middle-end/80876
* cfgexpand.c (expand_gimple_cond): Fixup preserving loops again.
* gcc.dg/torture/pr80876.c: New testcase.
From-SVN: r248633
2017-05-30 07:49:00 +00:00
Martin Liska
63523736d0
Remove dump_file_info::dump_file_info and replace it with macro.
...
2017-05-30 Martin Liska <mliska@suse.cz>
* dumpfile.c: Use newly added macro DUMP_FILE_INFO.
* dumpfile.h (struct dump_file_info): Remove ctors.
From-SVN: r248617
2017-05-30 07:35:23 +00:00
Martin Liska
59075bc808
Compare predictor values with these defined in predict.def.
...
2017-05-30 Martin Liska <mliska@suse.cz>
* analyze_brprob.py: Add new argument to parse and modify
predict.def file.
* analyze_brprob_spec.py: Likewise.
From-SVN: r248600
2017-05-30 07:16:31 +00:00
Martin Liska
a582436140
Fix coding style.
...
2017-05-30 Martin Liska <mliska@suse.cz>
* predict.def: Fix GNU coding style.
From-SVN: r248599
2017-05-30 07:16:04 +00:00
GCC Administrator
2271dac6bf
Daily bump.
...
From-SVN: r248591
2017-05-30 00:16:17 +00:00
Max Filippov
eced9b483e
gcc: xtensa: fix unused parameter warning
...
2017-05-28 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.c (xtensa_initial_elimination_offset):
Mark 'to' argument with ATTRIBUTE_UNUSED.
From-SVN: r248587
2017-05-29 23:03:52 +00:00
Max Filippov
3904010d5b
gcc: xtensa: fix fprintf format specifiers
...
HOST_WIDE_INT may not be long as assumed in print_operand and
xtensa_emit_call. Use HOST_WIDE_INT_PRINT_DEC/HOST_WIDE_INT_PRINT_HEX
format strings instead of %ld/0x%lx. This fixes incorrect assembly code
generation by the compiler running on armhf host.
2017-05-29 Max Filippov <jcmvbkbc@gmail.com>
gcc/
* config/xtensa/xtensa.c (xtensa_emit_call): Use
HOST_WIDE_INT_PRINT_HEX instead of 0x%lx format string.
(print_operand): Use HOST_WIDE_INT_PRINT_DEC instead of %ld
format string.
From-SVN: r248586
2017-05-29 23:02:36 +00:00
Eric Botcazou
4dbe373cfc
install.texi (Options specification): Restore entry of --enable-sjlj-exceptions.
...
* doc/install.texi (Options specification): Restore entry of
--enable-sjlj-exceptions.
From-SVN: r248582
2017-05-29 21:08:02 +00:00
Alexandre Oliva
b904faa0e6
[libcc1] drop unused field from C++ lang_identifier
...
for gcc/cp/ChangeLog
* cp-tree.h (lang_identifier): Drop oracle_looked_up, unused.
From-SVN: r248580
2017-05-29 20:23:43 +00:00
Nathan Sidwell
3d7ff7286d
PR c++/80891 (#1,#5)
...
PR c++/80891 (#1,#5)
* cp-tree.h (lookup_maybe_add): Add DEDUPING argument.
* name-lookup.c (name_lookup): Add deduping field.
(name_lookup::preserve_state, name_lookup::restore_state): Deal
with deduping.
(name_lookup::add_overload): New.
(name_lookup::add_value, name_lookup::add_fns): Call add_overload.
(name_lookup::search_adl): Set deduping. Don't unmark here.
* pt.c (most_specialized_instantiation): Revert previous change,
Assert not given duplicates.
* tree.c (lookup_mark): Just mark the underlying decls.
(lookup_maybe_add): Dedup using marked decls.
PR c++/80891 (#5 )
* g++.dg/lookup/pr80891-5.C: New.
From-SVN: r248578
2017-05-29 19:45:42 +00:00
Jerry DeLisle
fd262197d7
re PR fortran/53029 (missed optimization in internal read (without implied-do-loop))
...
2017-05-29 Jerry DeLisle <jvdelisle@gcc.gnu.org>
PR libgfortran/53029
* list_read.c (list_formatted_read_scala): Set the err return
value to the common.flags error values.
* gfortran.dg/read_5.f90: New test.
From-SVN: r248577
2017-05-29 19:17:57 +00:00
Nathan Sidwell
a5cfa13ab9
PR c++/80891 ( #4 )
...
PR c++/80891 (#4 )
* ptree.c (cxx_print_xnode): Show internal OVERLOAD structure.
* tree.c (ovl_insert, ovl_iterator_remove_node): Fix copying
assert.
PR c++/80891 (#4 )
* g++.dg/lookup/pr80891-4.C: New.
From-SVN: r248576
2017-05-29 16:50:41 +00:00
Nathan Sidwell
3c9cca8848
Stat hack representation
...
Stat hack representation
* name-lookup.c (STAT_HACK_P, STAT_TYPE, STAT_DECL)
MAYBE_STAT_DECL, MAYBE_STAT_TYPE): New.
(stat_hack): New.
(find_namespace_binding): Replace with ...
(find_namespace_slot): ... this.
(find_namespace_value): New.
(name_lookup::search_namespace_only,
name_lookup::adl_namespace_only): Adjust.
(update_binding): Add SLOT parameter, adjust.
(check_local_shadow): Use find_namespace_value.
(set_local_extern_decl_linkage): Likewise.
(do_pushdecl): Adjust for namespace slot.
(push_local_binding): Assert not a namespace binding.
(check_for_out_of_scope_variable): Use find_namespace_value.
(set_identifier_type_value_with_scope): Likewise.
(get_namespace_binding): Likewise.
(set_namespace_binding): Delete.
(set_global_binding): Directly update the binding.
(finish_namespace_using_decl): Likewise.
(lookup_type_scope_1): Use find_namespace_slot and update.
(do_push_nested_namespace): Use find_namespace_value.
From-SVN: r248574
2017-05-29 15:01:20 +00:00
Nathan Sidwell
e514ab0c32
PR c++/80891 ( #1 )
...
PR c++/80891 (#1 )
* pt.c (most_specialized_instantiation): Cope with duplicate
instantiations.
PR c++/80891 (#1 )
* g++.dg/lookup/pr80891-1.C: New.
From-SVN: r248573
2017-05-29 14:08:04 +00:00
Nathan Sidwell
58dec01056
PR c++/80891 ( #3 )
...
PR c++/80891 (#3 )
* cp-tree.h (build_min_nt_call_vec): Declare.
* decl.c (build_offset_ref_call_from_tree): Call it.
* parser.c (cp_parser_postfix_expression): Likewise.
* pt.c (tsubst_copy_and_build): Likewise.
* semantics.c (finish_call_expr): Likewise.
* tree.c (build_min_nt_loc): Keep unresolved lookups.
(build_min): Likewise.
(build_min_non_dep): Likewise.
(build_min_non_dep_call_vec): Likewise.
(build_min_nt_call_vec): New.
PR c++/80891 (#3 )
* g++.dg/lookup/pr80891-3.C: New.
From-SVN: r248571
2017-05-29 12:52:58 +00:00
Nathan Sidwell
724e517a7d
PR c++/80891 ( #2 )
...
PR c++/80891 (#2 )
* tree.c (ovl_copy): Adjust assert, copy OVL_LOOKUP.
(ovl_used): New.
(lookup_keep): Call it.
PR c++/80891 (#2 )
* g++.dg/lookup/pr80891-2.C: New.
From-SVN: r248570
2017-05-29 11:51:13 +00:00
Tom de Vries
0a71c876a1
check_GNU_style_lib.py: Fix trailing whitespace check
...
2017-05-29 Tom de Vries <tom@codesourcery.com>
* check_GNU_style_lib.py (TrailingWhitespaceCheck.check): Assert no
trailing eol.
(TrailingWhitespaceTest): New unit test.
(check_GNU_style_file): Remove eol before checking.
From-SVN: r248556
2017-05-29 07:31:11 +00:00
Tom de Vries
75017bb975
check_GNU_style.py: Read stdin if file argument is '-'
...
2017-05-29 Tom de Vries <tom@codesourcery.com>
* check_GNU_style_lib.py (check_GNU_style_file): Treat file argument as
file handle. Add and handle file_encoding argument.
* check_GNU_style.py (main): Handle '-' file argument. Call
check_GNU_style_file with file handle as argument.
From-SVN: r248555
2017-05-29 07:31:02 +00:00
Tom de Vries
76baf5ca9d
check_GNU_style_lib.py: Suggest to install all missing pip3 packages at once
...
Instead of:
...
$ ./contrib/check_GNU_style.py
termcolor module is missing (run: pip3 install termcolor)
$ pip3 install termcolor
$ ./contrib/check_GNU_style.py
unidiff module is missing (run: pip3 install unidiff)
$ pip3 install unidiff
$
...
Do:
...
$ ./contrib/check_GNU_style.py
termcolor and unidiff modules are missing (run: pip3 install termcolor unidiff)
$ pip3 install termcolor unidiff
$
...
2017-05-29 Tom de Vries <tom@codesourcery.com>
* check_GNU_style_lib.py: Use import_pip3 to import pip3 packages.
(import_pip3): New function.
From-SVN: r248554
2017-05-29 07:30:47 +00:00
Thomas Koenig
bbe3927b62
re PR fortran/37131 (inline matmul for small matrix sizes)
...
2017-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* frontend-passes.c (check_conjg_transpose_variable):
Add prototype.
(has_dimen_vector_ref): Likewise
(matmul_temp_args): New function. Add prototype.
(optimize_namespace): Call matmul_temp_args.
2017-05-29 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/37131
* gfortran.dg/promotion_2.f90: Add -finline-matmul-limit=0 to
flags.
* gfortran.dg/transpose_optimization_1.f90: Likewise.
* gfortran.dg/inline_matmul_17.f90: New test.
From-SVN: r248553
2017-05-29 06:03:23 +00:00
GCC Administrator
3779a0f8b2
Daily bump.
...
From-SVN: r248552
2017-05-29 00:16:23 +00:00
Tim Shen
a8127c0cca
re PR c++/80737 (variant<any> as class member resulting to compile errors)
...
PR libstdc++/80737
* include/std/variant(variant::variant): SFINAE on is_same first.
* testsuite/20_util/variant/any.cc: test case.
From-SVN: r248548
2017-05-28 21:27:30 +00:00
Rainer Orth
9698e1bb33
Fix libgfortran FMA3/FMA4 tests
...
* acinclude.m4 (LIBGFOR_CHECK_FMA3): Use test from
check_effective_target_fma in gcc.target/i386/i386.exp.
(LIBGFOR_CHECK_FMA4): Use test from check_effective_target_fma4.
* configure: Regenerate.
From-SVN: r248547
2017-05-28 19:12:45 +00:00
Thomas Koenig
8364e6aca3
frontend-passes.c (matmul_lhs_realloc): Correct allocation size for case A1B2.
...
2017-05-28 Thomas Koenig <tkoenig@gcc.gnu.org>
* frontend-passes.c (matmul_lhs_realloc): Correct
allocation size for case A1B2.
2017-05-28 Thomas Koenig <tkoenig@gcc.gnu.org>
* gfortran.dg/matmul_bounds_12.f90: New test.
From-SVN: r248546
2017-05-28 14:02:57 +00:00
GCC Administrator
238108d24d
Daily bump.
...
From-SVN: r248544
2017-05-28 00:16:31 +00:00
Michael Eager
717c3cc84b
Revert:
...
2016-01-21 Ajit Agarwal <ajitkum@xilinx.com>
See https://gcc.gnu.org/ml/gcc/2017-05/msg00221.html .
* config/microblaze/microblaze.h
(FIXED_REGISTERS): Update in macro.
(CALL_USED_REGISTERS): Update in macro.
From-SVN: r248540
2017-05-27 18:29:40 +00:00
Iain Buclaw
dc64856fdf
d-demangle.c (dlang_identifier): Prefix mangled init symbols with `initializer for'.
...
libiberty/ChangeLog:
* d-demangle.c (dlang_identifier): Prefix mangled init symbols
with `initializer for'.
* testsuite/demangle-expected: Update tests.
From-SVN: r248539
2017-05-27 11:30:22 +00:00
Iain Buclaw
0e3712f6aa
d-demangle.c (dlang_call_convention_p): Move declaration before dlang_type.
...
libiberty/ChangeLog:
* d-demangle.c (dlang_call_convention_p): Move declaration
before dlang_type.
(dlang_type): Handle function types.
* testsuite/d-demangle-expected: Add tests.
From-SVN: r248538
2017-05-27 11:29:52 +00:00
Iain Buclaw
1a122a71ee
d-demangle.c (dlang_parse_real): Remove stack buffer, write the demangled hexadecimal directly to string.
...
libiberty/ChangeLog:
* d-demangle.c (dlang_parse_real): Remove stack buffer, write
the demangled hexadecimal directly to string.
* testsuite/d-demangle-expected: Add tests.
From-SVN: r248537
2017-05-27 11:29:38 +00:00
Bernd Schmidt
b9396a495c
MAINTAINERS: Update my email address, and remove myself as maintainer in some areas.
...
* MAINTAINERS: Update my email address, and remove myself as
maintainer in some areas.
From-SVN: r248536
2017-05-27 10:50:27 +00:00
Francois-Xavier Coudert
30329066ed
* doc/install.texi: Add links to macOS binary distributions.
...
From-SVN: r248535
2017-05-27 08:40:18 +00:00
Jakub Jelinek
b28fea5558
Small ChangeLog tweak.
...
From-SVN: r248534
2017-05-27 09:48:54 +02:00
Jakub Jelinek
56a35ac922
re PR bootstrap/80887 (gnat bootstrap fails at s-regpat.o: raised STORAGE_ERROR : stack overflow or erroneous memory access)
...
PR bootstrap/80887
2017-05-25 Marc Glisse <marc.glisse@inria.fr>
* match.pd ((A +- CST1) +- CST2): Allow some conversions.
* gcc.dg/tree-ssa/addadd.c: Xfail all scan-tree-dump*.
From-SVN: r248533
2017-05-27 09:46:12 +02:00
GCC Administrator
a35ae59b92
Daily bump.
...
From-SVN: r248532
2017-05-27 00:16:32 +00:00
Ian Lance Taylor
56efdb4596
compiler: identify array index expressions in lvalue context
...
Update the Mark_lvalue_varexprs visitor class (used in
Assignment_statement::do_get_backend) to identify
Array_index_expression's that appear on the left hand side of
assignments, then pass this context info on when invoking
Array_type::get_value_pointer.
Reviewed-on: https://go-review.googlesource.com/44170
From-SVN: r248528
2017-05-26 21:48:49 +00:00
Richard Henderson
7d66e2655f
re PR libgcc/80037 (Bad .eh_frame data in crtend.o)
...
PR libgcc/80037
* config/alpha/t-alpha (CRTSTUFF_T_CFLAGS): New.
From-SVN: r248522
2017-05-26 11:45:59 -07:00
Nathan Sidwell
945bf9e13f
Implement DR2061
...
gcc/
Implement DR2061
* name-lookup.c (push_inline_namespaces): New.
(push_namespace): Look inside inline namespaces.
testsuite/
* g++.dg/cpp0x/dr2061.C: New.
* g++.dg/parse/namespace-alias-1.C: Add more test.
From-SVN: r248521
2017-05-26 18:13:53 +00:00
Nathan Sidwell
3c9feefc8d
Inline and using namespace representation change.
...
gcc/cp/
Inline and using namespace representation change.
* cp-tree.h (struct lang_decl_ns): Delete ns_using. Add usings,
inlinees as vector.
(DECL_NAMESPACE_USING): Adjust.
(DECL_NAMESPACE_INLINEES): New.
* name-lookup.h (struct cp_binding_level): Change usings
representation.
* name-lookup.c (name_lookup::do_queue_usings)
name_lookup::queue_usings): Adjust.
(name_lookup::search_namespace, name_lookup::search_usings)
name_lookup::queue_namespace): Adjust.
(name_lookup::adl_namespace_only): Adjust.
(add_using_namespace, push_namespace): Push onto vector.
(pop_namespace): Add timing logic.
libcc1/
* libcp1plugin.cc (plugin_make_namespace_inline): Push onto linees.
((--This line, and those below, will be ignored--
M gcc/cp/ChangeLog
M gcc/cp/cp-tree.h
M gcc/cp/name-lookup.c
M gcc/cp/name-lookup.h
M libcc1/libcp1plugin.cc
M libcc1/ChangeLog
From-SVN: r248520
2017-05-26 17:19:46 +00:00
Thomas Koenig
5596d26a5c
re PR fortran/80889 (Bootstrap broken on all targets due to rev 248472)
...
2017-05-26 Thomas Koenig <tkoenig@gcc.gnu.org>
PR boostrap/80889
* acinclude.m4: Also set HAVE_AVX128 on the false
branch of LIBGFOR_CHECK_AVX128.
* configure: Regenerated.
From-SVN: r248519
2017-05-26 17:16:35 +00:00
Nathan Sidwell
e1cad93084
call.c (build_operator_new_call): Do namelookup and ADL here.
...
gcc/cp/
* call.c (build_operator_new_call): Do namelookup and ADL here.
(build_new_op_1): Likewise.
* name-lookup.h (lookup_function_nonclass): Delete declaration.
(do_using_directive): Likewise.
* name-lookup.c (set_namespace_binding, push_local_binding): Don't
declare early.
(struct scope_binding): Delete.
(EMPTY_SCOPE_BINDING): Delete.
(set_decl_namespace): Use OVL_P.
(finish_local_using_decl): Lose unnecesary checks.
(lookup_function_nonclass): Delete.
(cp_emit_debug_info_for_using): Use MAYBE_BASELINK_P.
libcc1/
* libcp1plugin.cc (plugin_add_using_namespace): Call
finish_namespace_using_directive.
From-SVN: r248518
2017-05-26 16:34:40 +00:00