It seems perm allocated objects does not need to be scanned by the GC. The behavior in the stock GC is that those objects are not marked, and not swept. They should not reference other objects -- if they do, the code that stores the objects is responsible to root the reference.
We should check if this is true, and if it is worthy for us to exploit.