diff options
Diffstat (limited to '')
-rw-r--r-- | src/VBox/ExtPacks/VBoxDTrace/onnv/cmd/dtrace/test/tst/common/java_api/tst.ProbeData.c | 93 |
1 files changed, 93 insertions, 0 deletions
diff --git a/src/VBox/ExtPacks/VBoxDTrace/onnv/cmd/dtrace/test/tst/common/java_api/tst.ProbeData.c b/src/VBox/ExtPacks/VBoxDTrace/onnv/cmd/dtrace/test/tst/common/java_api/tst.ProbeData.c new file mode 100644 index 00000000..0833912a --- /dev/null +++ b/src/VBox/ExtPacks/VBoxDTrace/onnv/cmd/dtrace/test/tst/common/java_api/tst.ProbeData.c @@ -0,0 +1,93 @@ +/* + * CDDL HEADER START + * + * The contents of this file are subject to the terms of the + * Common Development and Distribution License (the "License"). + * You may not use this file except in compliance with the License. + * + * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE + * or http://www.opensolaris.org/os/licensing. + * See the License for the specific language governing permissions + * and limitations under the License. + * + * When distributing Covered Code, include this CDDL HEADER in each + * file and include the License file at usr/src/OPENSOLARIS.LICENSE. + * If applicable, add the following below this CDDL HEADER, with the + * fields enclosed by brackets "[]" replaced with your own identifying + * information: Portions Copyright [yyyy] [name of copyright owner] + * + * CDDL HEADER END + */ + +/* + * Copyright 2007 Sun Microsystems, Inc. All rights reserved. + * Use is subject to license terms. + */ + +#pragma ident "%Z%%M% %I% %E% SMI" + +typedef void f(char *); + +static void +f_a(char *a) +{ +} + +static void +f_b(char *a) +{ +} + +static void +f_c(char *a) +{ +} + +static void +f_d(char *a) +{ +} + +static void +f_e(char *a) +{ +} + +static void +fN(f func, char *a, int i) +{ + func(a); +} + +static void +fN2(f func, char *a, int i) +{ + func(a); +} + +int +main() +{ + /* + * Avoid length of 1, 2, 4, or 8 bytes so DTrace will treat the data as + * a byte array. + */ + char a[] = {(char)-7, (char)201, (char)0, (char)0, (char)28, (char)1}; + char b[] = {(char)84, (char)69, (char)0, (char)0, (char)28, (char)0}; + char c[] = {(char)84, (char)69, (char)0, (char)0, (char)28, (char)1}; + char d[] = {(char)-7, (char)201, (char)0, (char)0, (char)29, (char)0}; + char e[] = {(char)84, (char)69, (char)0, (char)0, (char)28, (char)0}; + + fN(f_a, a, 1); + fN(f_b, b, 0); + fN(f_d, d, 102); + fN2(f_e, e, -2); + fN(f_c, c, 0); + fN(f_a, a, -1); + fN(f_d, d, 101); + fN(f_e, e, -2); + fN(f_e, e, 2); + fN2(f_e, e, 2); + + return (0); +} |