By "Magic" I mean the methods which have semantics which are not expressed in pure Java.
I know all native methods are magic, in that their implementation is provided by the underlying runtime and not by Java bytecodes. 
Is the reverse true? Are all magic methods native, or are there some magic methods apparently implemented in pure Java, but with some extra help from some JVM-special-casing? 
The use case is that I want to modify the semantics of Java by instrumenting its bytecodes. All these magic methods are special cases which I will have to handle some way or another. The native ones are all obvious, but I was wondering if there are any unmarked magic methods I have to watch out and special case for.