Graal together with SubstractVM offer AOT compilation and is also being used by AMD for the GPGPU support targeted for Java 9, latest Java 10.
Truffle is more of a AST manipulation framework for nodes that can be fed into Graal for compilation.
Then there are those meta-circular JVMs like JikesRVM which are done in Java.