Bug 1037871 - Enable Latin1 strings in SpiderMonkey. r=luke
authorJan de Mooij <jdemooij@mozilla.com>
Tue, 15 Jul 2014 08:21:40 +0200
changeset 215907 46b4e732a72e476582ec525d6b4b5dc146a655ac
parent 215906 45f825a8358716a2e4c73b90e8afdef6fd3ac4b8
child 215908 04651e89a0c4129dd5390385d5b2bbd3b26572ba
push id515
push userraliiev@mozilla.com
push dateMon, 06 Oct 2014 12:51:51 +0000
treeherdermozilla-release@267c7a481bef [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersluke
bugs1037871
milestone33.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1037871 - Enable Latin1 strings in SpiderMonkey. r=luke
js/src/shell/js.cpp
js/src/vm/String.cpp
js/src/vm/Xdr.h
--- a/js/src/shell/js.cpp
+++ b/js/src/shell/js.cpp
@@ -6313,17 +6313,17 @@ main(int argc, char **argv, char **envp)
         || !op.addBoolOption('\0', "no-fpu", "Pretend CPU does not support floating-point operations "
                              "to test JIT codegen (no-op on platforms other than x86).")
         || !op.addBoolOption('\0', "no-sse3", "Pretend CPU does not support SSE3 instructions and above "
                              "to test JIT codegen (no-op on platforms other than x86 and x64).")
         || !op.addBoolOption('\0', "no-sse4", "Pretend CPU does not support SSE4 instructions"
                              "to test JIT codegen (no-op on platforms other than x86 and x64).")
         || !op.addBoolOption('\0', "fuzzing-safe", "Don't expose functions that aren't safe for "
                              "fuzzers to call")
-        || !op.addBoolOption('\0', "latin1-strings", "Enable Latin1 strings (default: off)")
+        || !op.addBoolOption('\0', "latin1-strings", "Enable Latin1 strings (default: on)")
 #ifdef DEBUG
         || !op.addBoolOption('\0', "dump-entrained-variables", "Print variables which are "
                              "unnecessarily entrained by inner functions")
 #endif
 #ifdef JSGC_GENERATIONAL
         || !op.addBoolOption('\0', "no-ggc", "Disable Generational GC")
 #endif
         || !op.addIntOption('\0', "available-memory", "SIZE",
--- a/js/src/vm/String.cpp
+++ b/js/src/vm/String.cpp
@@ -876,17 +876,17 @@ AutoStableStringChars::initTwoByte(JSCon
     chars[s_->length()] = 0;
 
     state_ = TwoByte;
     ownsChars_ = true;
     twoByteChars_ = chars;
     return true;
 }
 
-bool js::EnableLatin1Strings = false;
+bool js::EnableLatin1Strings = true;
 
 #ifdef DEBUG
 void
 JSAtom::dump()
 {
     fprintf(stderr, "JSAtom* (%p) = ", (void *) this);
     this->JSString::dump();
 }
--- a/js/src/vm/Xdr.h
+++ b/js/src/vm/Xdr.h
@@ -23,17 +23,17 @@ namespace js {
  * versions.  If deserialization fails, the data should be invalidated if
  * possible.
  *
  * When you change this, run make_opcode_doc.py and copy the new output into
  * this wiki page:
  *
  *  https://developer.mozilla.org/en-US/docs/SpiderMonkey/Internals/Bytecode
  */
-static const uint32_t XDR_BYTECODE_VERSION = uint32_t(0xb973c0de - 176);
+static const uint32_t XDR_BYTECODE_VERSION = uint32_t(0xb973c0de - 177);
 
 class XDRBuffer {
   public:
     explicit XDRBuffer(JSContext *cx)
       : context(cx), base(nullptr), cursor(nullptr), limit(nullptr) { }
 
     JSContext *cx() const {
         return context;