mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
* gc.h (SET_MACHINE_STACK_END): add volatile for preventing
harmful optimization. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@38134 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
parent
5bdd03936c
commit
2ba9cdcee6
2 changed files with 7 additions and 2 deletions
|
@ -1,3 +1,8 @@
|
||||||
|
Sun Dec 2 06:02:00 2012 KOSAKI Motohiro <kosaki.motohiro@gmail.com>
|
||||||
|
|
||||||
|
* gc.h (SET_MACHINE_STACK_END): add volatile for preventing
|
||||||
|
harmful optimization.
|
||||||
|
|
||||||
Sun Dec 2 05:01:58 2012 Koichi Sasada <ko1@atdot.net>
|
Sun Dec 2 05:01:58 2012 Koichi Sasada <ko1@atdot.net>
|
||||||
|
|
||||||
* iseq.c (rb_iseq_line_trace_each): iterate `line' event only.
|
* iseq.c (rb_iseq_line_trace_each): iterate `line' event only.
|
||||||
|
|
4
gc.h
4
gc.h
|
@ -3,9 +3,9 @@
|
||||||
#define RUBY_GC_H 1
|
#define RUBY_GC_H 1
|
||||||
|
|
||||||
#if defined(__x86_64__) && defined(__GNUC__) && !defined(__native_client__)
|
#if defined(__x86_64__) && defined(__GNUC__) && !defined(__native_client__)
|
||||||
#define SET_MACHINE_STACK_END(p) __asm__("movq\t%%rsp, %0" : "=r" (*(p)))
|
#define SET_MACHINE_STACK_END(p) __asm__ volatile ("movq\t%%rsp, %0" : "=r" (*(p)))
|
||||||
#elif defined(__i386) && defined(__GNUC__) && !defined(__native_client__)
|
#elif defined(__i386) && defined(__GNUC__) && !defined(__native_client__)
|
||||||
#define SET_MACHINE_STACK_END(p) __asm__("movl\t%%esp, %0" : "=r" (*(p)))
|
#define SET_MACHINE_STACK_END(p) __asm__ volatile ("movl\t%%esp, %0" : "=r" (*(p)))
|
||||||
#else
|
#else
|
||||||
NOINLINE(void rb_gc_set_stack_end(VALUE **stack_end_p));
|
NOINLINE(void rb_gc_set_stack_end(VALUE **stack_end_p));
|
||||||
#define SET_MACHINE_STACK_END(p) rb_gc_set_stack_end(p)
|
#define SET_MACHINE_STACK_END(p) rb_gc_set_stack_end(p)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue