This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Index: iseq.h | |
=================================================================== | |
--- iseq.h (revision 24504) | |
+++ iseq.h (working copy) | |
@@ -85,6 +85,7 @@ | |
int flip_cnt; | |
int label_no; | |
int node_level; | |
+ int last_line_traced; | |
const rb_compile_option_t *option; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Index: iseq.h | |
=================================================================== | |
--- iseq.h (revision 24493) | |
+++ iseq.h (working copy) | |
@@ -85,6 +85,7 @@ | |
int flip_cnt; | |
int label_no; | |
int node_level; | |
+ int last_line_traced; | |
const rb_compile_option_t *option; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* for GCC 3.4.x */ | |
#define TC_DISPATCH(insn) \ | |
if (UNLIKELY(th->event_flags) && RUBY_VM_NORMAL_ISEQ_P(REG_CFP->iseq) && UNLIKELY(REG_CFP->iseq->iseq_flag != NULL)) \ | |
{ \ | |
unsigned long pos = REG_CFP->pc - REG_CFP->iseq->iseq_encoded; \ | |
if (REG_CFP->iseq->iseq_flag[pos] & RUBY_EVENT_CALL) \ | |
EXEC_EVENT_HOOK(th, RUBY_EVENT_CALL, GET_SELF(), 0, 0); \ | |
if (REG_CFP->iseq->iseq_flag[pos] & RUBY_EVENT_LINE) \ | |
EXEC_EVENT_HOOK(th, RUBY_EVENT_LINE, GET_SELF(), 0, 0); \ | |
if (REG_CFP->iseq->iseq_flag[pos] & RUBY_EVENT_RETURN) \ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
int | |
rb_iseq_translate_threaded_code(rb_iseq_t *iseq) | |
{ | |
#if OPT_DIRECT_THREADED_CODE || OPT_CALL_THREADED_CODE | |
extern const void **rb_vm_get_insns_address_table(void); | |
#if OPT_DIRECT_THREADED_CODE | |
const void * const *table = rb_vm_get_insns_address_table(); | |
#else | |
const void * const *table = rb_vm_get_insns_address_table(); | |
#endif |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# This assumes you have the latest Ruby 1.9 installed via MacPorts: | |
# | |
# $ sudo port sync | |
# $ sudo port install ruby19 | |
# | |
# Make sure there are no trails of columnize, linecache, ruby-debug-base, ruby-debug, ruby-debug-ide, and ruby_core_source | |
for name in columnize linecache linecache19 ruby-debug-base ruby-debug-base19 ruby-debug ruby-debug19 ruby-debug-ide ruby_core_source | |
do | |
(gem1.9 list | grep ^$name >/dev/null) && sudo gem1.9 uninstall -a -x -I $name | |
find /opt/local/lib/ruby1.9/gems/1.9.1/gems -name "$name*" -type d -maxdepth 1 -print0 | sudo xargs -0 rm -rf |