You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by mf...@apache.org on 2007/06/19 14:57:08 UTC
svn commit: r548711 - in /harmony/enhanced/drlvm/trunk/vm/jitrino:
config/em64t/server.emconf config/ia32/server.emconf
src/codegenerator/ia32/Ia32IRManager.cpp src/jet/cg_fld_arr.cpp
Author: mfursov
Date: Tue Jun 19 05:57:07 2007
New Revision: 548711
URL: http://svn.apache.org/viewvc?view=rev&rev=548711
Log:
Fix for H3652 regression
Fixing alloc/allocArray helpers inlining configuration in server.emconf
Modified:
harmony/enhanced/drlvm/trunk/vm/jitrino/config/em64t/server.emconf
harmony/enhanced/drlvm/trunk/vm/jitrino/config/ia32/server.emconf
harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32IRManager.cpp
harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_fld_arr.cpp
Modified: harmony/enhanced/drlvm/trunk/vm/jitrino/config/em64t/server.emconf
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/config/em64t/server.emconf?view=diff&rev=548711&r1=548710&r2=548711
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/jitrino/config/em64t/server.emconf (original)
+++ harmony/enhanced/drlvm/trunk/vm/jitrino/config/em64t/server.emconf Tue Jun 19 05:57:07 2007
@@ -99,12 +99,12 @@
-XX:jit.SD2_OPT.SD2_OPT_helper_inliner_pipeline.path=ssa
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.pipeline=SD2_OPT_helper_inliner_pipeline
--XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj=on
+-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj=off
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_className=org/apache/harmony/drlvm/gc_cc/GCHelper
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_methodName=alloc
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_hotnessPercent=1
--XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray=on
+-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray=off
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_className=org/apache/harmony/drlvm/gc_cc/GCHelper
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_methodName=allocArray
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_hotnessPercent=1
Modified: harmony/enhanced/drlvm/trunk/vm/jitrino/config/ia32/server.emconf
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/config/ia32/server.emconf?view=diff&rev=548711&r1=548710&r2=548711
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/jitrino/config/ia32/server.emconf (original)
+++ harmony/enhanced/drlvm/trunk/vm/jitrino/config/ia32/server.emconf Tue Jun 19 05:57:07 2007
@@ -100,12 +100,12 @@
-XX:jit.SD2_OPT.SD2_OPT_helper_inliner_pipeline.path=ssa
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.pipeline=SD2_OPT_helper_inliner_pipeline
--XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj=on
+-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj=off
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_className=org/apache/harmony/drlvm/gc_cc/GCHelper
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_methodName=alloc
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newObj_hotnessPercent=1
--XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray=on
+-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray=off
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_className=org/apache/harmony/drlvm/gc_cc/GCHelper
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_methodName=allocArray
-XX:jit.SD2_OPT.arg.optimizer.inline_helpers.newArray_hotnessPercent=1
Modified: harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32IRManager.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32IRManager.cpp?view=diff&rev=548711&r1=548710&r2=548711
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32IRManager.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/jitrino/src/codegenerator/ia32/Ia32IRManager.cpp Tue Jun 19 05:57:07 2007
@@ -2209,7 +2209,13 @@
Opnd * subOpnd=opnd->getMemOpndSubOpnd((MemOpndSubOpndKind)j);
if (subOpnd!=NULL){
Type * type=subOpnd->getType();
- if (type->isManagedPtr()||type->isObject()||type->isMethodPtr()||type->isVTablePtr()||type->isUnmanagedPtr()){
+ if (type->isManagedPtr() || type->isObject() || type->isMethodPtr() || type->isVTablePtr() || type->isUnmanagedPtr()
+#ifdef _EM64T_
+ || subOpnd->getRegName() == RegName_RSP/*SOE handler*/
+#else
+ || subOpnd->getRegName() == RegName_ESP/*SOE handler*/
+#endif
+ ){
if (properTypeSubOpnd!=NULL){
VERIFY_OUT("Heap operand " << opnd << " contains more than 1 sub-operands of type Object or ManagedPointer "<<::std::endl);
VERIFY_OUT("Opnd 1: " << properTypeSubOpnd << ::std::endl);
Modified: harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_fld_arr.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_fld_arr.cpp?view=diff&rev=548711&r1=548710&r2=548711
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_fld_arr.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/jitrino/src/jet/cg_fld_arr.cpp Tue Jun 19 05:57:07 2007
@@ -442,7 +442,7 @@
patch(br_off, ip(_loop));
} else {
Val& val = vstack(0, vis_mem(0));
- do_mov(where, val);
+ do_mov(where, val, fieldIsMagic);
if (is_big(jt)) {
Opnd where_hi(jt, where.base(), where.disp()+4,
where.index(), where.scale());