diff options
author | Joel Brobecker <brobecker@adacore.com> | 2020-04-06 12:07:48 -0700 |
---|---|---|
committer | Joel Brobecker <brobecker@adacore.com> | 2020-04-06 12:07:48 -0700 |
commit | 130f703da0c0d7b785d394b17df884379b4aadd9 (patch) | |
tree | a53a825854f1793508a66eb566111b75dff9b216 /gcc | |
parent | e83714f65d1f75fc5af39f9fdc520a909dfc7635 (diff) | |
download | gcc-130f703da0c0d7b785d394b17df884379b4aadd9.zip gcc-130f703da0c0d7b785d394b17df884379b4aadd9.tar.gz gcc-130f703da0c0d7b785d394b17df884379b4aadd9.tar.bz2 |
skip gcc.target/arm/div64-unwinding.c on vxworks_kernel targets
This test verifies, by using a weak reference to _Unwind_RaiseException,
that performing division by zero does not cause that symbol to get
indirectly pulled into our closure.
The testing methodology unfortunately does not work on VxWorks targets
when building in kernel mode. This is inherent to how kernel mode
on VxWorks works: The link is only partial and the remaining symbols
which have not been resolved already get automatically resolved by
the VxWorks loader at the moment the module is loaded onto the target,
prior to execution. The resolution includes weak symbols too, which
defeats the purpose of this test.
gcc/testsuite/
* gcc.target/arm/div64-unwinding.c: Skip on vxworks_kernel targets.
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.target/arm/div64-unwinding.c | 1 |
2 files changed, 5 insertions, 0 deletions
diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 2983063..2198e18 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2020-04-06 Joel Brobecker <brobecker@adacore.com> + + * gcc.target/arm/div64-unwinding.c: Skip on vxworks_kernel targets. + 2020-04-04 Marek Polacek <polacek@redhat.com> PR c++/94155 - crash in gimplifier with paren init of aggregates. diff --git a/gcc/testsuite/gcc.target/arm/div64-unwinding.c b/gcc/testsuite/gcc.target/arm/div64-unwinding.c index 0944281..c10ac24 100644 --- a/gcc/testsuite/gcc.target/arm/div64-unwinding.c +++ b/gcc/testsuite/gcc.target/arm/div64-unwinding.c @@ -1,6 +1,7 @@ /* Performing a 64-bit division should not pull in the unwinder. */ /* { dg-do run { target { { ! *-*-linux* } && { ! *-*-uclinux* } } } } */ +/* { dg-skip-if "load causes weak symbol resolution" { vxworks_kernel } } */ /* { dg-options "-O0" } */ #include <stdlib.h> |