The easiest way to support preview mode is likely to be to have additional flags present in package entries in the jimage file.
There is already a suitable u4 flag word, used in the "/packages/xxx/yyy" entries, which currently has the value 0 or 1 (determining if the package is "empty" or not for that module).
This flag appears to be completely unused however, and the last code referencing it was removed with JDK-8366255.
This means there is now scope to add new flags for supporting preview mode, and even change the order in which package entries are stored to optimize access.