dotgnu-pnet
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE : RE : [Pnet-developers] [bug #4430] Internal error: Could not verify


From: Yannis BRES
Subject: RE : RE : [Pnet-developers] [bug #4430] Internal error: Could not verify the code - br.s at verify_branch.c:393
Date: Tue, 29 Jul 2003 14:09:44 +0200

     Hi !
     Still more on this topic

>      Here is (I guess) interesting feedback concerning OUR 
> bug, stated as "Non-compatible types on stack depending on 
> path" by peverify.
>      So, very roughly, we had a branch of a conditional that 
> would exit (but the bytecode verifiers do not known that), 
> leave on the stack the object returned by our exit function, 
> and join another branch that leaves an integer on the top of 
> the stack.  Don't ask me why this is the only bytecode 
> compliance error in a >50MB IL file...
>      So, both ilverify and peverify do complain about that.  
> However, upon executing the invalid program, only the PNet 
> on-the-fly bytecode verifier complains, the MS one do not.  I 
> guess that this is because the branch that exits is never 
> taken for the input file I used.  I'm surprised that MS 
> bytecode verifier do not entirely check a method upon calling 
> it, and I guess that they do not completely JIT it as well.  
> Maybe they only work at the basic block level, which seems 
> interesting...
     My theory was wrong and the reality is much more simple :  peverify do
not accept the same class of program than the built-in BCV.  peverify
refuses programs in which converging blocks do no leave "compatible" stacks,
while the VM just tolerates that...

          Yannis


======================================================================
ESSI                                    http://www.essi.fr
Attache Temporaire d'Enseignement et de Recherche
----------------------------------------------------------------------
INRIA  -  Equipe Mimosa                 http://www-sop.inria.fr/mimosa
Collaborateur Exterieur                 +33 (4) 92 38 79 67
----------------------------------------------------------------------
+33 (6) 60 38 79 52                     http://www.yannis.bres.name
======================================================================



reply via email to

[Prev in Thread] Current Thread [Next in Thread]