Mercurial > hg > graal-compiler
comparison src/share/vm/c1x/c1x_VMExits.hpp @ 1941:79d04223b8a5
Added caching for resolved types and resolved fields.
This is crucial, because the local load elimination will lead to wrong results, if field equality (of two RiField objects with the same object and the same RiType) is not given. The caching makes sure that the default equals implementation is sufficient.
author | Thomas Wuerthinger <wuerthinger@ssw.jku.at> |
---|---|
date | Tue, 28 Dec 2010 18:33:26 +0100 |
parents | ef7761803480 |
children | 569d3fe7d65c |
comparison
equal
deleted
inserted
replaced
1940:e92a9a73324e | 1941:79d04223b8a5 |
---|---|
49 static oop createRiField(Handle holder, Handle name, Handle type, int index, TRAPS); | 49 static oop createRiField(Handle holder, Handle name, Handle type, int index, TRAPS); |
50 | 50 |
51 // public abstract RiType createRiType(long vmId, String name); | 51 // public abstract RiType createRiType(long vmId, String name); |
52 static oop createRiType(jlong vmId, Handle name, TRAPS); | 52 static oop createRiType(jlong vmId, Handle name, TRAPS); |
53 | 53 |
54 // public abstract RiType createRiTypeUnresolved(String name, long accessingClassVmId); | 54 // public abstract RiType createRiTypeUnresolved(String name); |
55 static oop createRiTypeUnresolved(Handle name, jlong accessingClassVmId, TRAPS); | 55 static oop createRiTypeUnresolved(Handle name, TRAPS); |
56 | 56 |
57 // public abstract RiConstantPool createRiConstantPool(long vmId); | 57 // public abstract RiConstantPool createRiConstantPool(long vmId); |
58 static oop createRiConstantPool(jlong vmId, TRAPS); | 58 static oop createRiConstantPool(jlong vmId, TRAPS); |
59 | 59 |
60 // public abstract RiType createRiTypePrimitive(int basicType); | 60 // public abstract RiType createRiTypePrimitive(int basicType); |