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);