diff options
author | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-09-04 01:41:04 +0000 |
---|---|---|
committer | nobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2010-09-04 01:41:04 +0000 |
commit | 097d58a594984674475cd271fb206ca940e90552 (patch) | |
tree | 214a2222af8739ea1f09ade846b6461b06018c21 | |
parent | 8889aef16267f112e6ff7ca9184ff33bf789ce4f (diff) |
* load.c (ruby_init_ext): export for golfers.
* vm_core.h (rb_iseq_eval, rb_iseq_compile_with_option): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | load.c | 2 | ||||
-rw-r--r-- | vm_core.h | 13 |
3 files changed, 20 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Sat Sep 4 10:40:50 2010 Nobuyoshi Nakada <nobu@ruby-lang.org> + + * load.c (ruby_init_ext): export for golfers. + + * vm_core.h (rb_iseq_eval, rb_iseq_compile_with_option): ditto. + Sun May 23 17:29:41 2010 Yuki Sonoda (Yugui) <yugui@yugui.jp> * common.mk (capi): uses a timestamp file to get rid of @@ -644,7 +644,7 @@ init_ext_call(VALUE arg) return Qnil; } -void +RUBY_FUNC_EXPORTED void ruby_init_ext(const char *name, void (*init)(void)) { if (load_lock(name)) { @@ -483,12 +483,16 @@ typedef struct rb_thread_struct } rb_thread_t; /* iseq.c */ +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility push(default) +#endif VALUE rb_iseq_new(NODE*, VALUE, VALUE, VALUE, VALUE, VALUE); VALUE rb_iseq_new_top(NODE *node, VALUE name, VALUE filename, VALUE filepath, VALUE parent); VALUE rb_iseq_new_main(NODE *node, VALUE filename, VALUE filepath); VALUE rb_iseq_new_with_bopt(NODE*, VALUE, VALUE, VALUE, VALUE, VALUE, VALUE, VALUE); VALUE rb_iseq_new_with_opt(NODE*, VALUE, VALUE, VALUE, VALUE, VALUE, VALUE, const rb_compile_option_t*); VALUE rb_iseq_compile(VALUE src, VALUE file, VALUE line); +VALUE rb_iseq_compile_with_option(VALUE src, VALUE file, VALUE filepath, VALUE line, VALUE opt); VALUE rb_iseq_disasm(VALUE self); int rb_iseq_disasm_insn(VALUE str, VALUE *iseqval, size_t pos, rb_iseq_t *iseq, VALUE child); const char *ruby_node_name(int node); @@ -498,6 +502,9 @@ RUBY_EXTERN VALUE rb_cISeq; RUBY_EXTERN VALUE rb_cRubyVM; RUBY_EXTERN VALUE rb_cEnv; RUBY_EXTERN VALUE rb_mRubyVMFrozenCore; +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility pop +#endif /* each thread has this size stack : 128KB */ #define RUBY_VM_THREAD_STACK_SIZE (128 * 1024) @@ -621,10 +628,16 @@ extern void rb_vmdebug_stack_dump_raw(rb_thread_t *, rb_control_frame_t *); void rb_vm_bugreport(void); /* functions about thread/vm execution */ +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility push(default) +#endif VALUE rb_iseq_eval(VALUE iseqval); VALUE rb_iseq_eval_main(VALUE iseqval); void rb_enable_interrupt(void); void rb_disable_interrupt(void); +#if defined __GNUC__ && __GNUC__ >= 4 +#pragma GCC visibility pop +#endif int rb_thread_method_id_and_class(rb_thread_t *th, ID *idp, VALUE *klassp); VALUE rb_vm_invoke_proc(rb_thread_t *th, rb_proc_t *proc, VALUE self, |