gecko/content
Igor Bukanov 24b01abf6b bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke
The patch shrinks the API presented in jsxdrapi.h down to 4 functions to
encode/decode scripts and interpreted functions to/from the memory. The
newly introduced implementation header vm/Xdr.h replaces the former
JSXDRState with the template class XDRState parametrized by the enum
type with two constants, XDR_ENCODE and XDR_DECODE. This way a compiler
can fully eliminate the former runtime checks for the decoding/encoding
mode. As a drawback this required to explicitly instantiate the xdr
implementation as I do not want to put all the xdr code to header files.

The memory-only XDR allows to avoid coping filename and to-be-atomized
chars to a temporary buffer as the code can just access the buffer
directly. Another change is that new XDRScript takes as a parameter its
parent script. This allowed to avoid keeping filename in XDRState and
simplify the filename management.

Another change is the removal of JS_HAS_HDR. As CloneScript uses XDR to
copy a script, JS_HAS_XDR cannot be disabled.

--HG--
rename : js/src/jsxdrapi.cpp => js/src/vm/Xdr.cpp
2012-02-20 11:58:00 +01:00
..
base Bug 735031 - Make Fullscreen API work with DOMElements rather than only HTML Elements. r=cpearce,smaug 2012-03-24 17:37:04 +13:00
canvas Bug 696569 - Allow for non-premultiplied data for canvases - r=bjacob,joedrew 2012-03-23 15:10:50 -07:00
events Bug 734023 - Remove language arguments from nsIScriptGlobalObject methods, r=jst, f=ms2ger 2012-03-23 18:13:29 +01:00
html Bug 735031 - Make Fullscreen API work with DOMElements rather than only HTML Elements. r=cpearce,smaug 2012-03-24 17:37:04 +13:00
mathml/content Bug 722880 - Support for attribute width on mtable. r=karlt 2012-02-27 18:57:28 -05:00
media Bug 712836. Make MediaResources which have ended abnormally ineligible for cloning. r=cpearce 2012-03-20 20:55:40 +13:00
smil merge 2012-03-21 21:48:40 -07:00
svg Bug 736890 - Speed up building of layout/svg/base/src by cleaning up #include directives in its header files. r=dholbert. 2012-03-20 12:15:55 +00:00
test Bug 720208 - Implement DOM4 DOMException types and codes. r=smaug,ms2ger 2012-02-23 01:34:14 +01:00
xbl Bug 734023 - Remove language arguments from nsIScriptGlobalObject methods, r=jst, f=ms2ger 2012-03-23 18:13:29 +01:00
xml Bug 737417 part 1 - Split charset source constants out of nsIParser.h. r=smaug. 2012-03-22 16:42:42 +02:00
xslt Bug 738572 - #include nsIHTMLContentSink.h in fewer places. r=bzbarsky. 2012-03-23 17:21:44 +02:00
xtf Bug 702388 - Convert Makefiles to use |TEST_DIRS += foo| r=khuey 2012-02-04 17:32:24 +00:00
xul bug 737624 - memory-only encoding/decoding of scripts and functions. r=:luke 2012-02-20 11:58:00 +01:00
Makefile.in Bug 689884 - Skip Makefiles that are no-op or else only |DIRS = a_single_subdir|; r=khuey 2011-10-06 17:15:07 +01:00