Print this page
4474 DTrace Userland CTF Support
4475 DTrace userland Keyword
4476 DTrace tests should be better citizens
4479 pid provider types
4480 dof emulation missing checks
Reviewed by: Bryan Cantrill <bryan@joyent.com>

*** 21,30 **** --- 21,34 ---- */ /* * Copyright (c) 2003, 2010, Oracle and/or its affiliates. All rights reserved. */ + /* + * Copyright (c) 2013 by Delphix. All rights reserved. + * Copyright (c) 2013, Joyent, Inc. All rights reserved. + */ #include <string.h> #include <stdlib.h> #include <stdio.h> #include <assert.h>
*** 58,74 **** * S4 - D control line scan (locate control directives only and invoke S3) */ %} %e 1500 /* maximum nodes */ ! %p 3700 /* maximum positions */ %n 600 /* maximum states */ %s S0 S1 S2 S3 S4 RGX_AGG "@"[a-zA-Z_][0-9a-zA-Z_]* RGX_PSPEC [-$:a-zA-Z_.?*\\\[\]!][-$:0-9a-zA-Z_.`?*\\\[\]!]* RGX_IDENT [a-zA-Z_`][0-9a-zA-Z_`]* RGX_INT ([0-9]+|0[xX][0-9A-Fa-f]+)[uU]?[lL]?[lL]? RGX_FP ([0-9]+("."?)[0-9]*|"."[0-9]+)((e|E)("+"|-)?[0-9]+)?[fFlL]? RGX_WS [\f\n\r\t\v ] RGX_STR ([^"\\\n]|\\[^"\n]|\\\")* --- 62,82 ---- * S4 - D control line scan (locate control directives only and invoke S3) */ %} %e 1500 /* maximum nodes */ ! %p 4900 /* maximum positions */ %n 600 /* maximum states */ + %a 3000 /* maximum transitions */ %s S0 S1 S2 S3 S4 RGX_AGG "@"[a-zA-Z_][0-9a-zA-Z_]* RGX_PSPEC [-$:a-zA-Z_.?*\\\[\]!][-$:0-9a-zA-Z_.`?*\\\[\]!]* + RGX_ALTIDENT [a-zA-Z_][0-9a-zA-Z_]* + RGX_LMID LM[0-9a-fA-F]+` + RGX_MOD_IDENT [a-zA-Z_`][0-9a-z.A-Z_`]*` RGX_IDENT [a-zA-Z_`][0-9a-zA-Z_`]* RGX_INT ([0-9]+|0[xX][0-9A-Fa-f]+)[uU]?[lL]?[lL]? RGX_FP ([0-9]+("."?)[0-9]*|"."[0-9]+)((e|E)("+"|-)?[0-9]+)?[fFlL]? RGX_WS [\f\n\r\t\v ] RGX_STR ([^"\\\n]|\\[^"\n]|\\\")*
*** 134,143 **** --- 142,152 ---- <S0>this return (DT_KEY_THIS); <S0>translator return (DT_KEY_XLATOR); <S0>typedef return (DT_KEY_TYPEDEF); <S0>union return (DT_KEY_UNION); <S0>unsigned return (DT_KEY_UNSIGNED); + <S0>userland return (DT_KEY_USERLAND); <S0>void return (DT_KEY_VOID); <S0>volatile return (DT_KEY_VOLATILE); <S0>while return (DT_KEY_WHILE); <S0>xlate return (DT_TOK_XLATE);
*** 312,322 **** yyintdecimal = 1; return (DT_TOK_INT); } ! <S0>{RGX_IDENT} { return (id_or_type(yytext)); } <S0>{RGX_AGG} { if ((yylval.l_str = strdup(yytext)) == NULL) --- 321,333 ---- yyintdecimal = 1; return (DT_TOK_INT); } ! <S0>{RGX_IDENT} | ! <S0>{RGX_MOD_IDENT}{RGX_IDENT} | ! <S0>{RGX_MOD_IDENT} { return (id_or_type(yytext)); } <S0>{RGX_AGG} { if ((yylval.l_str = strdup(yytext)) == NULL)