You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by gs...@apache.org on 2008/03/21 15:00:42 UTC

svn commit: r639648 - /harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp

Author: gshimansky
Date: Fri Mar 21 07:00:34 2008
New Revision: 639648

URL: http://svn.apache.org/viewvc?rev=639648&view=rev
Log:
Applied patch from HARMONY-4723
[drlvm][thread] hythread_self_helper wastes edx register on Linux/ia32


Modified:
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp?rev=639648&r1=639647&r2=639648&view=diff
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/thread/helpers/thread_helpers_ia32.cpp Fri Mar 21 07:00:34 2008
@@ -54,15 +54,15 @@
 #   else
         unsigned offset = hythread_get_hythread_offset_in_tls();
         // gs register uses for tls acces on linux x86-32
-        //ss = mov(ss,  edx_opnd,  M_Base_Opnd(gs_reg, 0x00));
+        //ss = mov(ss,  eax_opnd,  M_Base_Opnd(gs_reg, 0x00));
         *ss++ = (char)0x65;
         *ss++ = (char)0x8b;
-        *ss++ = (char)0x15;
+        *ss++ = (char)0x05;
         *ss++ = (char)0x00;
         *ss++ = (char)0x00;
         *ss++ = (char)0x00;
         *ss++ = (char)0x00;
-        ss = mov(ss,  eax_opnd,  M_Base_Opnd(edx_reg, offset));
+        ss = mov(ss,  eax_opnd,  M_Base_Opnd(eax_reg, offset));
 #   endif
 #else
     ss = call(ss, (char *)hythread_self);