Commit Graph

92 Commits

Author SHA1 Message Date
Terrence Cole
d8d0f29e73 Bug 1017650 - Re-arrange the GC API include dependency ordering; r=jonco
--HG--
extra : rebase_source : bc27b7206c674ef2247169dd700b9fbf61e5bd74
2014-06-16 11:59:45 -07:00
Jon Coppeard
fe6d3a4b70 Bug 1021114 - Remove GCMethods::kind() in favour or RootKind::rootKind() r=terrence 2014-06-07 10:34:57 +01:00
Ryan VanderMeulen
9c350ad8b0 Backed out 3 changesets (bug 1021114, bug 988486) for GC crashes on a CLOSED TREE.
Backed out changeset f56234ba7ec7 (bug 1021114)
Backed out changeset 14a4a9062253 (bug 988486)
Backed out changeset 03eccac81e15 (bug 988486)
2014-06-07 00:03:17 -04:00
Jon Coppeard
ada00d07b2 Bug 1021114 - Remove GCMethods::kind() in favour or RootKind::rootKind() r=terrence 2014-06-07 10:34:57 +01:00
Jon Coppeard
773bc32603 Bug 1020690 - Type exact stack rooting machinery. r=sfink
--HG--
extra : rebase_source : 366ff0579912b8a03f29abb882cabcc982a44d47
2014-06-05 10:38:00 -04:00
Ryan VanderMeulen
fde08202dc Backed out changeset 846ee7c7debf (bug 1020690) for bustage.
CLOSED TREE
2014-06-05 14:39:11 -04:00
Jon Coppeard
76cdb96d0b Bug 1020690 - Type exact stack rooting machinery. r=sfink 2014-06-05 10:38:00 -04:00
Ehsan Akhgari
4b8f121ea2 Bug 1013663 - Fix some bad implicit conversion constructors in the JS engine; r=jorendorff,jandem 2014-05-25 21:46:24 -04:00
Dan Gohman
b8899a4aa1 Bug 1012971 - SpiderMonkey: Fix various warnings. r=nbp 2014-05-22 11:15:06 -07:00
Jon Coppeard
d5e4682a84 Bug 929314 - Remove Handle::repoint() r=terrence 2014-05-20 10:57:03 +01:00
Terrence Cole
04457e91b1 Bug 989414 - Access the store buffer through the chunk trailer; r=jonco 2014-05-01 09:26:12 -07:00
Terrence Cole
b1418ba5ff Bug 995442 - Don't post-barrier non-objects in the browser; r=sfink 2014-04-11 14:29:14 -07:00
Peter Van der Beken
731e4f5b3d Bug 990158 - Make inner windows use their wrapper cache. r=bz.
--HG--
extra : rebase_source : bc040c75280bb45ae7ab0ed302130ff5d7178153
2013-11-09 11:20:22 +01:00
Terrence Cole
fe8f16e4e5 Bug 987666 - Remove the unused dynamic root analysis. r=sfink 2014-03-24 18:32:36 -04:00
Bobby Holley
7250b8aac2 Bug 975419 - Add a JS::TenuredHeap<JSObject*> overload to TraceCallbacks. r=mccr8,terrence 2014-03-03 08:53:42 -08:00
Terrence Cole
eee4219b64 Bug 919544 - Allow cached object allocation to GC; r=jandem 2014-02-01 12:04:03 -08:00
Chris Peterson
b6a3cbfa97 Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Daniel Holbert
682b66552e back out 3a8893b28489 (bug 712939) and 39adab158c17,16add78c43e3,37193db7e15b (bug 712873), for build bustage. 2014-02-19 00:15:51 -08:00
Chris Peterson
f86f58f16d Bug 712873 - Part 2: Replace JS_ASSERT with MOZ_ASSERT outside js/src/ directory. r=luke 2014-02-17 22:24:15 -08:00
Luke Wagner
d30d84eeb4 Bug 936236 - Inline allocateSlots into caller and handlify (r=jonco) 2014-02-13 11:17:43 -06:00
Terrence Cole
a7c28fdf33 Bug 885954 - Add comments to barrier classes explaining our use of C++ move semantics; r=jimb 2014-02-07 10:03:21 -08:00
Nicholas Nethercote
82c58c8e3f Bug 964238 (part 1) - Remove JSStableString and StableTwoByteChars. r=terrence.
--HG--
extra : rebase_source : 1859ce0b42661494fa13628551359a5a5d5663c0
2014-01-30 14:58:53 -08:00
Jon Coppeard
bda63a0cd6 Bug 961077 - Take marking function as template parameter in PersistentRootedMarker r=sfink 2014-01-23 09:53:42 +00:00
Steve Fink
c5a9558249 Bug 960342 - Add a RootedGeneric general class, r=terrence 2014-01-22 11:52:44 -08:00
Jon Coppeard
0c43048bda Bug 961077 - Make PersistentRooted use private inheritance when deriving from LinkedListElement r=sfink 2014-01-22 11:28:06 +00:00
Jon Coppeard
3156f036a7 Bug 960544 - Always export rooting APIs and stop linking unit tests against JS library r=glandium 2014-01-17 10:18:19 +00:00
Jeff Walden
12220c1619 Bug 953296 - Implement mozilla::NullptrT as a typedef to use to accept nullptr values. Also add mozilla::IsNullPointer<T>, a trait for detecting *only* true nullptr (emulated nullptr [__null] used by gcc 4.4/4.5 isn't true nullptr). r=ehsan
Generally, if you want a decltype(nullptr)-based overload, you should use SFINAE and IsNullPointer.  (Examples are provided in NullPtr.h comments.)  The problem is NullptrT matches far more than just __null as emulated nullptr for gcc 4.4/4.5 overloading purposes.  This problem is unavoidable without true nullptr.  Currently, the only valid use for NullptrT is believed to be in operator overloads.  All existing nullptr-overloading code has been rewritten to use the appropriate technique for the situation, and MOZ_HAVE_CXX11_NULLPTR is no longer an API.

--HG--
extra : rebase_source : 01abfcb66ae569db7b04a7b53f5cd5fd8151bffd
2014-01-02 17:27:41 -06:00
Sean Stangl
94bb42ef1a Bug 949195 - Don't refer to IsInRequest() when JS_DEBUG is not defined. r=efaust 2013-12-11 14:06:04 -08:00
Sean Stangl
59cdede15c Bug 939505 - Use JS_DEBUG in public headers. r=jorendorff 2013-12-06 15:03:08 -08:00
Trevor Saunders
2f7f7d874a bug 938025 - part 2 - fix some static constructors in the jseng r=waldo 2013-11-22 15:05:04 -05:00
Jon Coppeard
acdd78d61d Bug 938211 - Supply copy assignment operator for Heap<T> and fix up some other classes in RootingAPI.h r=sfink 2013-11-18 17:21:44 +00:00
Jim Blandy
5f1150fd9d Bug 892643: Implement PersistentRooted<T>, an unrestricted-lifetime rooting type. r=terrence, jcoppeard 2013-11-04 13:35:08 -08:00
Jon Coppeard
b98d96f638 Bug 931446 - Improve documentation comment on JS::Heap r=terrence 2013-11-01 10:20:50 +00:00
Nicholas Nethercote
b38b84f869 Bug 925584 - Remove some unnecessary jsapi.h inclusions from .cpp files. r=Ms2ger.
--HG--
extra : rebase_source : 41fcb0e922a519ef679c1c1b6293c2b638e83a48
2013-10-10 15:22:35 -07:00
Jim Blandy
0440af2389 Bug 928507: Properly hide JS::Handle's assignment operator; add 'repoint' method to deal with the fallout; fix C1Spewer, IonSpewer, and CompileOptions. r=terrence 2013-10-21 12:56:44 -07:00
Ehsan Akhgari
7d49e13900 Bug 915735 - Part 1: Work around a bug in the MSVC PGO instrumented builds which prevents xpcshell to run successfully as a host tool during builds; r=sfink
--HG--
extra : rebase_source : e9b3bfc9cae14d0a699f584ccbda80157b065bc0
2013-09-23 15:28:08 -04:00
Terrence Cole
ac4d65e1fd Bug 918118 - Delete MutableHandle constructors for int and nullptr; r=jonco
This should prevent accidently misuse of MutableHandle.

--HG--
extra : rebase_source : 836a46068770281de24b6a11a04352b49c1dd05d
2013-08-06 15:09:15 -07:00
Birunthan Mohanathas
39e3b9e4cc Bug 784739 - Switch from NULL to nullptr in js/ductwork/, js/ipc/, and js/public/; r=ehsan 2013-09-19 15:24:53 -04:00
Nicholas Nethercote
d74157039d Bug 911020 - Introduce js/TypeDecls.h, which holds very commonly used type declarations from the JS engine. r=luke.
--HG--
extra : rebase_source : 008ef689989f93b46627b8be8608bdbc544ca3a2
2013-08-27 19:59:14 -07:00
Nicholas Nethercote
c31cde29ea Bug 909178 (part 1) - Move |jsid| from jsapi.h into js/Id.h. r=luke.
--HG--
extra : rebase_source : b0d38093a9f40a532e73c2c30ae86b8970b814ac
2013-08-21 22:26:56 -07:00
Nicholas Nethercote
78126ad05f Bug 898274 (part 1) - Fix ordering of various #include statements. r=benjamin. 2013-08-13 15:34:12 -07:00
Nicholas Nethercote
19e1fbb452 Bug 902820 - Fix a bunch of compile warnings in SpiderMonkey. r=till.
--HG--
extra : rebase_source : 0306d26443640104bae575a60fec7a693f7b43c5
2013-08-08 06:33:49 -07:00
Jon Coppeard
9405ab3d8a Bug 899976 - GC: Fix unsafe references related to ToInt* functions - js engine changes r=sfink 2013-08-02 13:15:38 +01:00
Ehsan Akhgari
085494b95d Bug 895322 - Part 1: Replace the usages of MOZ_STATIC_ASSERT with C++11 static_assert; r=Waldo
This patch was mostly generated by running the following scripts on the codebase, with some
manual changes made afterwards:

# static_assert.sh
#!/bin/bash
# Command to convert an NSPR integer type to the equivalent standard integer type

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.cc" \
         -o -iname "*.mm" \) | \
    xargs -n 1 `dirname $0`/assert_replacer.py #sed -i -e "s/\b$1\b/$2/g"
}

convert MOZ_STATIC_ASSERT static_assert
hg rev --no-backup mfbt/Assertions.h \
                   media/webrtc/signaling/src/sipcc/core/includes/ccapi.h \
                   modules/libmar/src/mar_private.h \
                   modules/libmar/src/mar.h


# assert_replacer.py
#!/usr/bin/python

import sys
import re

pattern = re.compile(r"\bMOZ_STATIC_ASSERT\b")

def replaceInPlace(fname):
  print fname
  f = open(fname, "rw+")
  lines = f.readlines()
  for i in range(0, len(lines)):
    while True:
      index = re.search(pattern, lines[i])
      if index != None:
        index = index.start()
        lines[i] = lines[i][0:index] + "static_assert" + lines[i][index+len("MOZ_STATIC_ASSERT"):]
        for j in range(i + 1, len(lines)):
          if lines[j].find("                 ", index) == index:
            lines[j] = lines[j][0:index] + lines[j][index+4:]
          else:
            break
      else:
        break
  f.seek(0, 0)
  f.truncate()
  f.write("".join(lines))
  f.close()

argc = len(sys.argv)
for i in range(1, argc):
  replaceInPlace(sys.argv[i])

--HG--
extra : rebase_source : 4b4a4047d82f2c205b9fad8d56dfc3f1afc0b045
2013-07-18 13:59:53 -04:00
Terrence Cole
562f743f71 Bug 887563 - Convert CallArgs::operator[] to return a Handle; r=Waldo,bz
--HG--
extra : rebase_source : a06130820b34f6e1f5bc317e89c087cf0db9eeb8
2013-06-26 16:26:45 -07:00
Jon Coppeard
7345e3e7f2 Bug 891966 - 2 - Comment calls to Handle::fromMarkedLocation r=bz 2013-07-23 10:58:28 +01:00
Jon Coppeard
b216cf9603 Bug 891966 - 1 - Don't allow construction of Handle<T> from Heap<T> r=bz 2013-07-23 10:58:27 +01:00
Jon Coppeard
6c0077c7f6 Bug 888338 - 1 - Add TenuredHeap<T> class r=terrence r=bz 2013-07-23 10:58:26 +01:00
Jeff Walden
5e2dbd029b Bug 891177 - Remove Vector.h's js/TemplateLib.h dependency by introducing mfbt/TemplateLib.h with the necessary bits. r=terrence
--HG--
extra : rebase_source : e84231171d6bd6c1e2de8201b8c9563375723d01
2013-07-08 12:42:13 -07:00
Brian Hackett
d38fee1f7f Bug 885758 - Add ExclusiveContext for use by threads with exclusive access to their compartment, r=billm. 2013-07-10 09:29:52 -06:00