On 04 Dec 15:58, Rainer Orth wrote: > Hi Ilya, > > > > This patch adds a check for stpcpy function into > > gcc.target/i386/chkp-strlen-2.c test. > > > > make check RUNTESTFLAGS="i386.exp=chkp-strlen-2.c" is OK. OK for trunk? > > > > Thanks, > > Ilya > > -- > > 2014-12-04 Ilya Enkovich <ilya.enkov...@intel.com> > > > > PR target/64056 > > * lib/target-supports.exp (check_effective_target_stpcpy): New. > > new effective-target keywords need documentation in sourcebuild.texi. > > Rainer > > -- > ----------------------------------------------------------------------------- > Rainer Orth, Center for Biotechnology, Bielefeld University
Thanks for the notice! I see there is also no description for mempcpy target check. So add both of them. Thanks, Ilya -- gcc/ 2014-12-04 Ilya Enkovich <ilya.enkov...@intel.com> PR target/64056 * doc/sourcebuild.texi: Add mempcpy and stpcpy for Effective-Target Keywords. gcc/testsuite/ 2014-12-04 Ilya Enkovich <ilya.enkov...@intel.com> PR target/64056 * lib/target-supports.exp (check_effective_target_stpcpy): New. * gcc.target/i386/chkp-strlen-2.c: Add stpcpy target check. diff --git a/gcc/doc/sourcebuild.texi b/gcc/doc/sourcebuild.texi index 20a206d..797d3ee 100644 --- a/gcc/doc/sourcebuild.texi +++ b/gcc/doc/sourcebuild.texi @@ -1761,6 +1761,9 @@ Target might have errors of a few ULP in string to floating-point conversion functions and overflow is not always detected correctly by those functions. +@item mempcpy +Target provides @code{mempcpy} function. + @item mmap Target supports @code{mmap}. @@ -1790,6 +1793,9 @@ Target has the basic signed and unsigned C types in @code{stdint.h}. This will be obsolete when GCC ensures a working @code{stdint.h} for all targets. +@item stpcpy +Target provides @code{stpcpy} function. + @item trampolines Target supports trampolines. diff --git a/gcc/testsuite/gcc.target/i386/chkp-strlen-2.c b/gcc/testsuite/gcc.target/i386/chkp-strlen-2.c index 1ce426d..67691ee 100644 --- a/gcc/testsuite/gcc.target/i386/chkp-strlen-2.c +++ b/gcc/testsuite/gcc.target/i386/chkp-strlen-2.c @@ -1,5 +1,6 @@ /* { dg-do compile } */ /* { dg-require-effective-target mpx } */ +/* { dg-require-effective-target stpcpy } */ /* { dg-options "-fcheck-pointer-bounds -mmpx -O2 -fdump-tree-strlen" } */ /* { dg-final { scan-tree-dump-not "strlen" "strlen" } } */ /* { dg-final { cleanup-tree-dump "strlen" } } */ diff --git a/gcc/testsuite/lib/target-supports.exp b/gcc/testsuite/lib/target-supports.exp index ac04d95..0a911c1 100644 --- a/gcc/testsuite/lib/target-supports.exp +++ b/gcc/testsuite/lib/target-supports.exp @@ -5856,6 +5856,12 @@ proc check_effective_target_mempcpy {} { return [check_function_available "mempcpy"] } +# Returns 1 if "stpcpy" is available on the target system. + +proc check_effective_target_stpcpy {} { + return [check_function_available "stpcpy"] +} + # Check whether the vectorizer tests are supported by the target and # append additional target-dependent compile flags to DEFAULT_VECTCFLAGS. # Set dg-do-what-default to either compile or run, depending on target