From ab4e0ab45802926db03bb2d10b337fa3659bea63 Mon Sep 17 00:00:00 2001 From: yugui Date: Tue, 14 Jan 2014 02:32:45 +0000 Subject: * vm_exec.c (cfp): Fixes a SEGV issue in r44554. r11 can be broken by subroutine and sometimes causes SEGV at runtime. Use r13 instead. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- vm_exec.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'vm_exec.c') diff --git a/vm_exec.c b/vm_exec.c index 26b0be822b..3a29136b1e 100644 --- a/vm_exec.c +++ b/vm_exec.c @@ -47,7 +47,7 @@ vm_exec_core(rb_thread_t *th, VALUE initial) #if OPT_STACK_CACHING #if 0 -#elif __GNUC__ && __x86_64__ +#elif __GNUC__ && __x86_64__ && !defined(__native_client__) DECL_SC_REG(VALUE, a, "12"); DECL_SC_REG(VALUE, b, "13"); #else @@ -64,7 +64,7 @@ vm_exec_core(rb_thread_t *th, VALUE initial) #elif defined(__GNUC__) && defined(__x86_64__) DECL_SC_REG(VALUE *, pc, "14"); # if defined(__native_client__) - DECL_SC_REG(rb_control_frame_t *, cfp, "11"); + DECL_SC_REG(rb_control_frame_t *, cfp, "13"); # else DECL_SC_REG(rb_control_frame_t *, cfp, "15"); # endif -- cgit v1.2.3