Debugging NPE during CanonicalizerPhase

Thomas Wuerthinger thomas.wuerthinger at oracle.com
Tue Aug 6 21:23:28 PDT 2013


True. Reading the error message "Exception while intercepting exception" throws me for a loop ;). - thomas

On Aug 6, 2013, at 8:48 PM, Gilles Duboscq <duboscq at ssw.jku.at> wrote:

> It would be nice to make FrameAccessNode.getDebugProperties a bit more
> robust also.
> 
> 
> On Wed, Aug 7, 2013 at 12:58 AM, Andreas Woess <Andreas.Woess at jku.at> wrote:
> 
>> Looks like a frame slot field in one of your nodes was null at compile
>> time and read as a constant value. I'll have a look at your code tomorrow.
>> 
>> We'll add better checks soon.
>> 
>> - andreas
>> 
>> On 07.08.2013 00:35, Stefan Marr wrote:
>>> Hi Thomas:
>>> 
>>> On 06 Aug 2013, at 08:56, Thomas Wuerthinger <
>> thomas.wuerthinger at oracle.com> wrote:
>>> 
>>>> Can you upload the IGV graph that is produced by the -G:+DumpOnError
>> flag? You should have "./mx.sh igv" running in parallel and then export the
>> graph as an XML file. Also, what is your stack trace?
>>> Well, I would like to, but the NPE getting into the way…
>>> 
>>> Here the two stack traces, once with and once without igv:
>>> 
>>> http://soft.vub.ac.be/~smarr/downloads/truffle/error-with-igv.txt
>>> http://soft.vub.ac.be/~smarr/downloads/truffle/error-without-igv.txt
>>> 
>>> That's the result with the very latest code from today.
>>> Invocation looks like this:
>>> ./mx.sh --vm server --debug build debug && ./mx.sh --debug --vm server
>> vm -G:+DumpOnError -Xbootclasspath/a:../som/build/classes som.vm.Universe
>> -cp ../som/Smalltalk ../som/Examples/Benchmarks/Loop.som
>>> 
>>> So far, I was only able to confirm that the null constant object really
>> appears only in the CanonicalizerPhase.
>>> I added checks on the whole graph for everything that happens before the
>> pass.
>>> 
>>> One question Michael had, and that I investigate is whether there was
>> anything related to TruffleSOM, and I think, the first null constant that
>> was a problem was actually not directly related to my code. But I haven't
>> had the chance to investigate further yet.
>>> 
>>> Thanks
>>> Stefan
>>> 
>>> PS: TruffleSOM can be build and tested like this:
>>> 
>>>  $ git clone https://github.com/smarr/TruffleSOM.git som
>>>  $ cd som
>>>  $ ant test
>>> 
>> 
>> 



More information about the graal-dev mailing list