You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by sm...@apache.org on 2008/01/10 10:13:17 UTC

svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Author: smishura
Date: Thu Jan 10 01:12:41 2008
New Revision: 610727

URL: http://svn.apache.org/viewvc?rev=610727&view=rev
Log:
Apply patch from HARMONY-5355:
[drlvm][object][testing] Change default references mode to uncompressed on x86-64

Modified:
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
    harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu Jan 10 01:12:41 2008
@@ -126,7 +126,7 @@
     use_lil_stubs = true;
 #ifdef REFS_USE_RUNTIME_SWITCH
 #ifdef POINTER64
-    compress_references = true;
+    compress_references = false;
 #else // POINTER64
     compress_references = false;
 #endif // POINTER64

Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
==============================================================================
--- harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp (original)
+++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp Thu Jan 10 01:12:41 2008
@@ -303,7 +303,7 @@
         properties.set_new("thread.soft_unreservation", "false");
 
 #ifdef REFS_USE_RUNTIME_SWITCH
-        properties.set_new("vm.compress_references", "true");
+        properties.set_new("vm.compress_references", "false");
 #endif
 
         int n_api_dll_files = sizeof(api_dll_files) / sizeof(char *);



Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Ilya Berezhniuk <il...@gmail.com>.
Stepan, thanks a lot!

2008/1/15, Stepan Mishura <st...@gmail.com>:
>
> On 1/15/08, Ilya Berezhniuk <il...@gmail.com> wrote:
> > Looks like all the regressions caused by uncompressed mode are now
> detected.
> >
> > There are 2 problems only:
> > 1) GC_CC doesn't support uncompressed references mode. So all the tests
> > started with GC_CC are failed.
> >
> > 2) JIT fires an assertion in magics generation
> > (VMInterface::areReferencesCompressed() in helper_inliner.cpp:207) when
> > running in server mode.
> > I've checked on the regression tests failed because of uncompressed
> mode:
> > simply commenting this assert makes all these tests passed.
> >
> > Thus I think the patch can now be reverted to set compressed mode by
> > default.
>
> Reverted at r612006.
>
> -Stepan.
>
> > All failures can be reproduced with VM property.
> >
> > Thanks,
> > Ilya.
> >
> > 2008/1/10, Ilya Berezhniuk <il...@gmail.com>:
> > >
> > > Generally JIT is ready for uncompressed+server mode, because it was
> tested
> > > a bit.
> > > Probably those tests touch the code which is not used usually, or some
> > > changes were checked in after testing in this mode.
> > > But I hope these problems in JIT can be fixed easily.
> > >
> > > I agree with Mikhail; as uncompressed mode was set by default for
> testing
> > > purpose, we'll revert the patch after gathering more bug statistics.
> > >
> > > Thanks,
> > > Ilya.
> > >
> > > 2008/1/10, Mikhail Loenko < mloenko@gmail.com>:
> > > >
> > > > We should revert it once we have more testing results. When we know
> > > > all the failures we can continue bugfix for the uncompressed mode
> > > >
> > > > 2008/1/10, Gregory Shimansky <gs...@apache.org>:
> > > > > Hello
> > > > >
> > > > > This switch to uncompressed references by default broke several
> > > > > regression tests that run on JIT in server mode. For example
> running
> > > > > test for H3228 crashes on assertion in JIT:
> > > > >
> > > > > #0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
> > > > > #1  0x00002b599268b060 in abort () from /lib64/libc.so.6
> > > > > #2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
> > > > > #3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run
> (this=0xfd9fd0)
> > > > at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
> > > >
> > > > > #4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run
> > > > > (this=0xfdef88, irm=@0xf4cc80) at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
> > > >
> > > > > #5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
> > > > > #6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
> > > > > #7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440)
> at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
> > > >
> > > > > #8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod
> > > > > (cc=0x42410440) at
> > > > >
> > > >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
> > > > > <snip more stack frames>
> > > > >
> > > > > Looking at the helper_inliner.cpp:207 I see the following code:
> > > > >
> > > > > #ifdef _EM64T_
> > > > >     assert(VMInterface::areReferencesCompressed());
> > > > > #endif
> > > > >
> > > > > which probably means that it is just not ready for uncompressed
> > > > > references mode. I want to ask JIT developers, whether it is easy
> to
> > > > > quickly fix this, or should we revert switching to uncompressed
> > > > > references as the default mode?
> > > > >
> > > > > smishura@apache.org said the following on 10.01.2008 12:13:
> > > > > > Author: smishura
> > > > > > Date: Thu Jan 10 01:12:41 2008
> > > > > > New Revision: 610727
> > > > > >
> > > > > > URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> > > > > > Log:
> > > > > > Apply patch from HARMONY-5355:
> > > > > > [drlvm][object][testing] Change default references mode to
> > > > uncompressed on x86-64
> > > > > >
> > > > > > Modified:
> > > > > >
> > > >
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > > >
> > > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > > > >
> > > > > > Modified:
> > > >
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > > > URL:
> http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > > >
> > > > > >
> > > >
> ==============================================================================
> > > > > > ---
> > > >
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > (original)
> > > > > > +++
> > > >
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu
> > > > Jan 10 01:12:41 2008
> > > > > > @@ -126,7 +126,7 @@
> > > > > >      use_lil_stubs = true;
> > > > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > > > >  #ifdef POINTER64
> > > > > > -    compress_references = true;
> > > > > > +    compress_references = false;
> > > > > >  #else // POINTER64
> > > > > >      compress_references = false;
> > > > > >  #endif // POINTER64
> > > > > >
> > > > > > Modified:
> > > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > > > > URL:
> http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > > >
> > > > > >
> > > >
> ==============================================================================
> > > > > > ---
> > > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> (original)
> > > > > > +++
> > > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> Thu Jan 10
> > > > 01:12:41 2008
> > > > > > @@ -303,7 +303,7 @@
> > > > > >          properties.set_new("thread.soft_unreservation",
> "false");
> > > > > >
> > > > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > > > > -        properties.set_new ("vm.compress_references", "true");
> > > > > > +        properties.set_new("vm.compress_references", "false");
> > > > > >  #endif
> > > > > >
> > > > > >          int n_api_dll_files = sizeof(api_dll_files) /
> sizeof(char
> > > > *);
>

Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Stepan Mishura <st...@gmail.com>.
On 1/15/08, Ilya Berezhniuk <il...@gmail.com> wrote:
> Looks like all the regressions caused by uncompressed mode are now detected.
>
> There are 2 problems only:
> 1) GC_CC doesn't support uncompressed references mode. So all the tests
> started with GC_CC are failed.
>
> 2) JIT fires an assertion in magics generation
> (VMInterface::areReferencesCompressed() in helper_inliner.cpp:207) when
> running in server mode.
> I've checked on the regression tests failed because of uncompressed mode:
> simply commenting this assert makes all these tests passed.
>
> Thus I think the patch can now be reverted to set compressed mode by
> default.

Reverted at r612006.

-Stepan.

> All failures can be reproduced with VM property.
>
> Thanks,
> Ilya.
>
> 2008/1/10, Ilya Berezhniuk <il...@gmail.com>:
> >
> > Generally JIT is ready for uncompressed+server mode, because it was tested
> > a bit.
> > Probably those tests touch the code which is not used usually, or some
> > changes were checked in after testing in this mode.
> > But I hope these problems in JIT can be fixed easily.
> >
> > I agree with Mikhail; as uncompressed mode was set by default for testing
> > purpose, we'll revert the patch after gathering more bug statistics.
> >
> > Thanks,
> > Ilya.
> >
> > 2008/1/10, Mikhail Loenko < mloenko@gmail.com>:
> > >
> > > We should revert it once we have more testing results. When we know
> > > all the failures we can continue bugfix for the uncompressed mode
> > >
> > > 2008/1/10, Gregory Shimansky <gs...@apache.org>:
> > > > Hello
> > > >
> > > > This switch to uncompressed references by default broke several
> > > > regression tests that run on JIT in server mode. For example running
> > > > test for H3228 crashes on assertion in JIT:
> > > >
> > > > #0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
> > > > #1  0x00002b599268b060 in abort () from /lib64/libc.so.6
> > > > #2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
> > > > #3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run (this=0xfd9fd0)
> > > at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
> > >
> > > > #4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run
> > > > (this=0xfdef88, irm=@0xf4cc80) at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
> > >
> > > > #5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
> > > > #6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
> > > > #7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440) at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
> > >
> > > > #8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod
> > > > (cc=0x42410440) at
> > > >
> > > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
> > > > <snip more stack frames>
> > > >
> > > > Looking at the helper_inliner.cpp:207 I see the following code:
> > > >
> > > > #ifdef _EM64T_
> > > >     assert(VMInterface::areReferencesCompressed());
> > > > #endif
> > > >
> > > > which probably means that it is just not ready for uncompressed
> > > > references mode. I want to ask JIT developers, whether it is easy to
> > > > quickly fix this, or should we revert switching to uncompressed
> > > > references as the default mode?
> > > >
> > > > smishura@apache.org said the following on 10.01.2008 12:13:
> > > > > Author: smishura
> > > > > Date: Thu Jan 10 01:12:41 2008
> > > > > New Revision: 610727
> > > > >
> > > > > URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> > > > > Log:
> > > > > Apply patch from HARMONY-5355:
> > > > > [drlvm][object][testing] Change default references mode to
> > > uncompressed on x86-64
> > > > >
> > > > > Modified:
> > > > >
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > >
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > > >
> > > > > Modified:
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > >
> > > > >
> > > ==============================================================================
> > > > > ---
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > (original)
> > > > > +++
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu
> > > Jan 10 01:12:41 2008
> > > > > @@ -126,7 +126,7 @@
> > > > >      use_lil_stubs = true;
> > > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > > >  #ifdef POINTER64
> > > > > -    compress_references = true;
> > > > > +    compress_references = false;
> > > > >  #else // POINTER64
> > > > >      compress_references = false;
> > > > >  #endif // POINTER64
> > > > >
> > > > > Modified:
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > > > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > >
> > > > >
> > > ==============================================================================
> > > > > ---
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp (original)
> > > > > +++
> > > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp Thu Jan 10
> > > 01:12:41 2008
> > > > > @@ -303,7 +303,7 @@
> > > > >          properties.set_new("thread.soft_unreservation", "false");
> > > > >
> > > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > > > -        properties.set_new ("vm.compress_references", "true");
> > > > > +        properties.set_new("vm.compress_references", "false");
> > > > >  #endif
> > > > >
> > > > >          int n_api_dll_files = sizeof(api_dll_files) / sizeof(char
> > > *);

Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Ilya Berezhniuk <il...@gmail.com>.
Looks like all the regressions caused by uncompressed mode are now detected.

There are 2 problems only:
1) GC_CC doesn't support uncompressed references mode. So all the tests
started with GC_CC are failed.

2) JIT fires an assertion in magics generation
(VMInterface::areReferencesCompressed() in helper_inliner.cpp:207) when
running in server mode.
I've checked on the regression tests failed because of uncompressed mode:
simply commenting this assert makes all these tests passed.

Thus I think the patch can now be reverted to set compressed mode by
default.
All failures can be reproduced with VM property.

Thanks,
Ilya.

2008/1/10, Ilya Berezhniuk <il...@gmail.com>:
>
> Generally JIT is ready for uncompressed+server mode, because it was tested
> a bit.
> Probably those tests touch the code which is not used usually, or some
> changes were checked in after testing in this mode.
> But I hope these problems in JIT can be fixed easily.
>
> I agree with Mikhail; as uncompressed mode was set by default for testing
> purpose, we'll revert the patch after gathering more bug statistics.
>
> Thanks,
> Ilya.
>
> 2008/1/10, Mikhail Loenko < mloenko@gmail.com>:
> >
> > We should revert it once we have more testing results. When we know
> > all the failures we can continue bugfix for the uncompressed mode
> >
> > 2008/1/10, Gregory Shimansky <gs...@apache.org>:
> > > Hello
> > >
> > > This switch to uncompressed references by default broke several
> > > regression tests that run on JIT in server mode. For example running
> > > test for H3228 crashes on assertion in JIT:
> > >
> > > #0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
> > > #1  0x00002b599268b060 in abort () from /lib64/libc.so.6
> > > #2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
> > > #3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run (this=0xfd9fd0)
> > at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
> >
> > > #4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run
> > > (this=0xfdef88, irm=@0xf4cc80) at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
> >
> > > #5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
> > > #6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
> > > #7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440) at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
> >
> > > #8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod
> > > (cc=0x42410440) at
> > >
> > /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
> > > <snip more stack frames>
> > >
> > > Looking at the helper_inliner.cpp:207 I see the following code:
> > >
> > > #ifdef _EM64T_
> > >     assert(VMInterface::areReferencesCompressed());
> > > #endif
> > >
> > > which probably means that it is just not ready for uncompressed
> > > references mode. I want to ask JIT developers, whether it is easy to
> > > quickly fix this, or should we revert switching to uncompressed
> > > references as the default mode?
> > >
> > > smishura@apache.org said the following on 10.01.2008 12:13:
> > > > Author: smishura
> > > > Date: Thu Jan 10 01:12:41 2008
> > > > New Revision: 610727
> > > >
> > > > URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> > > > Log:
> > > > Apply patch from HARMONY-5355:
> > > > [drlvm][object][testing] Change default references mode to
> > uncompressed on x86-64
> > > >
> > > > Modified:
> > > >
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > >
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > >
> > > > Modified:
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> >
> > > >
> > ==============================================================================
> > > > ---
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > (original)
> > > > +++
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu
> > Jan 10 01:12:41 2008
> > > > @@ -126,7 +126,7 @@
> > > >      use_lil_stubs = true;
> > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > >  #ifdef POINTER64
> > > > -    compress_references = true;
> > > > +    compress_references = false;
> > > >  #else // POINTER64
> > > >      compress_references = false;
> > > >  #endif // POINTER64
> > > >
> > > > Modified:
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> >
> > > >
> > ==============================================================================
> > > > ---
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp (original)
> > > > +++
> > harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp Thu Jan 10
> > 01:12:41 2008
> > > > @@ -303,7 +303,7 @@
> > > >          properties.set_new("thread.soft_unreservation", "false");
> > > >
> > > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > > -        properties.set_new ("vm.compress_references", "true");
> > > > +        properties.set_new("vm.compress_references", "false");
> > > >  #endif
> > > >
> > > >          int n_api_dll_files = sizeof(api_dll_files) / sizeof(char
> > *);
> > > >
> > > >
> > >
> > >
> >
>
>

Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Ilya Berezhniuk <il...@gmail.com>.
Generally JIT is ready for uncompressed+server mode, because it was tested a
bit.
Probably those tests touch the code which is not used usually, or some
changes were checked in after testing in this mode.
But I hope these problems in JIT can be fixed easily.

I agree with Mikhail; as uncompressed mode was set by default for testing
purpose, we'll revert the patch after gathering more bug statistics.

Thanks,
Ilya.

2008/1/10, Mikhail Loenko <ml...@gmail.com>:
>
> We should revert it once we have more testing results. When we know
> all the failures we can continue bugfix for the uncompressed mode
>
> 2008/1/10, Gregory Shimansky <gs...@apache.org>:
> > Hello
> >
> > This switch to uncompressed references by default broke several
> > regression tests that run on JIT in server mode. For example running
> > test for H3228 crashes on assertion in JIT:
> >
> > #0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
> > #1  0x00002b599268b060 in abort () from /lib64/libc.so.6
> > #2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
> > #3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run (this=0xfd9fd0) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
> > #4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run
> > (this=0xfdef88, irm=@0xf4cc80) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
> > #5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
> > #6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
> > #7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
> > #8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod
> > (cc=0x42410440) at
> >
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
> > <snip more stack frames>
> >
> > Looking at the helper_inliner.cpp:207 I see the following code:
> >
> > #ifdef _EM64T_
> >     assert(VMInterface::areReferencesCompressed());
> > #endif
> >
> > which probably means that it is just not ready for uncompressed
> > references mode. I want to ask JIT developers, whether it is easy to
> > quickly fix this, or should we revert switching to uncompressed
> > references as the default mode?
> >
> > smishura@apache.org said the following on 10.01.2008 12:13:
> > > Author: smishura
> > > Date: Thu Jan 10 01:12:41 2008
> > > New Revision: 610727
> > >
> > > URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> > > Log:
> > > Apply patch from HARMONY-5355:
> > > [drlvm][object][testing] Change default references mode to
> uncompressed on x86-64
> > >
> > > Modified:
> > >
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > >     harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > >
> > > Modified:
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > > URL:
> http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > >
> ==============================================================================
> > > ---
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> (original)
> > > +++
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu
> Jan 10 01:12:41 2008
> > > @@ -126,7 +126,7 @@
> > >      use_lil_stubs = true;
> > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > >  #ifdef POINTER64
> > > -    compress_references = true;
> > > +    compress_references = false;
> > >  #else // POINTER64
> > >      compress_references = false;
> > >  #endif // POINTER64
> > >
> > > Modified:
> harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > > URL:
> http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > >
> ==============================================================================
> > > --- harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> (original)
> > > +++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> Thu Jan 10 01:12:41 2008
> > > @@ -303,7 +303,7 @@
> > >          properties.set_new("thread.soft_unreservation", "false");
> > >
> > >  #ifdef REFS_USE_RUNTIME_SWITCH
> > > -        properties.set_new("vm.compress_references", "true");
> > > +        properties.set_new("vm.compress_references", "false");
> > >  #endif
> > >
> > >          int n_api_dll_files = sizeof(api_dll_files) / sizeof(char *);
> > >
> > >
> >
> >
>

Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Mikhail Loenko <ml...@gmail.com>.
We should revert it once we have more testing results. When we know
all the failures we can continue bugfix for the uncompressed mode

2008/1/10, Gregory Shimansky <gs...@apache.org>:
> Hello
>
> This switch to uncompressed references by default broke several
> regression tests that run on JIT in server mode. For example running
> test for H3228 crashes on assertion in JIT:
>
> #0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
> #1  0x00002b599268b060 in abort () from /lib64/libc.so.6
> #2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
> #3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run (this=0xfd9fd0) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
> #4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run
> (this=0xfdef88, irm=@0xf4cc80) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
> #5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
> #6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
> #7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
> #8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod
> (cc=0x42410440) at
> /nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
> <snip more stack frames>
>
> Looking at the helper_inliner.cpp:207 I see the following code:
>
> #ifdef _EM64T_
>     assert(VMInterface::areReferencesCompressed());
> #endif
>
> which probably means that it is just not ready for uncompressed
> references mode. I want to ask JIT developers, whether it is easy to
> quickly fix this, or should we revert switching to uncompressed
> references as the default mode?
>
> smishura@apache.org said the following on 10.01.2008 12:13:
> > Author: smishura
> > Date: Thu Jan 10 01:12:41 2008
> > New Revision: 610727
> >
> > URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> > Log:
> > Apply patch from HARMONY-5355:
> > [drlvm][object][testing] Change default references mode to uncompressed on x86-64
> >
> > Modified:
> >     harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> >     harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> >
> > Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > ==============================================================================
> > --- harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp (original)
> > +++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu Jan 10 01:12:41 2008
> > @@ -126,7 +126,7 @@
> >      use_lil_stubs = true;
> >  #ifdef REFS_USE_RUNTIME_SWITCH
> >  #ifdef POINTER64
> > -    compress_references = true;
> > +    compress_references = false;
> >  #else // POINTER64
> >      compress_references = false;
> >  #endif // POINTER64
> >
> > Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> > URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> > ==============================================================================
> > --- harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp (original)
> > +++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp Thu Jan 10 01:12:41 2008
> > @@ -303,7 +303,7 @@
> >          properties.set_new("thread.soft_unreservation", "false");
> >
> >  #ifdef REFS_USE_RUNTIME_SWITCH
> > -        properties.set_new("vm.compress_references", "true");
> > +        properties.set_new("vm.compress_references", "false");
> >  #endif
> >
> >          int n_api_dll_files = sizeof(api_dll_files) / sizeof(char *);
> >
> >
>
>

Re: svn commit: r610727 - in /harmony/enhanced/drlvm/trunk/vm/vmcore/src: class_support/Environment.cpp init/vm_properties.cpp

Posted by Gregory Shimansky <gs...@apache.org>.
Hello

This switch to uncompressed references by default broke several 
regression tests that run on JIT in server mode. For example running 
test for H3228 crashes on assertion in JIT:

#0  0x00002b5992689b75 in raise () from /lib64/libc.so.6
#1  0x00002b599268b060 in abort () from /lib64/libc.so.6
#2  0x00002b5992683246 in __assert_fail () from /lib64/libc.so.6
#3  0x00002aaaad23ab70 in Jitrino::HelperInliner::run (this=0xfd9fd0) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:207
#4  0x00002aaaad23b808 in Jitrino::HelperInlinerSession::_run 
(this=0xfdef88, irm=@0xf4cc80) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/helper_inliner.cpp:200
#5  0x00002aaaad27fb31 in Jitrino::OptPass::run (this=0xfdef88) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/optimizer/optpass.cpp:62
#6  0x00002aaaad137b0d in Jitrino::runPipeline (c=0x42410440) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:224
#7  0x00002aaaad137ba4 in Jitrino::compileMethod (cc=0x42410440) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:241
#8  0x00002aaaad137c54 in Jitrino::Jitrino::CompileMethod 
(cc=0x42410440) at 
/nfs/ims/proj/drl/mrt2/users/gregory/em64t/trunk/working_vm/vm/jitrino/src/main/Jitrino.cpp:258
<snip more stack frames>

Looking at the helper_inliner.cpp:207 I see the following code:

#ifdef _EM64T_
     assert(VMInterface::areReferencesCompressed());
#endif

which probably means that it is just not ready for uncompressed 
references mode. I want to ask JIT developers, whether it is easy to 
quickly fix this, or should we revert switching to uncompressed 
references as the default mode?

smishura@apache.org said the following on 10.01.2008 12:13:
> Author: smishura
> Date: Thu Jan 10 01:12:41 2008
> New Revision: 610727
> 
> URL: http://svn.apache.org/viewvc?rev=610727&view=rev
> Log:
> Apply patch from HARMONY-5355:
> [drlvm][object][testing] Change default references mode to uncompressed on x86-64
> 
> Modified:
>     harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
>     harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> 
> Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp
> URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp?rev=610727&r1=610726&r2=610727&view=diff
> ==============================================================================
> --- harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp (original)
> +++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/class_support/Environment.cpp Thu Jan 10 01:12:41 2008
> @@ -126,7 +126,7 @@
>      use_lil_stubs = true;
>  #ifdef REFS_USE_RUNTIME_SWITCH
>  #ifdef POINTER64
> -    compress_references = true;
> +    compress_references = false;
>  #else // POINTER64
>      compress_references = false;
>  #endif // POINTER64
> 
> Modified: harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp
> URL: http://svn.apache.org/viewvc/harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp?rev=610727&r1=610726&r2=610727&view=diff
> ==============================================================================
> --- harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp (original)
> +++ harmony/enhanced/drlvm/trunk/vm/vmcore/src/init/vm_properties.cpp Thu Jan 10 01:12:41 2008
> @@ -303,7 +303,7 @@
>          properties.set_new("thread.soft_unreservation", "false");
>  
>  #ifdef REFS_USE_RUNTIME_SWITCH
> -        properties.set_new("vm.compress_references", "true");
> +        properties.set_new("vm.compress_references", "false");
>  #endif
>  
>          int n_api_dll_files = sizeof(api_dll_files) / sizeof(char *);
> 
>