Age | Commit message (Collapse) | Author | Files | Lines |
|
* backtrace.c (backtrace_full): When testing whether we can
allocate memory, call mmap directly, and munmap the memory.
Fixes https://github.com/ianlancetaylor/libbacktrace/issues/13 .
From-SVN: r259434
|
|
config/i386/i386.c:13810 with -Og -fgcse)
PR middle-end/85414
* rtlhooks.c (gen_lowpart_if_possible): Don't call gen_lowpart_SUBREG
on a SUBREG.
* gcc.dg/pr85414.c: New test.
From-SVN: r259433
|
|
2018-04-17 Martin Jambor <mjambor@suse.cz>
PR ipa/85421
* ipa-cp.c (create_specialized_node): Call
expand_all_artificial_thunks if necessary.
testsuite/
* g++.dg/ipa/pr85421.C: New test.
From-SVN: r259432
|
|
2018-04-17 Martin Liska <mliska@suse.cz>
PR lto/85405
* ipa-devirt.c (odr_types_equivalent_p): Remove trailing
in message, remote space in between '_G' and '('.
2018-04-17 Martin Liska <mliska@suse.cz>
PR lto/85405
* g++.dg/lto/pr85405b_0.C: New test.
* g++.dg/lto/pr85405b_1.C: New test.
From-SVN: r259431
|
|
`vpbroadcastb' with -mavx512bw -masm=intel)
PR target/85281
* config/i386/sse.md (reduces<mode><mask_scalar_name>,
avx512f_vmcmp<mode>3<round_saeonly_name>,
avx512f_vmcmp<mode>3_mask<round_saeonly_name>,
avx512f_sgetexp<mode><mask_scalar_name><round_saeonly_scalar_name>,
avx512f_rndscale<mode><round_saeonly_name>,
avx512dq_ranges<mode><mask_scalar_name><round_saeonly_scalar_name>,
avx512f_vgetmant<mode><mask_scalar_name><round_saeonly_scalar_name>):
Use %<iptr>2 instead of %2 for -masm=intel.
(avx512f_vcvtss2usi<round_name>, avx512f_vcvtss2usiq<round_name>,
avx512f_vcvttss2usi<round_saeonly_name>,
avx512f_vcvttss2usiq<round_saeonly_name>): Use %k1 instead of %1 for
-masm=intel.
(avx512f_vcvtsd2usi<round_name>, avx512f_vcvtsd2usiq<round_name>,
avx512f_vcvttsd2usi<round_saeonly_name>,
avx512f_vcvttsd2usiq<round_saeonly_name>, ufloatv2siv2df2<mask_name>):
Use %q1 instead of %1 for -masm=intel.
(avx512f_sfixupimm<mode><sd_maskz_name><round_saeonly_name>,
avx512f_sfixupimm<mode>_mask<round_saeonly_name>): Use %<iptr>3 instead
of %3 for -masm=intel.
(sse2_shufpd_v2df_mask): Fix a typo, change %{6%} to %{%6%} for
-masm=intel.
(*avx512vl_<code>v2div2qi2_store): Use %w0 instead of %0 for
-masm=intel.
(*avx512vl_<code><mode>v4qi2_store): Use %k0 instead of %0 for
-masm=intel.
(avx512vl_<code><mode>v4qi2_mask_store): Use a single pattern with
%k0 and %1 for -masm=intel rather than two patterns, one with %0 and
%g1.
(*avx512vl_<code><mode>v8qi2_store): Use %q0 instead of %0 for
-masm=intel.
(avx512vl_<code><mode>v8qi2_mask_store): Use a single pattern with
%q0 and %1 for -masm=intel rather than two patterns, one with %0 and
%g1 and one with %0 and %1.
(avx512er_vmrcp28<mode><round_saeonly_name>,
avx512er_vmrsqrt28<mode><round_saeonly_name>): Use %<iptr>1 instead of
%1 for -masm=intel.
(avx5124fmaddps_4fmaddps_mask, avx5124fmaddps_4fmaddss_mask,
avx5124fmaddps_4fnmaddps_mask, avx5124fmaddps_4fnmaddss_mask,
avx5124vnniw_vp4dpwssd_mask, avx5124vnniw_vp4dpwssds_mask): Swap order
of %0 and %{%4%} for -masm=intel.
(avx5124fmaddps_4fmaddps_maskz, avx5124fmaddps_4fmaddss_maskz,
avx5124fmaddps_4fnmaddps_maskz, avx5124fmaddps_4fnmaddss_maskz,
avx5124vnniw_vp4dpwssd_maskz, avx5124vnniw_vp4dpwssds_maskz): Swap
order of %0 and %{%5%}%{z%} for -masm=intel.
From-SVN: r259430
|
|
2018-04-17 Jan Hubicka <jh@suse.cz>
PR lto/85405
* ipa-devirt.c (odr_types_equivalent_p): Handle bit fields.
2018-04-17 Martin Liska <mliska@suse.cz>
PR lto/85405
* g++.dg/lto/pr85405_0.C: New test.
* g++.dg/lto/pr85405_1.C: New test.
From-SVN: r259429
|
|
2018-04-17 Martin Liska <mliska@suse.cz>
PR ipa/85329
* multiple_target.c (create_dispatcher_calls): Set apostrophes
for target_clone error message. Make default implementation
clone to be a local declaration.
(separate_attrs): Add new argument and check for an empty
string.
(expand_target_clones): Handle it.
(ipa_target_clone): Make redirection just for target_clones
functions.
2018-04-17 Martin Liska <mliska@suse.cz>
PR ipa/85329
* g++.dg/ext/pr85329-2.C: New test.
* g++.dg/ext/pr85329.C: New test.
* gcc.target/i386/mvc12.c: New test.
From-SVN: r259428
|
|
From-SVN: r259426
|
|
Types defined within a __builtin_offsetof argument don't always get
properly recorded as members of their context types, so if they're
anonymous, we may fail to assign them an anon type index for mangling
and ICE.
We shouldn't allow types to be introduced in __builtin_offsetof, I
think, and Jason says the std committee agrees, so I've arranged for
us to reject them.
Even then, we still parse the definitions and attempt to assign
mangled names to its member functions, so the ICE remains. Since
we've already reported an error, we might as well complete the name
assignment with an arbitrary index, thus avoiding the ICE.
We used to have a test that expected to be able to define types in
__builtin_offsetof; this patch removes that specific test.
for gcc/cp/ChangeLog
PR c++/85039
* parser.c (cp_parser_builtin_offset): Reject type definitions.
* mangle.c (nested_anon_class_index): Avoid crash returning -1
if we've seen errors.
for gcc/testsuite/ChangeLog
PR c++/85039
* g++.dg/pr85039-1.C: New.
* g++.dg/pr85039-2.C: New.
* g++.dg/parse/semicolon3.C: Remove test_offsetof.
From-SVN: r259423
|
|
starting with r248678)
[gcc/testsuite]
2018-04-16 Bill Schmidt <wschmidt@linux.ibm.com>
PR target/85080
* gcc.dg/vect/costmodel/ppc/costmodel-pr37194.c: Skip dump checks
if the target supports efficient unaligned storage accesses.
From-SVN: r259407
|
|
2018-04-16 Cesar Philippidis <cesar@codesourcery.com>
Tom de Vries <tom@codesourcery.com>
PR middle-end/84955
* omp-expand.c (expand_oacc_for): Add dummy false branch for
tiled basic blocks without omp continue statements.
* testsuite/libgomp.oacc-c-c++-common/pr84955.c: New test.
* testsuite/libgomp.oacc-fortran/pr84955.f90: New test.
Co-Authored-By: Tom de Vries <tom@codesourcery.com>
From-SVN: r259406
|
|
2018-04-16 Aaron Sawdey <acsawdey@linux.ibm.com>
PR target/83660
* config/rs6000/rs6000-c.c (altivec_resolve_overloaded_builtin): Mark
vec_extract expression as having side effects to make sure it gets
a cleanup point.
2018-04-16 Aaron Sawdey <acsawdey@linux.ibm.com>
PR target/83660
* gcc.target/powerpc/pr83660.C: New test.
From-SVN: r259403
|
|
Since CET is applied to the whole program, it is correct to disallow
-fcf-protection=full without -mcet. But compiler shouldn't crash.
gcc/
PR target/85403
* config/i386/i386.c (get_builtin_code_for_version): Check
error_mark_node.
gcc/testsuite/
PR target/85403
* gcc.target/i386/pr85403.c: New test.
---
gcc/config/i386/i386.c | 2 ++
gcc/testsuite/g++.dg/ext/mv1.C | 2 +-
gcc/testsuite/g++.dg/ext/mv14.C | 2 +-
gcc/testsuite/g++.dg/ext/mv15.C | 2 +-
gcc/testsuite/g++.dg/ext/mv16.C | 2 +-
gcc/testsuite/g++.dg/ext/mv17.C | 2 +-
gcc/testsuite/g++.dg/ext/mv18.C | 2 +-
gcc/testsuite/g++.dg/ext/mv19.C | 2 +-
gcc/testsuite/g++.dg/ext/mv20.C | 2 +-
gcc/testsuite/g++.dg/ext/mv21.C | 2 +-
gcc/testsuite/g++.dg/ext/mv22.C | 2 +-
gcc/testsuite/g++.dg/ext/mv23.C | 2 +-
gcc/testsuite/g++.dg/ext/mv26.C | 1 +
gcc/testsuite/g++.dg/ext/mv6.C | 2 +-
gcc/testsuite/g++.dg/ext/mvc1.C | 1 +
gcc/testsuite/gcc.target/i386/cet-notrack-icf-1.c | 2 +-
gcc/testsuite/gcc.target/i386/cet-notrack-icf-3.c | 2 +-
gcc/testsuite/gcc.target/i386/cet-property-2.c | 2 +-
gcc/testsuite/gcc.target/i386/mvc1.c | 1 +
gcc/testsuite/gcc.target/i386/mvc10.c | 1 +
gcc/testsuite/gcc.target/i386/mvc11.c | 2 +-
gcc/testsuite/gcc.target/i386/mvc6.c | 2 +-
gcc/testsuite/gcc.target/i386/mvc7.c | 1 +
gcc/testsuite/gcc.target/i386/mvc8.c | 2 +-
gcc/testsuite/gcc.target/i386/mvc9.c | 2 +-
gcc/testsuite/gcc.target/i386/pr81213.c | 1 +
gcc/testsuite/gcc.target/i386/pr81214.c | 1 +
gcc/testsuite/gcc.target/i386/pr85403.c | 10 ++++++++++
gcc/testsuite/gcc.target/i386/sse-26.c | 2 +-
29 files changed, 39 insertions(+), 20 deletions(-)
create mode 100644 gcc/testsuite/gcc.target/i386/pr85403.c
diff --git a/gcc/config/i386/i386.c b/gcc/config/i386/i386.c
index 6fa5b0add02..8a73fc0d316 100644
--- a/gcc/config/i386/i386.c
+++ b/gcc/config/i386/i386.c
@@ -32344,6 +32344,8 @@ get_builtin_code_for_version (tree decl, tree *predicate_list)
&global_options_set);
gcc_assert (target_node);
+ if (target_node == error_mark_node)
+ return 0;
new_target = TREE_TARGET_OPTION (target_node);
gcc_assert (new_target);
diff --git a/gcc/testsuite/gcc.target/i386/pr85403.c b/gcc/testsuite/gcc.target/i386/pr85403.c
new file mode 100644
index 00000000000..f4fb12dd4e2
--- /dev/null
+++ b/gcc/testsuite/gcc.target/i386/pr85403.c
@@ -0,0 +1,10 @@
+/* { dg-do compile } */
+/* { dg-options "-fcf-protection -mcet" } */
+/* { dg-require-ifunc "" } */
+
+__attribute__((target_clones("avx","arch=slm","arch=core-avx2","default")))
+int
+foo ()
+{
+ return -2;
+} /* { dg-error "requires Intel CET support" } */
From-SVN: r259400
|
|
gcc/
PR target/84331
* gcc/config.gcc: Support "skylake".
* gcc/config/i386/i386-c.c (ix86_target_macros_internal): Handle
PROCESSOR_SKYLAKE.
* gcc/config/i386/i386.c (m_SKYLAKE): Define.
(processor_target_table): Add "skylake".
(ix86_option_override_internal): Add "skylake".
(get_builtin_code_for_version): Handle PROCESSOR_SKYLAKE,
PROCESSOR_CANNONLAKE.
(get_builtin_code_for_version): Fix priority for
PROCESSOR_ICELAKE_CLIENT, PROCESSOR_ICELAKE_SERVER,
PROCESSOR_SKYLAKE-AVX512.
* gcc/config/i386/i386.h (processor_costs): Define TARGET_SKYLAKE.
(processor_type): Add PROCESSOR_SKYLAKE.
gcc/testsuite/
PR target/84331
* gcc/testsuite/gcc.target/i386/funcspec-56.inc: Test arch=skylake.
From-SVN: r259399
|
|
shift exponent 32 is too large for 32-bit type 'int')
PR target/84945
* config/i386/cpuinfo.c (set_feature): Wrap into do while (0) to avoid
-Wdangling-else warnings. Mask shift counts to avoid
-Wshift-count-negative and -Wshift-count-overflow false positives.
From-SVN: r259398
|
|
2018-04-16 Paolo Carlini <paolo.carlini@oracle.com>
Jason Merrill <jason@redhat.com>
PR c++/85112
* convert.c (convert_to_integer_1): Use direct recursion for
enumeral types and types with a precision less than the number
of bits in their mode.
/testsuite
2018-04-16 Paolo Carlini <paolo.carlini@oracle.com>
Jason Merrill <jason@redhat.com>
PR c++/85112
* g++.dg/cpp0x/pr85112.C: New.
Co-Authored-By: Jason Merrill <jason@redhat.com>
From-SVN: r259397
|
|
The <testsuite_fs.h> header defaults to using std::filesystem in C++17
mode. The Filesystem TS tests need to define the macro that causes
std::experimental::filesystem to be used instead.
* testsuite/experimental/filesystem/file_status/1.cc: Add
-DUSE_FILESYSTEM_TS to dg-options.
* testsuite/experimental/filesystem/iterators/directory_iterator.cc:
Likewise.
* testsuite/experimental/filesystem/iterators/pop.cc: Likewise.
* testsuite/experimental/filesystem/iterators/
recursive_directory_iterator.cc: Likewise.
* testsuite/experimental/filesystem/operations/absolute.cc: Likewise.
* testsuite/experimental/filesystem/operations/canonical.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy.cc: Likewise.
* testsuite/experimental/filesystem/operations/copy_file.cc: Likewise.
* testsuite/experimental/filesystem/operations/create_directories.cc:
Likewise.
* testsuite/experimental/filesystem/operations/create_directory.cc:
Likewise.
* testsuite/experimental/filesystem/operations/create_symlink.cc:
Likewise.
* testsuite/experimental/filesystem/operations/current_path.cc:
Likewise.
* testsuite/experimental/filesystem/operations/equivalent.cc: Likewise.
* testsuite/experimental/filesystem/operations/exists.cc: Likewise.
* testsuite/experimental/filesystem/operations/file_size.cc: Likewise.
* testsuite/experimental/filesystem/operations/is_empty.cc: Likewise.
* testsuite/experimental/filesystem/operations/last_write_time.cc:
Likewise.
* testsuite/experimental/filesystem/operations/permissions.cc:
Likewise.
* testsuite/experimental/filesystem/operations/read_symlink.cc:
Likewise.
* testsuite/experimental/filesystem/operations/remove.cc: Likewise.
* testsuite/experimental/filesystem/operations/remove_all.cc: Likewise.
* testsuite/experimental/filesystem/operations/status.cc: Likewise.
* testsuite/experimental/filesystem/operations/temp_directory_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/append/path.cc: Likewise.
* testsuite/experimental/filesystem/path/assign/assign.cc: Likewise.
* testsuite/experimental/filesystem/path/assign/copy.cc: Likewise.
* testsuite/experimental/filesystem/path/compare/compare.cc: Likewise.
* testsuite/experimental/filesystem/path/compare/path.cc: Likewise.
* testsuite/experimental/filesystem/path/compare/strings.cc: Likewise.
* testsuite/experimental/filesystem/path/concat/path.cc: Likewise.
* testsuite/experimental/filesystem/path/concat/strings.cc: Likewise.
* testsuite/experimental/filesystem/path/construct/copy.cc: Likewise.
* testsuite/experimental/filesystem/path/construct/default.cc:
Likewise.
* testsuite/experimental/filesystem/path/construct/locale.cc: Likewise.
* testsuite/experimental/filesystem/path/construct/range.cc: Likewise.
* testsuite/experimental/filesystem/path/construct/string_view.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/extension.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/filename.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/parent_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/relative_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/root_directory.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/root_name.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/root_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/decompose/stem.cc: Likewise.
* testsuite/experimental/filesystem/path/generic/generic_string.cc:
Likewise.
* testsuite/experimental/filesystem/path/itr/traversal.cc: Likewise.
* testsuite/experimental/filesystem/path/modifiers/clear.cc: Likewise.
* testsuite/experimental/filesystem/path/modifiers/make_preferred.cc:
Likewise.
* testsuite/experimental/filesystem/path/modifiers/remove_filename.cc:
Likewise.
* testsuite/experimental/filesystem/path/modifiers/replace_extension.cc:
Likewise.
* testsuite/experimental/filesystem/path/modifiers/replace_filename.cc:
Likewise.
* testsuite/experimental/filesystem/path/modifiers/swap.cc: Likewise.
* testsuite/experimental/filesystem/path/native/string.cc: Likewise.
* testsuite/experimental/filesystem/path/nonmember/hash_value.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/empty.cc: Likewise.
* testsuite/experimental/filesystem/path/query/has_extension.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_filename.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_parent_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_relative_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_root_directory.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_root_name.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_root_path.cc:
Likewise.
* testsuite/experimental/filesystem/path/query/has_stem.cc: Likewise.
* testsuite/experimental/filesystem/path/query/is_relative.cc:
Likewise.
From-SVN: r259396
|
|
gcc/
PR target/84413
* config/i386/x86-tune.def (X86_TUNE_SSE_UNALIGNED_LOAD_OPTIMAL,
X86_TUNE_SSE_UNALIGNED_STORE_OPTIMAL): Add m_SKYLAKE_AVX512
From-SVN: r259395
|
|
`--enable-languages=c`)
[gcc/testsuite]
2018-04-15 Bill Schmidt <wschmidt@linux.ibm.com>
PR testsuite/85326
* g++.dg/ext/undef-bool-1.C: New file.
* gcc.target/powerpc/powerpc.exp: Remove .C support.
* gcc.target/powerpc/undef-bool-1.C: Remove file.
From-SVN: r259393
|
|
From-SVN: r259392
|
|
From-SVN: r259389
|
|
The -mno-direct-move option causes a lot of problems, since it forces
us to be able to generate code for p8 and up with some crucial
instructions missing. This patch removes the -m[no-]direct-move
options so that the user cannot put us into this unexpected situation
anymore. Internally we still have all the same flags, and they are
automatically set based on -mcpu; getting rid of that is a lot more
work and will have to wait for GCC 9 (in some places the flag is used
to see if we are compiling for a p8 _at all_).
PR target/85293
* config/rs6000/rs6000.opt (mdirect-move): Make deprecated.
* doc/invoke.texi (RS/6000 and PowerPC Options): Remove -mdirect-move
and -mno-direct-move.
gcc/testsuite/
PR target/85293
* gcc.target/powerpc/pr80098-2.c: Remove -mdirect-move. Remove the
corresponding dg-error clause.
* gcc.target/powerpc/pr80098-3.c: Ditto.
* gcc.target/powerpc/pr80103-1.c: Delete.
From-SVN: r259386
|
|
incorrect caf_get_by_ref() call.)
gcc/fortran/ChangeLog:
2018-04-14 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/81773
PR fortran/83606
* dependency.c (gfc_dep_resolver): Coarray indexes are to be ignored
during dependency computation. They define no data dependency.
* trans-array.c (conv_array_index_offset): The stride can not be set
here, prevent fail.
* trans-intrinsic.c (conv_caf_send): Add creation of temporary array
for caf_get's result and copying to the array with vectorial
indexing.
gcc/testsuite/ChangeLog:
2018-04-14 Andre Vehreschild <vehre@gcc.gnu.org>
PR fortran/81773
PR fortran/83606
* gfortran.dg/coarray/get_to_indexed_array_1.f90: New test.
* gfortran.dg/coarray/get_to_indirect_array.f90: New test.
From-SVN: r259385
|
|
2018-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/85387
* frontend-passes.c (traverse_io_block): Check for start, end or
stride being defined by an outer implied DO loop.
2018-04-14 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/85387
* gfortran.dg/implied_do_io_5.f90: New test.
From-SVN: r259384
|
|
From-SVN: r259383
|
|
(PR84302)
The powerpc versions of _mm_slli_epi32 and __mm_slli_epi64 in emmintrin.h
do not properly handle shift values between 16 and 31, inclusive.
These are setting up the shift with vec_splat_s32, which only accepts
*5 bit signed* shift values, or a range of -16 to 15. Values above 15
produce an error:
error: argument 1 must be a 5-bit signed literal
Fix is to effectively reduce the range for which vec_splat_s32 is used
to < 32 and use vec_splats otherwise.
Also, __mm_slli_epi{16,32,64}, when given a negative shift value,
should always return a vector of {0}.
PR target/83402
* config/rs6000/emmintrin.h (_mm_slli_epi{16,32,64}):
Ensure that vec_splat_s32 is only called with 0 <= shift < 16.
Ensure negative shifts result in {0}.
gcc/testsuite/
PR target/83402
* gcc.target/powerpc/sse2-psllw-1.c: Refactor and add tests for
several values: positive, negative, and zero.
* gcc.target/powerpc/sse2-pslld-1.c: Same.
* gcc.target/powerpc/sse2-psllq-1.c: Same.
From-SVN: r259380
|
|
per insn is achieved (90))
2018-04-13 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/79916
* config/rs6000/rs6000.c (rs6000_emit_move): Use assigned hard
regs (if any) to define how to gnerate SD moves when LRA is in
progress.
2018-04-13 Vladimir Makarov <vmakarov@redhat.com>
PR rtl-optimization/79916
* gcc.target/powerpc/pr79916.c: New.
From-SVN: r259379
|
|
starting with r254832)
PR rtl-optimization/85393
* except.h (expand_dw2_landing_pad_for_region): Remove declaration.
* except.c (expand_dw2_landing_pad_for_region): Make static.
* bb-reorder.c (fix_up_crossing_landing_pad): In new_bb emit just
a label and unconditional jump to old_bb, rather than
expand_dw2_landing_pad_for_region insn(s) and jump to single_succ
basic block.
* g++.dg/opt/pr85393.C: New test.
* g++.dg/opt/pr85393-aux.cc: New file.
From-SVN: r259378
|
|
-fno-tree-ccp -fno-tree-copy-prop)
PR rtl-optimization/85376
* simplify-rtx.c (simplify_const_unary_operation): For CLZ and CTZ and
zero op0, if C?Z_DEFINED_VALUE_AT_ZERO is false, return NULL_RTX
instead of a specific value.
* gcc.dg/pr85376.c: New test.
From-SVN: r259377
|
|
* src/c++11/Makefile.am: Fix sed command.
* src/c++11/Makefile.in: Regenerate.
From-SVN: r259374
|
|
sel-sched-ir.c:5644 on 32-bit BE powerpc targets)
PR rtl-optimization/83852
* gcc.dg/pr83852.c: New testcase.
From-SVN: r259373
|
|
* src/c++11/Makefile.am: Rewrite sed rule to be less fragile and to
handle mangled names starting with double underscores on darwin.
* src/c++11/Makefile.in: Regenerate.
From-SVN: r259371
|
|
gcc/testsuite/ChangeLog:
2018-04-13 Andreas Krebbel <krebbel@linux.ibm.com>
PR testsuite/85326
* gcc.target/s390/pr77822-1.C: Rename to ...
* gcc.target/s390/pr77822-1.c: ... this. Add asm scan check.
* gcc.target/s390/pr77822-2.c: Add asm scan check.
* gcc.target/s390/s390.exp: Remove C from testcase regexps.
From-SVN: r259369
|
|
r254379)
PR tree-optimization/82965
PR tree-optimization/83991
* cfgloopanal.c (expected_loop_iterations_unbounded): Add
by_profile_only parameter.
* cfgloopmanip.c (scale_loop_profile): Further scale loop's profile
information if the loop was predicted to iterate too many times.
* cfgloop.h (expected_loop_iterations_unbounded): Update prototype
Co-Authored-By: Bin Cheng <bin.cheng@arm.com>
From-SVN: r259368
|
|
among LTO and non-LTO compilation)
PR lto/71991
* config/i386/i386.c (ix86_can_inline_p): Allow safe transitions for
always inline.
* gcc.target/i386/pr71991.c: New testcase.
From-SVN: r259367
|
|
PR middle-end/81657
* expr.h (enum block_op_methods): Add BLOCK_OP_NO_LIBCALL_RET.
* expr.c (emit_block_move_hints): Handle BLOCK_OP_NO_LIBCALL_RET.
* builtins.c (expand_builtin_memory_copy_args): Use
BLOCK_OP_NO_LIBCALL_RET method for mempcpy with non-ignored target,
handle dest_addr == pc_rtx.
* gcc.dg/string-opt-1.c: Remove bogus comment. Expect a mempcpy
call.
Co-Authored-By: Jakub Jelinek <jakub@redhat.com>
From-SVN: r259366
|
|
PR lto/81968
* simple-object.c (handle_lto_debug_sections): Keep .comment
section.
From-SVN: r259364
|
|
From-SVN: r259363
|
|
PR c++/85385 reports an issue where we emit bogus "macro had not yet been
defined" notes when a macro is mis-used:
$ cat test.c
#define MACRO(X,Y)
void test ()
{
MACRO(42);
}
$ ./xg++ -B. -c test.c
test.c:5:11: error: macro "MACRO" requires 2 arguments, but only 1 given
MACRO(42);
^
test.c: In function ‘void test()’:
test.c:5:3: error: ‘MACRO’ was not declared in this scope
MACRO(42);
^~~~~
test.c:5:3: note:
test.c:1: note: it was later defined here
#define MACRO(X,Y)
The macro *had* been defined, it was merely misused.
This patch fixes the issue by only issuing the note if the use location
is before the definition location (using linemap_location_before_p).
gcc/cp/ChangeLog:
PR c++/85385
* name-lookup.c (macro_use_before_def::maybe_make): New function,
checking that the use is indeed before the definition.
(macro_use_before_def::macro_use_before_def): Make private.
(macro_use_before_def::~macro_use_before_def): Make private. Move
check for UNKNOWN_LOCATION to macro_use_before_def::maybe_make.
(lookup_name_fuzzy): Call macro_use_before_def::maybe_make rather
than using new directly.
gcc/testsuite/ChangeLog:
PR c++/85385
* g++.dg/diagnostic/macro-arg-count.C: New test.
From-SVN: r259360
|
|
2018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/83064
PR testsuite/85346
* trans-stmt.c (gfc_trans_forall_loop): Use annot_expr_ivdep_kind
for annotation and remove dependence on -ftree-parallelize-loops.
2018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/83064
PR testsuite/85346
* gfortran.dg/do_concurrent_5.f90: Dynamically allocate main work
array and move test to libgomp/testsuite/libgomp.fortran.
* gfortran.dg/do_concurrent_6.f90: New test.
2018-04-12 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/83064
PR testsuite/85346
* testsuite/libgomp.fortran/do_concurrent_5.f90: Move modified
test from gfortran.dg to here.
From-SVN: r259359
|
|
* src/c++11/Makefile.am: Fix comment.
* src/c++11/Makefile.in: Regenerate.
* src/c++11/cxx11-ios_failure.cc: Fix comment.
* src/c++98/ios_failure.cc: Likewise.
From-SVN: r259357
|
|
* pt.c (maybe_instantiate_noexcept): Do instantiate in templates if
flag_noexcept_type. Build the new spec within the function context.
* except.c (build_noexcept_spec): Do get constant value in templates
if flag_noexcept_type.
* decl.c (check_redeclaration_exception_specification): Don't
instantiate noexcept on a dependent declaration.
From-SVN: r259356
|
|
PR c++/85258
* constexpr.c (reduced_constant_expression_p): Return false for null
trees.
* g++.dg/parse/error61.C: New test.
From-SVN: r259355
|
|
PR target/85291
* config/rs6000/rs6000.md (fix_trunc<mode>si2): Use legacy code if
asked to not generate direct moves.
(fix_trunc<mode>si2_stfiwx): Similar.
(fix_trunc<mode>si2_internal): Similar.
From-SVN: r259354
|
|
to concrete instance as abstract origin)
PR debug/83157
* var-tracking.c (add_stores): Handle STRICT_LOW_PART SET_DEST.
* cselib.c (cselib_record_sets): For STRICT_LOW_PART dest,
lookup if dest in some wider mode is known to be const0_rtx and
if so, record permanent equivalence for it to be ZERO_EXTEND of
the narrower mode destination.
From-SVN: r259353
|
|
gcc/
* lto-streamer-out.c (output_function): Revert 259346.
* omp-expand.c (expand_oacc_for): Likewise.
libgomp/
* testsuite/libgomp.oacc-c-c++-common/pr84955.c: Revert 259346.
* testsuite/libgomp.oacc-fortran/pr84955.f90:Likewise.
From-SVN: r259351
|
|
gcc/testsuite/ChangeLog:
2018-04-12 Kelvin Nilsen <kelvin@gcc.gnu.org>
PR target/85347
* gcc.target/powerpc/vec-ldl-1.c: Change dejagnu directives to
specify -mvsx on gcc command line.
From-SVN: r259350
|
|
The definition of __throw_ios_failure is no longer in this file, so
setting the macro here is unnecessary.
* src/c++11/ios.cc: Remove redundant macro definition.
From-SVN: r259349
|
|
PR rtl-optimization/85354
* sel-sched-ir.c (sel_init_pipelining): Move cfg_cleanup call...
* sel-sched.c (sel_global_init): ... here.
From-SVN: r259348
|
|
simple_object_copy_lto_debug_sections not implemented: Invalid argument on Cygwin)
PR target/85238
* lto-wrapper.c (debug_objcopy): Open the files in binary mode.
* dwarf2out.c (dwarf2out_early_finish): Do not generate assembly in LTO
mode for PE-COFF targets.
* config/i386/i386-protos.h (i386_pe_asm_lto_start): Declare.
(i386_pe_asm_lto_end): Likewise.
* config/i386/cygming.h (TARGET_ASM_LTO_START): Define.
(TARGET_ASM_LTO_END): Likewise.
* config/i386/winnt.c (saved_debug_info_level): New static variable.
(i386_pe_asm_lto_start): New function.
(i386_pe_asm_lto_end): Likewise.
From-SVN: r259347
|