Okay so the table section links (for address and size) should be weak references because otherwise these sections will never get freed. We can use references because the table will always have a link to all the sections. So when we are using it, we do not have to worry about our section references going away. But once the table is GCed it cannot be used anyway.
It would be cool to build SquirrelJME on my phone, although the lack of the Java compiler tools complicates things a bit. I think I could stub around it and still have it work (by calling system commands) although it would be a bit of an interesting thing. Maybe I could split the bootstrap so that it can use any compiler implementation? Or at least SquirrelJME's internal compiler system.
Big problem with this right now is that it distracts me from things. Also it would be complicated to rewrite the boot-process again anyway. I think it would be best for me to think about this again when I have a working Java code compiler. I mean once I have that, then bootstrapping SquirrelJME from any environment provided there is a C compiler would be easy. Because I can just do a snapshot of the run-time JAR and run it in RatufaCoat no problem. Of course I would need filesystem support and otherwise.
So when building the pool, the only time the pool is needed is in the minimizer and that should be simple really.
Actually I do not need to have the targetted pool, I can just directly use the double pool. Then I can do lookup at build time based on indexes, if it uses the master pool. So it would always be a sub pool.