* parse.y: add dtrace probe for symbol create.

* probes.d: ditto

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39266 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
tenderlove 2013-02-16 03:16:05 +00:00
Родитель 733d65df5e
Коммит 53f97f1c27
3 изменённых файлов: 22 добавлений и 0 удалений

Просмотреть файл

@ -1,3 +1,9 @@
Sat Feb 16 12:15:20 2013 Aaron Patterson <aaron@tenderlovemaking.com>
* parse.y: add dtrace probe for symbol create.
* probes.d: ditto
Sat Feb 16 09:27:37 2013 Tanaka Akira <akr@fsij.org>
* ext/socket/extconf.rb: don't test sys/feature_tests.h which is not

Просмотреть файл

@ -10130,6 +10130,11 @@ static ID
register_symid_str(ID id, VALUE str)
{
OBJ_FREEZE(str);
if (RUBY_DTRACE_SYMBOL_CREATE_ENABLED()) {
RUBY_DTRACE_SYMBOL_CREATE(RSTRING_PTR(str), rb_sourcefile(), rb_sourceline());
}
st_add_direct(global_symbols.sym_id, (st_data_t)str, id);
st_add_direct(global_symbols.id_str, id, (st_data_t)str);
return id;

Просмотреть файл

@ -150,6 +150,17 @@ provider ruby {
*/
probe string__create(long, const char *, int);
/*
ruby:::symbol-create(string, filename, lineno);
This probe is fired when a Symbol is about to be allocated.
* `string` the contents of the symbol (string)
* `filename` the name of the file where the string is allocated (string)
* `lineno` the line number in the file where the string is allocated (int)
*/
probe symbol__create(const char *, const char *, int);
/*
ruby:::parse-begin(sourcefile, lineno);