DTrace: Revert r249426

This change actually depends on r249367 which had to be reverted

Pointy Hat:	pfg
This commit is contained in:
Pedro F. Giffuni 2013-04-17 02:40:07 +00:00
parent 5685b37212
commit 2e654ff9df
17 changed files with 23 additions and 160 deletions

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
#pragma D option quiet #pragma D option quiet
@ -38,8 +36,3 @@ BEGIN
printf("%s\n", strjoin("", "")); printf("%s\n", strjoin("", ""));
exit(0); exit(0);
} }
BEGIN
{
exit(1);
}

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: This test reproduces the alignment error. * ASSERTION: This test reproduces the alignment error.
@ -41,10 +39,9 @@
BEGIN BEGIN
{ {
x = (int *)64; x = (int *) 64;
y = *x; y = *x;
trace(y); trace(y);
exit(0);
} }
ERROR ERROR

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: D pointers do not allow invalid pointer accesses. * ASSERTION: D pointers do not allow invalid pointer accesses.
@ -46,7 +44,6 @@ BEGIN
y = (int *) (x - 3300778156056); y = (int *) (x - 3300778156056);
*y = 3; *y = 3;
trace(*y); trace(*y);
exit(0);
} }
ERROR ERROR

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: D pointers do not allow invalid pointer accesses. * ASSERTION: D pointers do not allow invalid pointer accesses.
@ -41,10 +39,9 @@
BEGIN BEGIN
{ {
y = (int *)-33007; y = (int *) (-33007);
*y = 3; *y = 3;
trace(*y); trace(*y);
exit(0);
} }
ERROR ERROR

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: Demonstrating valid memory access. * ASSERTION: Demonstrating valid memory access.
@ -42,11 +40,10 @@
BEGIN BEGIN
{ {
x = (int *)alloca(sizeof (int)); x = (int *)alloca(sizeof (int));
printf("Address x: %x\n", (int)x); printf("Address x: %x\n", (int) x);
y = (int *)(x - 2); y = (int *) (x - 2);
*y = 3; *y = 3;
printf("Address y: %x\tValue: %d\n", (int)y, *y); printf("Address y: %x\tValue: %d\n", (int) y, *y);
exit(0);
} }
ERROR ERROR

View File

@ -1,29 +0,0 @@
/*
* CDDL HEADER START
*
* This file and its contents are supplied under the terms of the
* Common Development and Distribution License ("CDDL"), version 1.0.
* You may only use this file in accordance with the terms of version
* 1.0 of the CDDL.
*
* A full copy of the text of the CDDL should have accompanied this
* source. A copy of the CDDL is also available via the Internet at
* http://www.illumos.org/license/CDDL.
*
* CDDL HEADER END
*/
/*
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
BEGIN
{
@ = count();
print(@);
}
BEGIN
{
exit(0);
}

View File

@ -20,15 +20,10 @@
*/ */
/* /*
* Copyright (c) 2012 by Delphix. All rights reserved. * Copyright (c) 2011 by Delphix. All rights reserved.
*/ */
BEGIN BEGIN
{ {
print((void)`p0); print((void)`p0);
} }
BEGIN
{
exit(0);
}

View File

@ -20,15 +20,10 @@
*/ */
/* /*
* Copyright (c) 2012 by Delphix. All rights reserved. * Copyright (c) 2011 by Delphix. All rights reserved.
*/ */
BEGIN BEGIN
{ {
print(); print();
} }
BEGIN
{
exit(0);
}

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: * ASSERTION:
@ -41,7 +39,7 @@
*/ */
#pragma D option bufsize=32 #pragma D option bufsize=16
#pragma D option bufpolicy=ring #pragma D option bufpolicy=ring
#pragma D option statusrate=1nsec #pragma D option statusrate=1nsec

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: * ASSERTION:

View File

@ -24,9 +24,8 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: * ASSERTION:
@ -40,8 +39,3 @@ BEGIN
trace(); trace();
} }
BEGIN
{
exit(0);
}

View File

@ -1,29 +0,0 @@
/*
* CDDL HEADER START
*
* This file and its contents are supplied under the terms of the
* Common Development and Distribution License ("CDDL"), version 1.0.
* You may only use this file in accordance with the terms of version
* 1.0 of the CDDL.
*
* A full copy of the text of the CDDL should have accompanied this
* source. A copy of the CDDL is also available via the Internet at
* http://www.illumos.org/license/CDDL.
*
* CDDL HEADER END
*/
/*
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
BEGIN
{
@ = count();
trace(@);
}
BEGIN
{
exit(0);
}

View File

@ -24,9 +24,7 @@
* Use is subject to license terms. * Use is subject to license terms.
*/ */
/* #pragma ident "%Z%%M% %I% %E% SMI"
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/* /*
* ASSERTION: * ASSERTION:
@ -39,8 +37,3 @@ BEGIN
{ {
trace((void)`kmem_flags); trace((void)`kmem_flags);
} }
BEGIN
{
exit(0);
}

View File

@ -1,29 +0,0 @@
/*
* CDDL HEADER START
*
* This file and its contents are supplied under the terms of the
* Common Development and Distribution License ("CDDL"), version 1.0.
* You may only use this file in accordance with the terms of version
* 1.0 of the CDDL.
*
* A full copy of the text of the CDDL should have accompanied this
* source. A copy of the CDDL is also available via the Internet at
* http://www.illumos.org/license/CDDL.
*
* CDDL HEADER END
*/
/*
* Copyright (c) 2012 by Delphix. All rights reserved.
*/
/*
* Make sure we can scope types with modifiers.
*/
BEGIN
{
trace((D`int *)0);
trace((const D`int *)0);
exit(0);
}

View File

@ -675,12 +675,6 @@ dt_action_trace(dtrace_hdl_t *dtp, dt_node_t *dnp, dtrace_stmtdesc_t *sdp)
"trace( ) may not be applied to a dynamic expression\n"); "trace( ) may not be applied to a dynamic expression\n");
} }
if (dnp->dn_args->dn_kind == DT_NODE_AGG) {
dnerror(dnp->dn_args, istrace ? D_TRACE_AGG : D_PRINT_AGG,
"%s( ) may not be applied to an aggregation%s\n", act,
istrace ? "" : " -- did you mean printa()?");
}
dt_cg(yypcb, dnp->dn_args); dt_cg(yypcb, dnp->dn_args);
ap->dtad_difo = dt_as(yypcb); ap->dtad_difo = dt_as(yypcb);
ap->dtad_kind = DTRACEACT_DIFEXPR; ap->dtad_kind = DTRACEACT_DIFEXPR;

View File

@ -21,7 +21,6 @@
*/ */
/* /*
* Copyright 2005 Sun Microsystems, Inc. All rights reserved. * Copyright 2005 Sun Microsystems, Inc. All rights reserved.
* Copyright (c) 2012 by Delphix. All rights reserved.
* Use is subject to license terms. * Use is subject to license terms.
*/ */
@ -255,6 +254,11 @@ dt_decl_spec(ushort_t kind, char *name)
ddp->dd_kind = kind; ddp->dd_kind = kind;
ddp->dd_name = name; ddp->dd_name = name;
if (name != NULL && strchr(name, '`') != NULL) {
xyerror(D_DECL_SCOPE, "D scoping operator may not be used "
"in a type name\n");
}
return (dt_decl_check(ddp)); return (dt_decl_check(ddp));
} }

View File

@ -190,10 +190,8 @@ typedef enum {
D_PRINTA_AGGPROTO, /* printa() aggregation mismatch */ D_PRINTA_AGGPROTO, /* printa() aggregation mismatch */
D_TRACE_VOID, /* trace() argument has void type */ D_TRACE_VOID, /* trace() argument has void type */
D_TRACE_DYN, /* trace() argument has dynamic type */ D_TRACE_DYN, /* trace() argument has dynamic type */
D_TRACE_AGG, /* trace() argument is an aggregation */
D_PRINT_VOID, /* print() argument has void type */ D_PRINT_VOID, /* print() argument has void type */
D_PRINT_DYN, /* print() argument has dynamic type */ D_PRINT_DYN, /* print() argument has dynamic type */
D_PRINT_AGG, /* print() argument is an aggregation */
D_TRACEMEM_ADDR, /* tracemem() address bad type */ D_TRACEMEM_ADDR, /* tracemem() address bad type */
D_TRACEMEM_SIZE, /* tracemem() size bad type */ D_TRACEMEM_SIZE, /* tracemem() size bad type */
D_TRACEMEM_ARGS, /* tracemem() illegal number of args */ D_TRACEMEM_ARGS, /* tracemem() illegal number of args */