Hello Piyush.
Thanks for the patch.
These tests LGTM.
Once we get the testsuite in place then we can start adding testcases
oriented to detect whether certain optimizations still generate
verifiable code.
> This patch adds runtime tests for BPF target.
> These tests are based on existing compile-time tests.
>
> gcc/testsuite/ChangeLog:
>
> * gcc.target/bpf/torture/memcpy.c: New test.
> * gcc.target/bpf/torture/memmove.c: New test.
> * gcc.target/bpf/torture/memset.c: New test.
> * gcc.target/bpf/torture/naked.c: New test.
> * gcc.target/bpf/torture/nop.c: New test.
> ---
> gcc/testsuite/gcc.target/bpf/torture/memcpy.c | 5 +++++
> gcc/testsuite/gcc.target/bpf/torture/memmove.c | 6 ++++++
> gcc/testsuite/gcc.target/bpf/torture/memset.c | 5 +++++
> gcc/testsuite/gcc.target/bpf/torture/naked.c | 3 +++
> gcc/testsuite/gcc.target/bpf/torture/nop.c | 4 ++++
> 5 files changed, 23 insertions(+)
> create mode 100644 gcc/testsuite/gcc.target/bpf/torture/memcpy.c
> create mode 100644 gcc/testsuite/gcc.target/bpf/torture/memmove.c
> create mode 100644 gcc/testsuite/gcc.target/bpf/torture/memset.c
> create mode 100644 gcc/testsuite/gcc.target/bpf/torture/naked.c
> create mode 100644 gcc/testsuite/gcc.target/bpf/torture/nop.c
>
> diff --git a/gcc/testsuite/gcc.target/bpf/torture/memcpy.c
> b/gcc/testsuite/gcc.target/bpf/torture/memcpy.c
> new file mode 100644
> index 00000000000..881813fc271
> --- /dev/null
> +++ b/gcc/testsuite/gcc.target/bpf/torture/memcpy.c
> @@ -0,0 +1,5 @@
> +/* Ensure memcpy is expanded inline rather than emitting a libcall. */
> +
> +/* { dg-do run } */
> +
> +#include "../memcpy-1.c"
> \ No newline at end of file
> diff --git a/gcc/testsuite/gcc.target/bpf/torture/memmove.c
> b/gcc/testsuite/gcc.target/bpf/torture/memmove.c
> new file mode 100644
> index 00000000000..52b5b852dd2
> --- /dev/null
> +++ b/gcc/testsuite/gcc.target/bpf/torture/memmove.c
> @@ -0,0 +1,6 @@
> +/* Ensure memmove is expanded inline rather than emitting a libcall. */
> +
> +/* { dg-do run } */
> +
> +#include "../memmove-1.c"
> +
> diff --git a/gcc/testsuite/gcc.target/bpf/torture/memset.c
> b/gcc/testsuite/gcc.target/bpf/torture/memset.c
> new file mode 100644
> index 00000000000..a934b05dc02
> --- /dev/null
> +++ b/gcc/testsuite/gcc.target/bpf/torture/memset.c
> @@ -0,0 +1,5 @@
> +/* Ensure memset is expanded inline rather than emitting a libcall. */
> +
> +/* { dg-do run } */
> +
> +#include "../memset-1.c"
> \ No newline at end of file
> diff --git a/gcc/testsuite/gcc.target/bpf/torture/naked.c
> b/gcc/testsuite/gcc.target/bpf/torture/naked.c
> new file mode 100644
> index 00000000000..802201d6e24
> --- /dev/null
> +++ b/gcc/testsuite/gcc.target/bpf/torture/naked.c
> @@ -0,0 +1,3 @@
> +/* { dg-do run } */
> +
> +#include "../naked-2.c"
> diff --git a/gcc/testsuite/gcc.target/bpf/torture/nop.c
> b/gcc/testsuite/gcc.target/bpf/torture/nop.c
> new file mode 100644
> index 00000000000..3e4f81b6754
> --- /dev/null
> +++ b/gcc/testsuite/gcc.target/bpf/torture/nop.c
> @@ -0,0 +1,4 @@
> +/* { dg-do run } */
> +/* { dg-options "--patchable-function-entry=2,1 -masm=normal" } */
> +
> +#include "../nop-1.c"