On Solaris, calling execve with -1 as a first argument causes segfault.

Not intended for upstream.

--- valgrind-3.22.0/none/tests/execve.c	2023-10-31 18:25:52.000000000 +0100
+++ valgrind-3.22.0/none/tests/execve.c.new	2023-12-26 17:42:45.810898858 +0100
@@ -28,8 +28,11 @@
 	 doesn't actually exists, so execve doesn't accidentally succeeds.  */
       if (execve("/%/", NULL, NULL) >= 0)
 	printf ("WHAT?");
+#if !defined(VGO_solaris)
+      /* On Solaris, execve segfaults when -1 is given as an argument. */
       if (execve("/%/", (void *)-1, NULL) >= 0)
 	printf ("WHAT?");
+#endif
       if (execve("/%/", v_null, NULL) >= 0)
 	printf ("WHAT?");
       if (execve("/%/", v_null, v_null) >= 0)