This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH] Fix the rest of PR target/64056
- From: Ilya Enkovich <enkovich dot gnu at gmail dot com>
- To: Rainer Orth <ro at CeBiTec dot Uni-Bielefeld dot DE>
- Cc: gcc-patches at gcc dot gnu dot org
- Date: Thu, 4 Dec 2014 18:22:09 +0300
- Subject: Re: [PATCH] Fix the rest of PR target/64056
- Authentication-results: sourceware.org; auth=none
- References: <20141204141000 dot GA44742 at msticlxl57 dot ims dot intel dot com> <yddtx1bbgxj dot fsf at lokon dot CeBiTec dot Uni-Bielefeld dot DE>
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.enkovich@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.enkovich@intel.com>
PR target/64056
* doc/sourcebuild.texi: Add mempcpy and stpcpy for Effective-Target Keywords.
gcc/testsuite/
2014-12-04 Ilya Enkovich <ilya.enkovich@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