Currently, `-XX:+PrintCompilation` does not print "hosted" JVMCI compilations (i.e. JVMCI compilations not triggered by the `CompilerBroker` but e.g. by the Truffle framework). On the other hand, if such an nmethod which results from a "hosted" compilation gets deoptimized, it will be printed by `-XX:+PrintCompilation` (with a compilation ID that doesn't appear anywhere before in the compilation log.
This behavior is confusing and should be fixed. Any nmethod installed in the code cache should be logged by `-XX:+PrintCompilation` no matter if its compilation was triggered by the `CompileBroker` or from another library through JVMCI.