testsuite: new require effective target indirect_calls
authorJose E. Marchesi <jose.marchesi@oracle.com>
Mon, 9 Sep 2019 09:55:10 +0000 (11:55 +0200)
committerJose E. Marchesi <jemarch@gcc.gnu.org>
Mon, 9 Sep 2019 09:55:10 +0000 (11:55 +0200)
commita5362c6aea5ea6b07803d8f9f6f783154e250ce4
tree37e9f7a15fd513ef718918bd6378f16f7acd1e11
parente9b8025bb071f9980aa54c80e642dc855542fd1b
testsuite: new require effective target indirect_calls

This patch adds a new dg_require_effective_target procedure to the
testsuite infrastructure: indirect_calls.  This new function tells
whether a target supports calls to non-constant call targets.

This patch also annotates the tests in the gcc.c-torture testuite that
require support for indirect calls.

    gcc/ChangeLog:

            * doc/sourcebuild.texi (Effective-Target Keywords): Document
            indirect_calls.

    gcc/testsuite/ChangeLog:

            * lib/target-supports.exp (check_effective_target_indirect_calls):
            New proc.
            * gcc.c-torture/compile/20010102-1.c: Annotate with
            dg-require-effective-target indirect_calls.
            * gcc.c-torture/compile/20010107-1.c: Likewise.
            * gcc.c-torture/compile/20011109-1.c: Likewise.
            * gcc.c-torture/compile/20011218-1.c: Likewise.
            * gcc.c-torture/compile/20011229-1.c: Likewise.
            * gcc.c-torture/compile/20020129-1.c: Likewise.
            * gcc.c-torture/compile/20020320-1.c: Likewise.
            * gcc.c-torture/compile/20020706-1.c: Likewise.
            * gcc.c-torture/compile/20020706-2.c: Likewise.
            * gcc.c-torture/compile/20021205-1.c: Likewise.
            * gcc.c-torture/compile/20030921-1.c: Likewise.
            * gcc.c-torture/compile/20031023-1.c: Likewise.
            * gcc.c-torture/compile/20031023-2.c: Likewise.
            * gcc.c-torture/compile/20031023-3.c: Likewise.
            * gcc.c-torture/compile/20031023-4.c: Likewise.
            * gcc.c-torture/compile/20040614-1.c: Likewise.
            * gcc.c-torture/compile/20040909-1.c: Likewise.
            * gcc.c-torture/compile/20050122-1.c: Likewise.
            * gcc.c-torture/compile/20050202-1.c: Likewise.
            * gcc.c-torture/compile/20060208-1.c: Likewise.
            * gcc.c-torture/compile/20081108-1.c: Likewise.
            * gcc.c-torture/compile/20150327.c: Likewise.
            * gcc.c-torture/compile/920428-2.c: Likewise.
            * gcc.c-torture/compile/920928-5.c: Likewise.
            * gcc.c-torture/compile/930117-1.c: Likewise.
            * gcc.c-torture/compile/930607-1.c: Likewise.
            * gcc.c-torture/compile/991213-2.c: Likewise.
            * gcc.c-torture/compile/callind.c: Likewise.
            * gcc.c-torture/compile/calls-void.c: Likewise.
            * gcc.c-torture/compile/calls.c: Likewise.
            * gcc.c-torture/compile/pr21840.c: Likewise.
            * gcc.c-torture/compile/pr32139.c: Likewise.
            * gcc.c-torture/compile/pr35607.c: Likewise.
            * gcc.c-torture/compile/pr37433-1.c: Likewise.
            * gcc.c-torture/compile/pr37433.c: Likewise.
            * gcc.c-torture/compile/pr39941.c: Likewise.
            * gcc.c-torture/compile/pr40080.c: Likewise.
            * gcc.c-torture/compile/pr43635.c: Likewise.
            * gcc.c-torture/compile/pr43791.c: Likewise.
            * gcc.c-torture/compile/pr43845.c: Likewise.
            * gcc.c-torture/compile/pr44043.c: Likewise.
            * gcc.c-torture/compile/pr51694.c: Likewise.
            * gcc.c-torture/compile/pr77754-2.c: Likewise.
            * gcc.c-torture/compile/pr77754-3.c: Likewise.
            * gcc.c-torture/compile/pr77754-4.c: Likewise.
            * gcc.c-torture/compile/pr89663-2.c: Likewise.
            * gcc.c-torture/compile/pta-1.c: Likewise.
            * gcc.c-torture/compile/stack-check-1.c: Likewise.
            * gcc.dg/Walloc-size-larger-than-18.c: Likewise.

From-SVN: r275505
53 files changed:
gcc/ChangeLog
gcc/doc/sourcebuild.texi
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.c-torture/compile/20010102-1.c
gcc/testsuite/gcc.c-torture/compile/20010107-1.c
gcc/testsuite/gcc.c-torture/compile/20011109-1.c
gcc/testsuite/gcc.c-torture/compile/20011218-1.c
gcc/testsuite/gcc.c-torture/compile/20011229-1.c
gcc/testsuite/gcc.c-torture/compile/20020129-1.c
gcc/testsuite/gcc.c-torture/compile/20020320-1.c
gcc/testsuite/gcc.c-torture/compile/20020706-1.c
gcc/testsuite/gcc.c-torture/compile/20020706-2.c
gcc/testsuite/gcc.c-torture/compile/20021205-1.c
gcc/testsuite/gcc.c-torture/compile/20030921-1.c
gcc/testsuite/gcc.c-torture/compile/20031023-1.c
gcc/testsuite/gcc.c-torture/compile/20031023-2.c
gcc/testsuite/gcc.c-torture/compile/20031023-3.c
gcc/testsuite/gcc.c-torture/compile/20031023-4.c
gcc/testsuite/gcc.c-torture/compile/20040614-1.c
gcc/testsuite/gcc.c-torture/compile/20040909-1.c
gcc/testsuite/gcc.c-torture/compile/20050122-1.c
gcc/testsuite/gcc.c-torture/compile/20050202-1.c
gcc/testsuite/gcc.c-torture/compile/20060208-1.c
gcc/testsuite/gcc.c-torture/compile/20081108-1.c
gcc/testsuite/gcc.c-torture/compile/20150327.c
gcc/testsuite/gcc.c-torture/compile/920428-2.c
gcc/testsuite/gcc.c-torture/compile/920928-5.c
gcc/testsuite/gcc.c-torture/compile/930117-1.c
gcc/testsuite/gcc.c-torture/compile/930607-1.c
gcc/testsuite/gcc.c-torture/compile/991213-2.c
gcc/testsuite/gcc.c-torture/compile/callind.c
gcc/testsuite/gcc.c-torture/compile/calls-void.c
gcc/testsuite/gcc.c-torture/compile/calls.c
gcc/testsuite/gcc.c-torture/compile/pr21840.c
gcc/testsuite/gcc.c-torture/compile/pr32139.c
gcc/testsuite/gcc.c-torture/compile/pr35607.c
gcc/testsuite/gcc.c-torture/compile/pr37433-1.c
gcc/testsuite/gcc.c-torture/compile/pr37433.c
gcc/testsuite/gcc.c-torture/compile/pr39941.c
gcc/testsuite/gcc.c-torture/compile/pr40080.c
gcc/testsuite/gcc.c-torture/compile/pr43635.c
gcc/testsuite/gcc.c-torture/compile/pr43791.c
gcc/testsuite/gcc.c-torture/compile/pr43845.c
gcc/testsuite/gcc.c-torture/compile/pr44043.c
gcc/testsuite/gcc.c-torture/compile/pr51694.c
gcc/testsuite/gcc.c-torture/compile/pr77754-2.c
gcc/testsuite/gcc.c-torture/compile/pr77754-3.c
gcc/testsuite/gcc.c-torture/compile/pr77754-4.c
gcc/testsuite/gcc.c-torture/compile/pr89663-2.c
gcc/testsuite/gcc.c-torture/compile/pta-1.c
gcc/testsuite/gcc.c-torture/compile/stack-check-1.c
gcc/testsuite/gcc.dg/Walloc-size-larger-than-18.c
gcc/testsuite/lib/target-supports.exp