Commit Graph

283649 Commits

Author SHA1 Message Date
Tom Schuster
9ebc4ea621 Bug 1246318 - Remove the enumerate trap from ES6 proxies. r=efaust 2016-02-10 00:12:24 +01:00
Tom Schuster
369af34f4a Bug 1246318 - Make the proxy enumerate trap non-standard. r=efaust 2016-02-10 00:12:24 +01:00
Blake Kaplan
a9dc5fef4d Bug 1245723 - Fix typo. r=typo 2016-02-09 15:01:29 -08:00
David Keeler
9e2e9d205c bug 1241564 - remove EV treatment for TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı SHA-1 root certificate r=Cykesiopka
MozReview-Commit-ID: 9ktEj2kgfYo
2016-02-09 13:30:22 -08:00
Bobby Holley
37e51dfb2c Bug 1244222 - Tests. r=bz 2016-02-09 14:55:52 -08:00
Bobby Holley
fcec7f579e Bug 1244222 - Check for function interfaces in DelegatedQueryInterface. r=bz 2016-02-09 14:55:49 -08:00
Dylan Roeh
8550ef97d4 Bug 1148544 - Update tests to work with new way of handling user agent overrides. r=jchen 2016-02-09 16:51:43 -06:00
Dylan Roeh
1192bbc514 Bug 1148544 - Figure out UA override once per LoadGroup and cache it, rather than once per channel. r=nwgh 2016-02-09 16:51:34 -06:00
David Keeler
bc70ab383c bug 1246765 - remove unnecessary resource://app/ registration from getHSTSPreloadList.js r=Cykesiopka DONTBUILD NPOTB 2016-02-08 12:56:34 -08:00
Boris Zbarsky
d3dd406fd0 Bug 1245554. Window's named properties object should not claim to have duplicates of a given property name if it has multiple iframes with that name. r=peterv
The web platform test was pretty buggy in a few ways:

1)  It claimed that "bar" should be non-writable and enumerable.  This
explicitly contradicts the spec:
http://heycam.github.io/webidl/#named-properties-object-getownproperty step 3
substep 8 sets [[Writable]] to true, and
https://html.spec.whatwg.org/multipage/browsers.html#named-access-on-the-window-object
explicitly says these properties are unenumerable.

2)  It claimed that "constructor" should be exposed on the named properties
object.  But the named property visibility algorithm obviously returns false
for that property name, so it should not be exposed.
2016-02-09 17:40:45 -05:00
Boris Zbarsky
e39cfcc7d9 Bug 1243001 part 8. Tell SpiderMonkey to put its promise jobs into the CycleCollectedJSRuntime job queue. r=peterv
This will run the SpiderMonkey promise jobs more or less the same way that we
run Promise jobs right now, including using a Web IDL callback for the actual
invocation.
2016-02-09 17:40:31 -05:00
Boris Zbarsky
c1c0bcad04 Bug 1243001 part 7. Stop wrappercaching dom::Promise when SPIDERMONKEY_PROMISE is defined. r=peterv
nsWrapperCache expects the object it stores to have an ObjectMoved op that will
notify the wrapper cache when the object is moved.  SpiderMonkey promises don't
have a way to do this.

The XPCConvert changes are needed to allow code that passes around Promise
objects as nsISupports to continue working instead of ending up with
double-wrapped nsISupports (XPCWrappedNative for an nsISupports XPCWrappedJS)
around the SpiderMonkey Promise.
2016-02-09 17:40:31 -05:00
Boris Zbarsky
3b6a884636 Bug 1243001 part 6. Implement Promise::AppendNativeHandler in the SPIDERMONKEY_PROMISE world. r=peterv
This patch introduces a fake IDL interface just to get the benefits of
cycle collection for the JS-to-C++ link we now need for PromiseNativeHandler
(because the SpiderMonkey Promise somehow needs to point to the
PromiseNativeHandler).  Now in practice a bunch of our PromiseNativeHandlers
are not cycle collected.  That kinda freaks me out, but spot-checking a few
suggests they do not in fact leak (either because they don't form cycles or
because the Promise they're observing always settles and then releases them).
Either way, that's a problem that exists with or without this patch...
2016-02-09 17:40:31 -05:00
Boris Zbarsky
1f9866a3d6 Bug 1243001 part 5. Get rid of most of the dom::Promise methods when SPIDERMONKEY_PROMISE is defined, and reimplement the rest in terms of SpiderMonkey Promise. r=peterv
This is the bulk of the new dom::Promise implementation.  It's using the APIs
that bug 911216 part 1 adds.
2016-02-09 17:40:31 -05:00
Boris Zbarsky
530c609afa Bug 1243001 part 4. Switch to using MaybeResolve/MaybeReject instead of ResolveInternal/RejectInternal for PromiseWorkerProxy. r=peterv
This is the one part of this set of patches that is actually a substantive change
even without SPIDERMONKEY_PROMISE defined.  This is being done because I don't
want to create ResolveInternal/RejectInternal methods on dom::Promise in the
new world.

In practice, the difference between MaybeResolve/Reject and
ResolveInternal/RejectInternal is that the former will do nothing if the
Promise is "resolved" in terms of spec terminology: either settled or locked in
to track another Promise.  A resolved but still pending Promise can still get
fulfilled (what we call ResolveInternal) or rejected when the promise it's
tracking settles.

So the difference only matters if PromiseWorkerProxy can be working with a
"resolved" Promise (in which case what it's doing now would settle it, while
what I'm switching to would not).  But I don't believe PromiseWorkerProxy ever
points to a "resolved" Promise.
2016-02-09 17:40:31 -05:00
Boris Zbarsky
1927adedbf Bug 1243001 part 3. Turn off the IDL bits of PromiseDebugging when SPIDERMONKEY_PROMISE is defined. r=peterv
These are basically the minimal changes needed to make PromiseDebugging compile
in the new world.  It will NOT function correctly (see the XXX comments); Till
will be fixing it up more in bug 911216 as he transitions the relevant bits in
our devtools to work on top of SpiderMonkey promises.
2016-02-09 17:40:31 -05:00
Boris Zbarsky
a01b829460 Bug 1243001 part 2. Make Promise an empty [NoInterfaceObject] interface when SPIDERMONKEY_PROMISE is defined. r=peterv
The idea is to not define a "Promise" property on the global and not generate
any of the methods, since SpiderMonkey will implement all of those, but to keep
some of the conversion to/from JS logic and the IDL parser validation bits that
we have right now.  Once we can assume SPIDERMONKEY_PROMISE we can probably
change how the "Promise" identifier is handled by the IDL parser and how the
resulting type is handled by codegen, but for now we're aiming for minimal
changes.
2016-02-09 17:40:30 -05:00
Boris Zbarsky
2263e770b6 Bug 1243001 part 1. Remove the dead WrappedWorkerRunnable class from Promise code. r=peterv 2016-02-09 17:40:30 -05:00
Terrence Cole
2a4ae56ba4 Bug 1245261 - Use an atomic to safely access gcTriggerBytes; r=jonco 2016-02-03 15:49:14 -08:00
Gregory Szorc
a67a8adbf0 Bug 1245684 - Download bootstrap files via a zip archive; r=mshal
This will perform a single HTTP request that completes in <1s. Contrast
with before when we performed multiple HTTP requests and the process
took several seconds.

DONTBUILD (NPOTB)

MozReview-Commit-ID: DjX3LBdSOIk
2016-02-09 14:41:32 -08:00
Blake Kaplan
0e323c4e40 Bug 1245723 - Fix browser_frame_elements and re-enable now-passing tests. r=felipe 2016-02-09 14:40:36 -08:00
Blake Kaplan
c1a453289a Bug 1245723 - Make crashreporter browser-chrome tests e10s compatible. r=felipe 2016-02-09 14:40:35 -08:00
Blake Kaplan
7b2eefa8d7 Bug 1245723 - Make browser_bug680727 e10s compatible. r=felipe 2016-02-09 14:40:35 -08:00
Blake Kaplan
cd053ad3e6 Bug 1245723 - Make the satchel browser-chrome test e10s compatible. r=felipe 2016-02-09 14:40:35 -08:00
Mike Hommey
ed1c39fba6 Bug 1246874 - Unify GRE_BUILDID and MOZ_APP_BUILDID at the build system level. r=mshal 2016-02-10 07:39:30 +09:00
Mike Hommey
7c1c49eb4c Bug 1246779 - Stop disabling optimizations for test plugins on Windows. r=mshal
They were disabled in bug 657569 because of a miscompilation from MSVC,
but back then, we were using one of 2005, 2008 or 2010 (not entirely
sure which). Even if it was the latter, there has been two releases of
MSVC since, if stopping at the one we're currently using.
2016-02-10 07:39:28 +09:00
Mike Hommey
845a177598 Bug 1238769 - Add a -xpcshell option to Firefox. r=bsmedberg 2016-02-10 07:39:27 +09:00
Nicholas Nethercote
867c012a9d Bug 1205358 - Fix up nsUrlClassifierPrefixSet memory reporting. r=gcp.
This patch reverts the "measure-in-advance" approach added in part 1 of bug
1050108 -- because that doesn't interact well with DMD -- and adds locking to
avoid races between the url-classifier thread and the main thread.
2016-02-10 08:30:48 +11:00
Stefan Dye
5cc31db507 Bug 1204520 - Remove unused return value from FetchDriver::FailWithNetworkError. r=jdm 2016-01-31 21:56:00 -05:00
Jim Chen
6fe9df8b42 Bug 1244875 - Update auto-generated bindings; r=me 2016-02-09 17:27:29 -05:00
Jim Chen
d7bbf22209 Bug 1244875 - Update JNI usages; r=snorp
Update JNI usages to match the changes in JNI templates.
2016-02-09 17:27:28 -05:00
Jim Chen
fc59c0a8e8 Bug 1244875 - Update binding generator; r=snorp
Update the automatic binding generator to match the JNI template
changes.
2016-02-09 17:27:28 -05:00
Jim Chen
cb5f6cf03a Bug 1244875 - Refactor JNI templates; r=snorp
Improve the performance of JNI calls by making JNI calls require a
Context object. LocalRef inherits from Context and can make calls
directly. Non-local Ref classes will generate a Context object when
making a call. The patch also makes the template design cleaner in
several cases.
2016-02-09 17:27:28 -05:00
Terrence Cole
aa48ef9f23 Bug 1245965 - Fix an OOM in ObjectGroup::newPlainObject; r=till 2016-02-09 14:04:46 -08:00
Terrence Cole
3c8bc48f9b Bug 1245965 - Fix and OOM handling failure in NewMemInfoObject; r=sfink 2016-02-09 14:04:37 -08:00
Patrick McManus
6100c57b36 Bug 544986 - 64KB rwin for windows xp r=dragana 2016-02-04 17:41:28 -05:00
Geoff Brown
08fac249ea Bug 1235689 - Disable robocop testAppMenuPathways for frequent failures; r=me 2016-02-09 15:24:34 -07:00
Ehsan Akhgari
f305c88ab0 Bug 1246550 - Don't run autobinscope.py with clang-cl; r=glandium
Currently it will fail with errors such as:

Insufficient debug information (private symbols are needed) or code from
unknown language. The following modules didn't have full symbols:
nsBrowserApp.obj
AppData.obj (xpcomglue_staticruntime.lib)
FileUtils.obj (xpcomglue_staticruntime.lib)
nsCRTGlue.obj (xpcomglue_staticruntime.lib)
nsXPCOMGlue.obj (xpcomglue_staticruntime.lib)

We need to turn this back on when clang-cl grows more debug
info support.
2016-02-09 15:35:03 -05:00
Ehsan Akhgari
6282335c3a Bug 1246333 - Re-enable structured exception handling with clang-cl; r=glandium
clang-cl has been taught SEH now.
2016-02-09 15:35:03 -05:00
Terrence Cole
c98b12ac59 Bug 1244956 - Simplify Wrapper rooting mechanism; r=sfink 2016-02-02 09:32:16 -08:00
Jakob Stoklund Olesen
6b5bc9817d Bug 1244254 - Simplify MSimd* constructors. r=nbp
Now that all the MSimd* instructions require unboxed arguments of the right
type, there is no need to explicitly pass in the specialization MIRType when
creating these instructions.

- Remove the specialization MIRType argument from instruction constructors,
  ::New() and ::NewAsmJS() functions.

- Add tighter argument checking assertions in the constructors.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
006cd3add6 Bug 1244254 - Add SimdType to MSimdBox and MSimdUnbox. r=nbp
The MIRType is not specific enough for MSimdUnbox to distinguish signed from
unsigned SIMD types, and when generating code for a MSimdBox, we can't look at
the templateObject to get the SimdType because it belongs to a different thread.

Pass a SimdType to CodeGenerator::registerSimdTemplate() instead of inspecting
the template object.

Delete MIRTypeToSimdType() which can't be accurate because MIRType doesn't
carry signedness information.

Add an optimization to unboxSimd(): With a SimdType on MSimdBox, we can
recognize the very common pattern where unboxSimd() gets called with an MSimdBox
value. In the types check out, just reuse the MSimdBox input and don't even
inert the check code.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
16b8c20374 Bug 1244254 - Replace MaybeSimdUnbox with assertions. r=nbp
The SIMD type policies no longer needd to insert MSimdUnbox instructions before
SIMD operations. This is already handled before the SIMD operations are created.

Assert that the MIRTypes are as expected instead.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
7c868a6a98 Bug 1244254 - Check SIMD arguments in IonBuilder. r=nbp
When inlining SIMD operations that take a SIMD type as an argument, explicitly
insert a type checking MSimdUnbox using the new unboxSimd() function. This
requires passing down the SimdType argument from inlineSimd().

- Remove SimdSign and other arguments that can be inferred from the SimdType.

- Add a new function inlineSimdShift() to handle the shift operations where the
  second argument is a scalar.

- Add a GetSimdLanes() function to SIMD.h which counts the number of lanes in a
  SIMD type.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
162a447b7b Bug 1244254 - Add IonBuilder::unboxSimd(). r=nbp
This helper function inserts an MUnboxSimd node which checks the arguments to
an inlined SIMD operation.

Use it for inlineSimdCheck() which now takes a SimdType argument. Also make
inlineSimdCheck produce a value that is a box/unbox pair instead of simply
returning its argument. This means that any SIMD type checking and unboxing
will happen at the time the check() function is executed, rather than when its
result is used. This is usually what you want.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
f32c213b4a Bug 1244254 - Pass a SimdType to inlineSimd(). r=nbp
We now have functions to create a (MIRType, SimdSign) from a SimdType, so use
those instead.

Calling SimdTypeToMIRType() also has the benefit of verifying that the list of
supported types in this function is consistent with the types in InlinableNative.

Following patches will push the SimdType to MIRType conversion further down the
call tree.
2016-02-09 08:46:00 -08:00
Jakob Stoklund Olesen
138ad03336 Bug 1244254 - Move SimdTypeToMIRType into the header. r=nbp
Provide two versions of this function:

- MaybeSimdTypeToMIRType returns false for unsupported SimdTypes.
- SimdTypeToMIRType asserts that the type is supported.

The conditional one is used in IonBuilder::inlineConstructSimdObject() to
provide a 'SimdTypeNotOptimized' outcome for JIT coach.
2016-02-09 08:45:59 -08:00
Ben Kelly
720d026727 Bug 1245724 - Make plugin network requests bypass service worker interception. r=ehsan 2016-02-09 11:14:51 -05:00
Bob Owen
03786961d3 Bug 1236680 Part 3: Add #ifs to include to fix bustage. r=me 2016-02-09 15:35:44 +00:00
Bob Owen
6902402578 Bug 1236680 Part 2: Resolve GMP path for moved Users folder. r=cpearce 2016-02-09 15:22:43 +00:00