diff --git a/gcc/testsuite/gcc.dg/builtin-object-size-21.c b/gcc/testsuite/gcc.dg/builtin-object-size-21.c index 1c42374ba892294f50aeb8d2c58f109b56359152..7e0f85ffdf3a39e4f1c07ddddb209c2f29d1e137 100644 --- a/gcc/testsuite/gcc.dg/builtin-object-size-21.c +++ b/gcc/testsuite/gcc.dg/builtin-object-size-21.c @@ -1,7 +1,8 @@ /* PR middle-end/92815 - spurious -Wstringop-overflow writing into a flexible array of an extern struct { dg-do compile } - { dg-options "-Wall -fdump-tree-optimized" } */ + { dg-options "-Wall -fdump-tree-optimized" } + { dg-require-effective-target large_initializer } */ #define PTRDIFF_MAX __PTRDIFF_MAX__ diff --git a/gcc/testsuite/gcc.dg/strlenopt-55.c b/gcc/testsuite/gcc.dg/strlenopt-55.c index ea6fb22a2edbb7899def39581c998c9cc7f56aad..ca89ecd3c53bac2e02c14521212afd3266cd7fd3 100644 --- a/gcc/testsuite/gcc.dg/strlenopt-55.c +++ b/gcc/testsuite/gcc.dg/strlenopt-55.c @@ -3,7 +3,8 @@ Verify that strlen() of braced initialized array is folded { dg-do compile } - { dg-options "-O1 -Wall -fdump-tree-gimple -fdump-tree-optimized" } */ + { dg-options "-O1 -Wall -fdump-tree-gimple -fdump-tree-optimized" } + { dg-require-effective-target large_initializer } */ #include "strlenopt.h" diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index e79015b4d5489eb1c9e159fc65a4b5aa11f2eb93..4e0d45aaae5f13513d44c9a11809ffe057f40998 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -10424,3 +10424,14 @@ proc check_effective_target_msp430_large {} { #endif } ""] } + +# Return 1 if the target has an efficient means to encode large initializers +# in the assembly. + +proc check_effective_target_large_initializer { } { + if { [istarget nvptx*-*-*] } { + return 0 + } + + return 1 +}