mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-03-05 00:02:37 +00:00

> Igor Bukanov wrote: > > >>Norris Boyd wrote: >> >> >>>The intention was to keep classfile and JavaAdapter optional. Those >>>dependencies crept in. We can use Invoker optionally--perhaps I should do >>>some performance numbers to see if it's worth it. >>> >>I implemented that patch, it splits Invoker.java into Invoker.java and >>its implementation in optimizer/InvokerImpl.java The reason to put it >>into optimizer package is that Invoker is very similar in spirit to >>NativeScript: it generates classes to speed up access and in this way >>there is no need to have separated option not to use: one can simply >>remove optimizer all together. >> > > Yes, that sounds great. > > >> >>I noticed during implementation that JavaAdapter.DefiningClassLoader and >>optimizer/JavaScriptClassLoader contains the same code, so maybe they >>can be moved to org.mozilla.classfile package under one name? >> > > Yes, that sounds like a good change too. Thanks for noticing that. The update is pretty messy: it touches FunctionObject which I changed to remove the special treatment of NativeWith in the previous patch, and it also add/removes files. Here is a description: DefiningClassLoader.java should go to org/mozilla/classfile. It is the same code that was in omj/optimizer/JavaScriptClassLoader.java with class rename and adding public attribute and correspondingly omj.optimizer/JavaScriptClassLoader.java should be removed. I guess it would be nice to preserve logs/history in CVS during the move. InvokerImpl.java should go to omj/optimizer. It is mostly what omj.Invoker was. invoker_changes_patch was generated via cvs diff -u Invoker.java JavaAdapter.java optimizer/Codegen.java and contains changes against the current CVS FunctionObject_invoker_patch was generated via diff -u ../../mozilla.1/javascript/FunctionObject.java FunctionObject.java and contains changes against that With patch. Igor