summaryrefslogtreecommitdiff
path: root/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/testsuite/gcc.target/i386/chkp-stropt-17.c')
-rw-r--r--gcc/testsuite/gcc.target/i386/chkp-stropt-17.c68
1 files changed, 0 insertions, 68 deletions
diff --git a/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c b/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
deleted file mode 100644
index faf304c3303..00000000000
--- a/gcc/testsuite/gcc.target/i386/chkp-stropt-17.c
+++ /dev/null
@@ -1,68 +0,0 @@
-/* { dg-do compile { target { ! x32 } } }
- { dg-require-effective-target mempcpy }
- { dg-options "-O2 -Wrestrict -fcheck-pointer-bounds -mmpx" } */
-
-#define USE_GNU
-#include "../../gcc.dg/strlenopt.h"
-
-/* There is no BUILT_IN_ST{P,R}NCPY_CHKP or BUILT_IN_STRNCAT_CHKP
- so the test for them below are XFAIL. */
-char *stpncpy (char *__restrict, const char *__restrict, size_t);
-char *strncpy (char *__restrict, const char *__restrict, size_t);
-char *strncat (char *__restrict, const char *__restrict, size_t);
-
-
-char a[8];
-
-void test_memcpy (void)
-{
- memcpy (a, a + 1, 3); /* { dg-warning ".memcpy\.chkp. accessing 3 bytes at offsets 0 and 1 overlaps 2 bytes at offset 1" } */
-}
-
-void test_memmove (void)
-{
- memmove (a, a + 1, 3);
-}
-
-void* test_mempcpy (void)
-{
- return mempcpy (a, a + 1, 3); /* { dg-warning ".mempcpy\.chkp. accessing 3 bytes at offsets 0 and 1 overlaps 2 bytes at offset 1" } */
-}
-
-char* test_stpcpy (void)
-{
- strcpy (a, "0123456");
- return stpcpy (a, a + 2); /* { dg-warning ".stpcpy\.chkp. accessing 6 bytes at offsets 0 and 2 overlaps 4 bytes at offset 2" } */
-}
-
-char* test_stpncpy (void)
-{
- strcpy (a, "0123456");
-
- /* There is no BUILT_IN_STPNCPY_CHKP so this isn't handled. */
- return stpncpy (a, a + 2, sizeof a); /* { dg-warning ".stpcpy\.chkp. accessing 7 bytes at offsets 0 and 2 overlaps 4 bytes at offset 2" "bug 82652" { xfail *-*-* } } */
-}
-
-void test_strcpy (void)
-{
- strcpy (a, "0123456");
- strcpy (a, a + 1); /* { dg-warning ".strcpy\.chkp. accessing 7 bytes at offsets 0 and 1 overlaps 6 bytes at offset 1" } */
-}
-
-void test_strcat (int n)
-{
- strcat (a, a + 3); /* { dg-warning ".strcat\.chkp. accessing 4 or more bytes at offsets 0 and 3 may overlap 1 byte at offset 3" } */
-}
-
-void test_strncat (int n)
-{
- strncat (a, a + 3, sizeof a); /* { dg-warning ".strncat\.chkp. accessing 0 or more bytes at offsets 0 and 3 may overlap 1 byte" "bug 82652" { xfail *-*-* } } */
-}
-
-void test_strncpy (int n)
-{
- strcpy (a, "0123456");
-
- /* There is no BUILT_IN_STRNCPY_CHKP so this isn't handled. */
- strncpy (a, a + 2, sizeof a); /* { dg-warning ".strncpy\.chkp. accessing 7 bytes at offsets 0 and 2 overlaps 5 bytes at offset 2" "bug 82652" { xfail *-*-* } } */
-}