Commit Graph

34481 Commits

Author SHA1 Message Date
Jan de Mooij
b54e7da946 Bug 1034627 part 6 - Fix XPCVariant to work with Latin1 strings and nursery strings. r=bholley 2014-07-11 09:38:55 +02:00
Jan de Mooij
56a2a94a9d Bug 1034627 part 4 - Fix XPCComponents and XPCWrappedJSClass to work with Latin1 strings and nursery strings. r=bholley 2014-07-11 09:36:20 +02:00
Ahmed Kachkach
c4872d76ea Bug 886570 - Initial integration of structured logs in mochitest. r=ahal,Ms2ger 2014-07-10 13:33:00 +02:00
Andrew McCreight
ddac837af9 Bug 1022954 - ScriptSource leaks sourceMapURL_ sometimes. r=jimb 2014-07-10 15:46:00 +02:00
Nicholas Nethercote
8ea1b7923f Bug 1036789 - Convert the third quarter of MFBT to Gecko style. r=Ms2ger.
--HG--
extra : rebase_source : 668cd394806203ddfa34bd4f226335ff26c846b5
2014-07-10 19:10:17 -07:00
Chris Peterson
ad6013a50f Bug 1036781 - Replace MOZ_ASSUME_UNREACHABLE with MOZ_CRASH in js/src/jit. r=jandem 2014-06-30 16:06:59 -07:00
Chris Peterson
fca203c323 Bug 1036778 - Replace MOZ_ASSUME_UNREACHABLE with MOZ_CRASH in js/xpconnect. r=bholley 2014-06-29 20:42:36 -07:00
Jeff Walden
3a05a541b4 Bug 1037152 - Use Vector<UniquePtr> instead of Vector<Scoped> for tracking heap edge names. Also use js_free to free js_strdup's allocation, not ::free. (Usually the same thing, but not for embedders.) r=jimb
--HG--
extra : rebase_source : 26d052761654aecb3db1c76803c2e274be0d2c61
2014-07-10 16:59:26 -07:00
Jeff Walden
1b57d0afde Alphabetize some using-declarations in MapObject.cpp. No bug, r=trivial
--HG--
extra : rebase_source : 422d766f4bb7ef208e2c1d3cd1ba5950f15bd9e4
2014-07-09 18:00:59 -07:00
Jeff Walden
04afd90124 Bug 1036703 - Manage TokenStream::{sourceMap,display}URL_ using UniquePtr. r=jimb
--HG--
extra : rebase_source : 063beaeb184059b6a03338f05f4d073a5ea8bf27
2014-07-09 16:53:42 -07:00
Jim Blandy
48927da970 Bug 1036194: Update docs to describe Debugger.Source.prototype.introductionScript and .introductionOffset as implemented. DONTBUILD r=ejpbruel
The only change to content here is that we implemented 'introductionOffset', not
'introductionScriptOffset'.
2014-07-10 17:26:39 -07:00
Jim Blandy
793c6388ca Backed out changeset d988238c67d8; bug number was wrong in comment. DONTBUILD 2014-07-10 17:32:42 -07:00
Jim Blandy
e1cdc47295 Bug 10346194: Update docs to describe Debugger.Source.prototype.introductionScript and .introductionOffset as implemented. DONTBUILD r=ejpbruel
The only change to content here is that we implemented 'introductionOffset', not
'introductionScriptOffset'.
2014-07-10 17:26:39 -07:00
Bill McCloskey
0a2f262d4f Bug 1029248 - Allow CPOWs to be converted to native interfaces (r=mrbkap) 2014-07-10 16:47:26 -07:00
Bill McCloskey
c3121f05b8 Bug 1029248 - Clean up CPOW unwrapping (r=mrbkap) 2014-07-10 16:47:04 -07:00
Shu-yu Guo
55a661f890 Bug 1036792 - Fix bug1032264.js jit-test so it doesn't fail on merge. (r=test-only) 2014-07-10 16:44:41 -07:00
Ms2ger
10c7f7c010 Backout changeset 69c0707a144a for crashes on a CLOSED TREE. 2014-07-10 21:04:26 +02:00
Ms2ger
da65a8f838 Bug 1036777 - Remove the useAllocator argument to XPCConvert::JSData2Native; r=bholley
It turns out the useAllocator argument is only used for the dipper types
(nsXPTType::{T_ASTRING, T_DOMSTRING, T_UTF8STRING, T_CSTRING}), while we
only pass true in cases where we don't have a dipper type:

* XPCConvert::JSArray2Native errors on those types;
* GetNamedPropertyAsVariantRaw() passes an interface type;
* nsXPCWrappedJSClass::CallMethod passes !param.IsDipper() for the first
  calls and only reaches the last call for dependent types, which do not
  include any of the dipper types;
* CallMethodHelper::ConvertIndependentParam handles dipper types earlier
* and CallMethodHelper::ConvertDependentParam handles dependent types.
2014-07-10 20:23:24 +02:00
Bobby Holley
65f180179d Bug 1034262 - Honor the wantXrays of both sides of the membrane when computing same-origin wrappers. r=gabor
The basic problem in the testcase is that one compartment requests same-origin
Xrays via wantXrays=true (the default for Sandboxes) while the other does not.
The current code only considers the wantXrays flag of the compartment performing
the access, so we end up in a situation where we have same-origin compartments,
but Xray in one direction and Transparent in the other.

This is a problem for crossCompartmentFunction.apply(null, [arg]). If both
globals get transparent wrappers, there's obviously no problem. And if both
globals get XrayWrappers, then the |apply| happens on the XrayWrapper of the
function in the caller's compartment. So the Array is unpacked in the caller's
compartment, and again we have no problem.

But if the caller gets Transparent and the callee gets Xrays, then we end up
invoking |apply| from the callee's side, which then gets an XrayWrapper to the
array. This XrayWrapper may do surprising things, leading to the odd situation
in the testcase.

Same-origin Xrays are kind of broken anyway, but I don't think we'll ever be
able to get rid of them. So the most sensible thing to do is probably to honor
the flag (if set) from either compartment. This patch does that.
2014-07-10 10:04:30 -07:00
Bobby Holley
f99be51d16 Bug 1034239 - Replace GentlyOpaque with an "Xray-to-nothing" wrapper. r=gabor
I did this wrong before. Making this a SecurityWrapper means that the caller does
not subsumes the target, and that the target therefore needs to be protected
from the caller. But GentlyOpaque was supposed to be an analog of PermissiveXray
for use when no useful XrayTraits exist, so it should behave similarly.

If we make this a Filtering Security Wrapper, we get a bunch of assertions where we
expect CheckedUnwrap to succeed for a chrome-side wrapper. And we can't making it
a Filtering Non-Security Wrapper, because then the filtering policy isn't even
consulted (an optimization in jsproxy.cpp).

Really, we want all of the Xray machinery (like the ability to waive and to place
expandos), and we just don't want to resolve any properties. This patch does this.
2014-07-10 09:31:37 -07:00
Bobby Holley
86b1eef248 Bug 1034239 - Add Proxies to ForceCOWBehavior. r=gabor 2014-07-10 09:31:37 -07:00
Jan de Mooij
7fd4ee6769 Bug 1034627 part 3 - Fix SandboxDump, AccessCheck.cpp to work with Latin1 strings and nursery strings. r=bholley 2014-07-10 17:36:35 +02:00
Jan de Mooij
8a93b868e6 Bug 1034627 part 2 - Fix xpconnect Dump and Print functions to work with Latin1 strings and nursery strings. r=bholley 2014-07-10 17:36:33 +02:00
Jan de Mooij
179a30467b Bug 1034627 part 1 - Add some new string APIs. r=terrence 2014-07-10 17:36:31 +02:00
Tooru Fujisawa
7526207adf Bug 923028 - Part 2: Emit loop instead of JSOP_SPREAD. r=jandem 2014-07-08 02:25:00 -04:00
Carsten "Tomcat" Book
d83bd09333 Backed out changeset 0f0e44cd5fbd (bug 1034616) for jit test failures 2014-07-10 10:18:05 +02:00
Boris Zbarsky
d13462f48a Bug 1034616. Fix Frame-onPop-generators-02.js test to pass even if we start reporting the exceptions we're supposed to be reporting but fail to report right now. r=jorendorff 2014-07-10 02:56:21 -04:00
Brian Hackett
36fd110508 Bug 1021790 - "Cleanup naming for scalar and typed array types", r=sfink 2014-06-06 09:36:00 -07:00
Steve Fink
408484f23f Bug 1035092 - Fix places that return nullptr as a bool, r=terrence 2014-07-07 07:58:03 -07:00
Dan Gohman
425722073e Bug 1036037 - IonMonkey: Add a unit-test for folding a div to a multiply by reciprocal. r=nbp 2014-07-09 13:20:31 -07:00
Sankha Narayan Guria
8da218ad24 Bug 999764 - Optimize floating-point division into multiplication when safe; r=sunfish 2014-07-09 11:37:14 +02:00
Nathan Froyd
d1d52d93ee Bug 1031352 - move most of the _MSC_VER references in Makefile.in to moz.build; r=glandium 2014-06-27 10:32:05 -04:00
Shu-yu Guo
4173105f70 Bug 1034280 - Don't report warnings for recover instructions when snapshotting frames for PJS bailout warnings. (r=nbp) 2014-07-09 12:23:07 -07:00
Shu-yu Guo
948b9be346 Bug 1030985 - Optimize arguments.callee. (r=h4writer) 2014-07-09 12:23:07 -07:00
Ehsan Akhgari
e65619e81d Bug 1036235 - Do not use __asan_default_options with clang-cl because it is not supported yet; r=decoder 2014-07-09 15:16:55 -04:00
Benjamin Bouvier
108a02c349 Bug 1023145: Use the original getPrototypeOf in self-hosted code; r=till 2014-07-09 15:59:25 +02:00
Douglas Crosher
c9b52fa87a Bug 1026919 - IonMonkey: (ARM) Cleanup of the assembler and backend. r=mjrosenb 2014-07-09 09:41:18 +10:00
Mukilan Thiyagarajan
bf9a7de167 Bug 1000994 - Allow specifying SONAME of a shared library in moz.build. r=glandium 2014-07-09 00:47:00 +02:00
Jon Coppeard
a8ab0f445d Backed out changeset 41da9bcec12e (bug 1029648) for possible Sunspider regression on FxOS Flame 2014-07-09 10:45:56 +01:00
Guptha Rajagopal
2966ff570c Bug 1034314 - Fix for Bug 1034314 - CR in template string hits assertion failure. r=jorendorff 2014-07-08 09:13:00 +02:00
Nick Fitzgerald
9f4c9c46f7 Bug 1030945 - Support asm.js frames in SavedStacks. r=luke 2014-07-07 12:59:00 +02:00
Guillaume Turri
3e36a97e5f Bug 1019843 - avoid a leak when init() fails. r=jorendorff 2014-07-05 00:37:00 +02:00
Douglas Crosher
4482c1ad56 Bug 1013056. r=shu 2014-07-08 09:42:00 +10:00
Mike Hommey
5cf267bd6f Bug 1029346 - Add -Wno-error=coverage-mismatch to PGO builds 2014-07-09 08:05:03 +09:00
Jeff Walden
e7bd94ba5c Bug 953296 - Make the source-hook mechanism use mozilla::UniquePtr. r=jimb
--HG--
extra : rebase_source : c285fec8b38790fe78e3f29106011a928e12322e
2013-12-30 13:34:54 -06:00
Branislav Rankov
1c6d677a29 Bug 1032786 - IonMonkey MIPS: Change JSReturnOperand registers to a2,a3. r=nbp 2014-07-07 14:58:42 +02:00
Branislav Rankov
f328065a60 Bug 1007156 - IonMonkey MIPS: Fix alignment for arguments in calls to C++ from IonCaches. r=nbp 2014-07-07 15:27:45 +02:00
Branislav Rankov
28f82b4d34 Bug 1007156 - IonMonkey MIPS: Fix alignment for double-sized arguments in VMWrapper calls. r=nbp 2014-07-04 19:29:41 +02:00
Branislav Rankov
dac9479ce2 Bug 1020359 - Fix typo in GenerateParallelBailoutThunk for ARM. r=shu 2014-07-04 14:36:03 +02:00
Branislav Rankov
01d74239bf Bug 1020359 - MIPS followup on bug 1019304. Overhaul PJS bailout mechanism. r=shu 2014-07-04 14:33:33 +02:00
Branislav Rankov
778023c1e6 Bug 1020359 - IonMonkey MIPS: Add missing or32. r=nbp 2014-06-30 16:28:17 +02:00
Jon Coppeard
c375daeb23 Bug 988486 - Make more GCRuntime members private and add necessary accessors r=terrence 2014-07-08 14:05:24 +01:00
Jon Coppeard
e9933ba3c1 Bug 1034566 - Add GC tracing for object types r=terrence 2014-07-08 14:05:24 +01:00
Jon Coppeard
15ece3a4fa Bug 1034566 - Add GC tracing for whether objects have finalizers r=terrence 2014-07-08 14:05:24 +01:00
Jon Coppeard
91a0ef6ad4 Bug 1034566 - Refactor gcstats.cpp r=terrence 2014-07-08 14:05:23 +01:00
Jon Coppeard
eacb6e3daa Backed out changeset cad7de31731e (bug 1029648) for possible Sunspider regression on FxOS Flame 2014-07-08 13:36:43 +01:00
André Bargull
d16c4a4265 Bug 1035325 - Incorrect data type in GetDeflatedUTF8StringLength. r=jandem 2014-07-08 04:03:00 -04:00
Benjamin Bouvier
6a8a1c8908 Bug 1034972: Don't allow object shorthand in asm.js; r=luke 2014-07-08 10:28:45 +02:00
Sankha Narayan Guria
503e9d7029 Bug 1030699 - Sqrt Recover Instruction. r=bbouvier 2014-07-07 15:02:40 +02:00
Wes Kocher
8031d45181 Backed out changeset 33082e3bfed9 (bug 1030985) under suspicion of breaking xpcshell tests on a CLOSED TREE 2014-07-07 15:38:36 -07:00
Bobby Holley
7ee918bfb2 Bug 1033927 - Drop support for custom [object XrayWrapper [object ClassName]] stringification. r=peterv 2014-07-07 13:11:24 -07:00
Shu-yu Guo
2f27b7851e Bug 1030985 - Optimize arguments.callee. (r=h4writer) 2014-07-07 13:11:11 -07:00
Jim Blandy
712aeb943e Bug 1034908: Mark js::ErrorCopier construct as 'explicit', as per review comments. r=jorendorff 2014-07-07 11:52:40 -07:00
Jim Blandy
a0db14f841 Bug 1034908: Remove the unused 'scope' argument to ErrorCopier::ErrorCopier and js_CopyErrorObject. r=jorendorff 2014-07-07 11:47:49 -07:00
Luke Wagner
c325f67b81 Bug 1034330 - OdinMonkey: rename various AsmJSModule fields to be more consistent (r=bbouvier)
--HG--
extra : rebase_source : 33e70b1c85f093ce4b9c7ef9a93258231704be82
2014-07-07 10:45:02 -05:00
Luke Wagner
5c2307acfb Bug 1034330 - OdinMonkey: have masm.assumeUnreachable just generate a breakpoint in asm.js (r=bbouvier)
--HG--
extra : rebase_source : f924c22b82a068fc2f5bc4834f1c4c3bcd799a2b
2014-07-03 17:00:26 -05:00
Luke Wagner
a18ac1f762 Bug 1034330 - OdinMonkey: simplify GenerateFFIIonExit (r=dougc)
--HG--
extra : rebase_source : b8006b668b648706362b11d0edd94fd31c3da9c4
2014-07-03 16:16:41 -05:00
Luke Wagner
a9dc636f03 Bug 1034330 - OdinMonkey: rm lingering MaybeRetAddr (r=dougc)
--HG--
extra : rebase_source : fb84270f71bddecfadeeb9dc66e3dd5643293cc6
2014-07-03 16:16:31 -05:00
Luke Wagner
858ae0bcb4 Bug 1034330 - OdinMonkey: tidy up codegen for accessing globals (r=bbouvier)
--HG--
extra : rebase_source : cebc86cc38bf70f6de7a5ebca862cd103011783a
2014-07-03 16:16:20 -05:00
Luke Wagner
3745da7ac1 Bug 1034330 - OdinMonkey: hoist OOM handling (r=bbouvier)
--HG--
extra : rebase_source : cbe5c2e0a6f57afcb7506a39e51b3eca612702ea
2014-07-03 16:15:37 -05:00
Steve Fink
f7206b8083 (sort of) bug 898554 - raise expected hazard count for b2g to 4 until they're fixed.
--HG--
extra : rebase_source : 9769b75cc8e39e09bcce536581a903f4457d1c41
2014-07-02 16:20:12 -07:00
Emanuel Hoogeveen
4044473c48 Bug 1034225 - Avoid purging the free lists every iteration in PJS by checking if the current arena is in use. r=terrence 2014-07-04 04:19:00 -04:00
Douglas Crosher
eacebef715 Bug 1031877 - OdinMonkey: move some debug assertions on code positions until after they are converted to their actual position. r=luke 2014-07-05 18:49:48 +10:00
Caio Lima
f8d118af4b Bug 1024609 - Implemented RArgumentsLength reading the value stored on IonJSFrameLayout. r=nbp 2014-07-04 12:18:00 +02:00
Ms2ger
411c89823f Bug 1029933 - Followup: remove now unused js::Classes from jsapi.cpp; r=till
These classes were used until changeset 650197ade3b3, when they were replaced
by dummy JSProtoKey values.
2014-07-07 12:05:58 +02:00
Benjamin Bouvier
347f38ecf6 Bug 1034400: Make RNot recover in all cases and not assert on objects; r=nbp 2014-07-07 11:47:10 +02:00
David Major
dc11213aa8 Bug 1033146: Use a never-inline function to work around a bug in 64-bit VS2010. r=terrence 2014-07-07 12:07:20 +12:00
Jason Orendorff
e5c6ba3311 Bug 1000182, part 0 - Support unhandlable OOM in jit-test harness. r=terrence.
--HG--
extra : rebase_source : b080e3a83568eea099164c83ef2d2b33f68c7aa0
extra : amend_source : 5aa854e12c5089393488787ab9799a7d5e95d38b
2014-06-27 15:31:29 -05:00
Jason Orendorff
1fa13b1339 Bug 1031550 - Update js_DumpObject for symbol-keyed properties. r=Waldo.
--HG--
extra : rebase_source : 76b80eb64e0e93d1b9ff92fb3787f4990acef3e8
2014-06-27 16:36:56 -05:00
Jason Orendorff
c2163bbd1e Bug 1032206 - Update barrier verifier for well-known symbols. r=terrence.
--HG--
extra : rebase_source : 183cc4e167d56fe2eceafb99f7f4c6ac9c582e08
2014-06-30 15:19:31 -05:00
Jason Orendorff
7995eb0e17 Bug 1032208, part 2 - Fix assertion when converting symbol to number to initialize or set a typed array element. r=jandem.
--HG--
extra : rebase_source : c8f64bbdaadb080a1d4a5a6d42875dbc0efb406d
2014-06-30 14:54:26 -05:00
Jason Orendorff
98ada2e36d Bug 1032208, part 1 - Fix JSON.stringify treatment of symbols. r=jandem.
--HG--
extra : rebase_source : 9336bc1f4ccacc15369ae6297d8cf1bbc0a66cba
2014-06-30 14:22:44 -05:00
Jan de Mooij
3c7459b21a Bug 1034191 - Make nsDependentJSString users work with Latin1 strings and nursery-allocated strings. r=bz 2014-07-05 17:30:54 +02:00
Ehsan Akhgari
8c45367c20 Bug 1032520 - Handle the JS configure script as well 2014-07-04 15:47:53 -04:00
Bobby Holley
264629462b Bug 1029933 - Make Error use a ClassSpec. r=Waldo 2014-07-04 12:41:29 -07:00
Bobby Holley
a8e876c1bb Bug 1029933 - Tweak GenericCreateConstructor to make it usable with Error. r=Waldo 2014-07-04 12:41:28 -07:00
Bobby Holley
00d872c01e Bug 1029933 - Introduce and use ParentKeyForStandardClass. r=Waldo 2014-07-04 12:41:28 -07:00
Bobby Holley
892ede31d7 Bug 1029933 - Introduce the concept of "dependent" standard classes and handle them in the ClassSpec infrastructure. r=Waldo 2014-07-04 12:41:28 -07:00
Bobby Holley
b7b76e077f Bug 1029933 - Tag JSStdName entries by JSProtoKey rather than a js::Class pointer. r=Waldo
The former is strictly more information, which matters in the case of Error
objects where multiple JSProtoKeys share a js::Class.
2014-07-04 12:41:28 -07:00
Bobby Holley
0f927ebd64 Bug 1029933 - Give BackstagePass an Enumerate hook to match its NewResolve hook. r=Waldo
This is required in order to avoid exposing resolve hook effects when
Object.freeze() is invoked on the global. The freeze() call first enumerates
the object, after which point any lazy properties need to be resolve so that
we can safely mark the object as non-extensible.
2014-07-04 12:41:27 -07:00
Hannes Verschore
df11430899 Bug 1030083 - IonMonkey: Eliminate 'index in array' checks for packed arrays, r=jandem 2014-07-04 19:43:24 +02:00
Hannes Verschore
59a8c1f0c5 Bug 1019983 - Don't optimize compare based on baseline caches when more types are seen than present in the cache, r=jandem 2014-07-04 19:43:24 +02:00
Hannes Verschore
4ffc41a6b9 Bug 1013172: Tracelogger: Mark the time a thread is paused, r=jandem 2014-07-04 19:43:23 +02:00
Hannes Verschore
6f179a5059 Bug 1032661 - Improve range information on hoisted boundschecks, r=bbouvier,nbp 2014-07-04 19:43:23 +02:00
Ehsan Akhgari
664a463832 Bug 1034094 - Remove support for the gcc-style clang driver on Windows; r=glandium
This basically reverts the now unneeded parts of bug 752034.
clang-cl driver should be used on Windows instead.
2014-07-04 10:43:37 -04:00
Sushant Dinesh
86c5a34fb0 Bug 1028910: Improve types at branches with MIsObject. r=h4writer. 2014-07-04 15:40:33 +02:00
Hannes Verschore
9576363ec4 Bug 1033959: Fix typo that regressed octane-regexp osx performance, r=nbp 2014-07-04 14:29:51 +02:00
Rémi WENG
560b22a0ad Bug 1028698 - IonMonkey: Implement Abs recover instruction. r=nbp 2014-07-04 05:17:20 -07:00
Rishab Arora
9c0e0f2569 Bug 1031632 - Make Map.prototype.set, WeakMap.prototype.set and Set.prototype.add chainable. r=till
--HG--
extra : rebase_source : 1365a1dc29464bf16e337317901f9c34b7bde256
2014-07-03 22:55:26 +05:30
Boris Zbarsky
6fa329d450 Bug 1018583 part 2. Remove the returnStringOnly gunk from sandboxes. r=bholley 2014-07-04 01:22:50 -04:00