This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH][ARM] PR target/67929 Tighten vfp3_const_double_for_bits checks



On 02/11/15 09:29, Kyrill Tkachov wrote:

On 02/11/15 09:28, Yvan Roux wrote:
On 2 November 2015 at 10:24, Ramana Radhakrishnan
<ramana.radhakrishnan@foss.arm.com> wrote:

On 02/11/15 09:01, Christophe Lyon wrote:
On 2 November 2015 at 09:51, Yvan Roux <yvan.roux@linaro.org> wrote:
On 2 November 2015 at 09:38, Ramana Radhakrishnan
<ramana.radhakrishnan@foss.arm.com> wrote:
2015-10-12  Kyrylo Tkachov <kyrylo.tkachov@arm.com>

     PR target/67929
     * gcc.target/arm/pr67929_1.c: New test.
This test fails when tested on hard-float targets, adding the
following line to avoid testing it in such cases will fix the issue,
but I wonder if there is a better dejaGNU directives sequence to do
that.

/* { dg-skip-if "avoid conflicting multilib options" { *-*-*eabihf } {
"*" } { "" } } */
No, not without further investigation into why the test is failing.
Sorry, it fails because of the ABI mismatch between the built libs for
HF targets and the testcase which is built with the flag
-mfloat-abi=softfp (which is added by the directive arm_vfpv3_ok)

I think that's what I meant in:
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67929#c7
Ah, I see what you mean - instead I would just remove all the special options and move this test into gcc.c-torture/execute.

There are enough testers that test by default to armhf now for us to be worried about testing the exact combination.
Ha yes that's ture and I remember that we ended to that same
conclusion for one testcase I tried to find the exact float ABI flag
combination several months ago.

Ok, moving the test to the torture suite sounds best.
I'll prepare a patch.


Is this proposed patch ok to commit?
It moves the test and adds noclone and noinline attributes to 'foo' like Richard suggested.

2015-11-01  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>

    PR target/67929
    * gcc.target/arm/pr67929_1.c: Move to...
    * gcc.c-torture/execute/pr67929_1.c: ... Here.
    Remove arm-specific directives.  Add noclone, noinline
    attributes.

Thanks,
Kyrill

Sorry for the trouble,
Kyrill



Yvan
regards
Ramana

Christophe.

Yvan

regards
Ramana

Cheers,
Yvan



commit f7da7437733ea999c09806c593d9b253fd2ba324
Author: Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Date:   Mon Nov 2 11:16:57 2015 +0000

    Move gcc.target/arm/pr67929_1.c test to execute.exp

diff --git a/gcc/testsuite/gcc.c-torture/execute/pr67929_1.c b/gcc/testsuite/gcc.c-torture/execute/pr67929_1.c
new file mode 100644
index 0000000..ae6cfbf
--- /dev/null
+++ b/gcc/testsuite/gcc.c-torture/execute/pr67929_1.c
@@ -0,0 +1,15 @@
+int __attribute__ ((noinline, noclone))
+foo (float a)
+{
+  return a * 4.9f;
+}
+
+
+int
+main (void)
+{
+  if (foo (10.0f) != 49)
+    __builtin_abort ();
+
+  return 0;
+}
diff --git a/gcc/testsuite/gcc.target/arm/pr67929_1.c b/gcc/testsuite/gcc.target/arm/pr67929_1.c
deleted file mode 100644
index 14943b6..0000000
--- a/gcc/testsuite/gcc.target/arm/pr67929_1.c
+++ /dev/null
@@ -1,21 +0,0 @@
-/* { dg-do run } */
-/* { dg-require-effective-target arm_vfp3_ok } */
-/* { dg-options "-O2 -fno-inline" } */
-/* { dg-add-options arm_vfp3 } */
-/* { dg-skip-if "need fp instructions" { *-*-* } { "-mfloat-abi=soft" } { "" } } */
-
-int
-foo (float a)
-{
-  return a * 4.9f;
-}
-
-
-int
-main (void)
-{
-  if (foo (10.0f) != 49)
-    __builtin_abort ();
-
-  return 0;
-}
\ No newline at end of file

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]