vm_core.h: export symbols of shared variables

vm_insnhelper.h: ditto.

All changes are for reducing changes required to introduce JIT compiler.
Unlike functions that can be inlined by header, those variables should
be shared with JIT-ed code. This will help reducing cost of rebase
against upstream.

[close GH-1720]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
k0kubun 2017-10-21 06:22:43 +00:00
Родитель d358972213
Коммит e6484a1530
2 изменённых файлов: 9 добавлений и 0 удалений

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

@ -1570,10 +1570,15 @@ VALUE rb_catch_protect(VALUE t, rb_block_call_func *func, VALUE data, enum ruby_
/* for thread */
#if RUBY_VM_THREAD_MODEL == 2
RUBY_SYMBOL_EXPORT_BEGIN
extern rb_thread_t *ruby_current_thread;
extern rb_vm_t *ruby_current_vm;
extern rb_event_flag_t ruby_vm_event_flags;
RUBY_SYMBOL_EXPORT_END
#define GET_VM() ruby_current_vm
#define GET_THREAD() ruby_current_thread

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

@ -12,8 +12,12 @@
#ifndef RUBY_INSNHELPER_H
#define RUBY_INSNHELPER_H
RUBY_SYMBOL_EXPORT_BEGIN
extern VALUE ruby_vm_const_missing_count;
RUBY_SYMBOL_EXPORT_END
#if VM_COLLECT_USAGE_DETAILS
#define COLLECT_USAGE_INSN(insn) vm_collect_usage_insn(insn)
#define COLLECT_USAGE_OPERAND(insn, n, op) vm_collect_usage_operand((insn), (n), ((VALUE)(op)))