Avoid class guard and object-layout guard
Closed this issue · 1 comments
smarr commented
In TruffleSOM, we have a relatively complex mechanism to avoid redundant guards.
An ObjectLayout implies a specific class. So, we should need to check both in the same compilation unit.
To minimize interpreter complexity, it might be worthwhile to give every object a object layout instead of a class.
Then, we can hopefully avoid multiple guards on the same object.
TruffleSOM has different guards for different types of objects.
Though, I think that's bad for interpreter speed.
Perhaps we get better results by putting the class into the object layout.