Re: [Aegisvm-devel] patches to apply to be able to run mauve
Status: Pre-Alpha
Brought to you by:
pwlfong
|
From: Philip F. <pw...@us...> - 2002-08-03 00:48:31
|
Hi On Wed, 31 Jul 2002, Gildas Bazin wrote: > > (1) I am not sure what the patch on interpret.c (invokeinterface code) > > is for. Would you mind to explain a bit more? As I understand > > from the JVM spec the narg operand only counts the arguments > > but not the objectref. Am I missing something? > > I think the JVM spec is not clear there. This is also what I understood at > first, but I have a testcase that proves the objectref is in fact included > in the count. Have a look at the attached java files and try them with and > without the patch, you'll see :) > (I myself used AE_DEBUG_INSTR to find out what was really going on.) Silly me. I checked the JVM spec again, and figured from Section 4.8.1 that your interpretation definitely right. In fact, when I check the cvs snapshot for release 0.1.0, this is exactly what I did. I then did some crazy restructuring, and finally lost track of my sense of reality.... I committed the attached patch to the cvs repository (it is basically your correction and your test files), with the following log entry: Bug fix: Incorrectly interpreted the counts operand of invokeinterface as the number of words for the arguments only (excluding the objectref). Fix and test cases contributed by Gildas Bazin <gb...@al...>. Philip -- Philip W. L. Fong pw...@us... The Aegis VM Project http://aegisvm.sourceforge.net The Aegis VM Project is an on-going effort to implement a lightweight, secure JVM. It will eventually feature a modular architecture, Proof Linking, that supports pluggable verification modules. |