Commit dd38686d by Jakub Jelinek

testsuite: Improve g++.dg/ext/attr-parm-1.C testcase [PR94946]

The testcase in the current form doesn't FAIL without the patch on
x86_64-linux unless also testing with -m32; as that the 64-bit testing
on that target is probably way more common, and we can use also attributes
that FAIL without the patch with -m64, the following patch adjusts the
test, so that it FAILs without the patch for both -m64 and -m32 (but not
-mx32) and PASSes with the patch.

2020-05-07  Jakub Jelinek  <jakub@redhat.com>

	PR c++/94946
	* g++.dg/ext/attr-parm-1.C: Enable the test also for lp64 x86, use
	sysv_abi and ms_abi attributes in that case instead of fastcall and
	no attribute.
parent da91f9d2
2020-05-06 Jakub Jelinek <jakub@redhat.com> 2020-05-07 Jakub Jelinek <jakub@redhat.com>
Backported from mainline
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR target/94950 PR target/94950
* config/riscv/riscv-builtins.c (riscv_atomic_assign_expand_fenv): Use * config/riscv/riscv-builtins.c (riscv_atomic_assign_expand_fenv): Use
TARGET_EXPR instead of MODIFY_EXPR for first assignment to old_flags. TARGET_EXPR instead of MODIFY_EXPR for first assignment to old_flags.
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/94873 PR rtl-optimization/94873
* combine.c (combine_instructions): Don't optimize using REG_EQUAL * combine.c (combine_instructions): Don't optimize using REG_EQUAL
note if SET_SRC (set) has side-effects. note if SET_SRC (set) has side-effects.
2020-05-05 Jakub Jelinek <jakub@redhat.com> 2020-05-05 Jakub Jelinek <jakub@redhat.com>
PR target/94942 PR target/94942
* config/i386/mmx.md (*vec_dupv4hi): Use xYw constraints instead of Yv. * config/i386/mmx.md (*vec_dupv4hi): Use xYw constraints instead of Yv.
2020-05-04 Jakub Jelinek <jakub@redhat.com> 2020-05-04 Jakub Jelinek <jakub@redhat.com>
* opts.c (get_option_html_page): Instead of hardcoding a list of * opts.c (get_option_html_page): Instead of hardcoding a list of
options common between C/C++ and Fortran only use gfortran/ options common between C/C++ and Fortran only use gfortran/
......
2020-04-30 Jakub Jelinek <jakub@redhat.com> 2020-05-07 Jakub Jelinek <jakub@redhat.com>
Backported from mainline
2020-04-30 Jakub Jelinek <jakub@redhat.com>
PR c/94842 PR c/94842
* c-decl.c (set_labels_context_r): In addition to context-less * c-decl.c (set_labels_context_r): In addition to context-less
......
2020-05-06 Jakub Jelinek <jakub@redhat.com> 2020-05-07 Jakub Jelinek <jakub@redhat.com>
Backported from mainline
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR c++/94951 PR c++/94951
* typeck.c (cp_strict_aliasing_warning): New function. * typeck.c (cp_strict_aliasing_warning): New function.
(cp_build_indirect_ref_1, build_reinterpret_cast_1): Use (cp_build_indirect_ref_1, build_reinterpret_cast_1): Use
it instead of strict_aliasing_warning. it instead of strict_aliasing_warning.
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR c++/94907 PR c++/94907
* method.c (defaulted_late_check): Don't call synthesize_method * method.c (defaulted_late_check): Don't call synthesize_method
on constexpr sfk_comparison if it has been called on it already. on constexpr sfk_comparison if it has been called on it already.
......
202-05-07 Jakub Jelinek <jakub@redhat.com> 2020-05-07 Jakub Jelinek <jakub@redhat.com>
PR c++/94946
* g++.dg/ext/attr-parm-1.C: Enable the test also for lp64 x86, use
sysv_abi and ms_abi attributes in that case instead of fastcall and
no attribute.
PR c/94968 PR c/94968
* gcc.dg/pr94968.c: New test. * gcc.dg/pr94968.c: New test.
2020-05-06 Jakub Jelinek <jakub@redhat.com> Backported from mainline
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR c++/94951 PR c++/94951
* g++.dg/warn/Wstrict-aliasing-bogus-tmpl.C: New test. * g++.dg/warn/Wstrict-aliasing-bogus-tmpl.C: New test.
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR c++/94907 PR c++/94907
* g++.dg/cpp2a/spaceship-synth8.C: New test. * g++.dg/cpp2a/spaceship-synth8.C: New test.
2020-05-06 Jakub Jelinek <jakub@redhat.com>
PR rtl-optimization/94873 PR rtl-optimization/94873
* gcc.dg/pr94873.c: New test. * gcc.dg/pr94873.c: New test.
2020-05-05 Jakub Jelinek <jakub@redhat.com> 2020-05-05 Jakub Jelinek <jakub@redhat.com>
PR target/94942 PR target/94942
* gcc.target/i386/pr94942.c: New test. * gcc.target/i386/pr94942.c: New test.
2020-04-30 Jakub Jelinek <jakub@redhat.com> 2020-04-30 Jakub Jelinek <jakub@redhat.com>
PR c/94842 PR c/94842
* gcc.dg/pr94842.c: New test. * gcc.dg/pr94842.c: New test.
......
// { dg-do compile { target { { i?86-*-* x86_64-*-* } && ia32 } } } // { dg-do compile { target { { i?86-*-* x86_64-*-* } && { ia32 || lp64 } } } }
// PR 94946 // PR 94946
class a { class a {
#ifdef __LP64__
template <typename b> a(b(__attribute__((sysv_abi)) *c)());
template <typename b> a(b(__attribute__((ms_abi)) *c)());
#else
template <typename b> a(b (*)()); template <typename b> a(b (*)());
template <typename b> a(b(__attribute__((fastcall)) *c)()); template <typename b> a(b(__attribute__((fastcall)) *c)());
#endif
}; };
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment