From 2ee9abad37098fbc0e4b15ccee0c257d7907f106 Mon Sep 17 00:00:00 2001 From: Iain Sandoe Date: Sun, 4 Aug 2019 11:57:41 +0000 Subject: [PATCH] Darwin, testsuite, backport fix for cpp0x/alignas4.C Darwin produces aligned zerofill directives for the objects represented. We can scan for these using lp64 and ilp32 to catch operation on both X86 and PowerPC ports (the test is for the alignment which is the trailing value in the zerofill directive, as a power of two). 2019-08-04 Iain Sandoe Backport from mainline. 2019-06-06 Iain Sandoe * g++.dg/cpp0x/alignas4.C: Amend test to check for zerofill syntax on Darwin. From-SVN: r274074 --- gcc/testsuite/ChangeLog | 8 ++++++++ gcc/testsuite/g++.dg/cpp0x/alignas4.C | 8 +++++++- 2 files changed, 15 insertions(+), 1 deletion(-) diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 51050299ad3b..14dae42ce37f 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,11 @@ +2019-08-04 Iain Sandoe + + Backport from mainline. + 2019-06-06 Iain Sandoe + + * g++.dg/cpp0x/alignas4.C: Amend test to check for zerofill syntax + on Darwin. + 2019-08-04 Iain Sandoe Backport from mainline. diff --git a/gcc/testsuite/g++.dg/cpp0x/alignas4.C b/gcc/testsuite/g++.dg/cpp0x/alignas4.C index b66fa651bc2c..1ef487075868 100644 --- a/gcc/testsuite/g++.dg/cpp0x/alignas4.C +++ b/gcc/testsuite/g++.dg/cpp0x/alignas4.C @@ -1,7 +1,13 @@ // PR c++/59012 // { dg-do compile { target c++11 } } // { dg-final { scan-assembler "align 8" { target { { i?86-*-* x86_64-*-* } && { { ! ia32 } && { ! *-*-darwin* } } } } } } -// { dg-final { scan-assembler "align 4" { target ia32 } } } +// { dg-final { scan-assembler "align 4" { target { ia32 && { ! *-*-darwin* } } } } } + +// Darwin produces aligned .zerofill directives for these. +// { dg-final { scan-assembler {zerofill[^\n\r]+_a,4,2} { target { ilp32 && *-*-darwin* } } } } +// { dg-final { scan-assembler {zerofill[^\n\r]+_a,8,3} { target { lp64 && *-*-darwin* } } } } +// { dg-final { scan-assembler {zerofill[^\n\r]+_a2,4,2} { target { ilp32 && *-*-darwin* } } } } +// { dg-final { scan-assembler {zerofill[^\n\r]+_a2,8,3} { target { lp64 && *-*-darwin* } } } } template struct A -- 2.47.2