Truffle update instructions?

Stefan Marr java at stefan-marr.de
Wed Apr 15 16:59:28 UTC 2015


Hi Gilles:

> On 15 Apr 2015, at 18:06, Gilles Duboscq <gilwooden at gmail.com> wrote:
> 
>> When List is executed like this: ./graal.sh -cp Smalltalk:Examples/Benchmarks/LanguageFeatures Examples/Benchmarks/BenchmarkHarness.som List 500 0 500
>> 
>> The situation is different.
>> The verification after canonicalization fails (after DominatorConditionalEliminationPhase).
>> A GuardProxyNode has a value() of null.
>> 
> This verification seems bogus, currently null is ok as a value() for GuardProxyNodes.
>>  
>> I added another graph.verify() before the call to `canonicalizer.apply(.)`, that one doesn’t fail.
>> So, it seems that there is something going on during canonicalization.
>> 
>> Any ideas how I could dig deeper into this?
>> 
> What happens if you just remove the value() != null assert in ProxyNode?

It is going further, but then fails in PEReadEliminationBlockState.java:118 on `assert !obj.isVirtual()`.
This object state references in its virtual field a ReturnException.
So, I guess that’s still the same issue. The ReturnException is a virtual instance, which I would expect, since we are compiling the complete method, and the exception should normally be turned into a simple return from the method.

Best regards
Stefan

-- 
Stefan Marr
INRIA Lille - Nord Europe
http://stefan-marr.de/research/





More information about the graal-dev mailing list