summaryrefslogtreecommitdiffstats
path: root/js/src
Commit message (Collapse)AuthorAgeLines
* Handle same-compartment wrappers in TypedArray methods.wolfbeast2018-03-17-40/+55
| | | | | | | | | | | | | | | | | | | | | | CallTypedArrayMethodIfWrapped (and the CallNonGeneric machinery throughout the engine) unwraps the `this` argument, but the other arguments are only rewrapped for the target compartment. The pattern being used before this patch to get the length of a TypedArray or possible TypedArray wrapper is: `callFunction(CallTypedArrayMethodIfWrapped, O, O, "TypedArrayLength")` The first `O` is the `this` value and the second is an argument. If `O` is a cross-compartment wrapper, this works fine. The first `O` is unwrapped, revealing the actual TypedArray object; the second `O` is rewrapped for that TypedArray's compartment, producing the same TypedArray. However, if `O` is a same-compartment wrapper, this doesn't work. The first `O` is unwrapped, revealing the actual TypedArray object in the same compartment; rewrapping the other `O` does nothing to it, since it is already an object in the target compartment. Thus TypedArrayLength receives a `this` value that's an unwrapped TypedArray, but an argument that is still a wrapper. The fix is to have CallTypedArrayMethodIfWrapped targets only expect `this` to be an unwrapped TypedArray.
* Bug 1434384 - Mark v1 structured clone data as cross-process. r=jorendorff, ↵Steve Fink2018-03-14-3/+4
| | | | | | | | a=RyanVM --HG-- extra : source : d85679eb427513cb18650f3d4e7d37a6ccbefbab extra : intermediate-source : 5c286cc709dfcaca7269b88516e6f71626c98496
* Bug 1437450 - Disable Ion no-clone optimization for regexps if the graph ↵Jan de Mooij2018-03-14-0/+6
| | | | | | | | | contains try blocks. r=nbp, a=RyanVM --HG-- extra : source : 61b461277369e0cec89c79d8526a82c575818e94 extra : intermediate-source : 806696d494300c8c09ad2c0c3141194b5418a706 extra : histedit_source : e38bbe5c22bace744f6da0b8ff39462b64fe5a95
* Bug 1430173 - Reduce the precision of all explicit clocks to 2ms. r=baku, ↵Tom Ritter2018-03-14-1/+4
| | | | | | | | | | | a=RyanVM Backport to ESR where we don't have the ResistFingerprinting component. MozReview-Commit-ID: 9bjycHjR3SF --HG-- extra : transplant_source : %EA%03%21%0A%E9%3F%8E%CD%7C%D79f%96%85%96%00%5D%7F%95X
* Bug 1437507 - Fix JSObject::setFlags to call ensureShape before checking for ↵Brian Hackett2018-03-14-4/+4
| | | | | | | | dictionary mode. r=jandem, a=RyanVM --HG-- extra : source : ca6b74831ec3db204e024b07f200b0d1ce93557e extra : intermediate-source : 9d7c295d9570e294851908465f56ec0779547d2a
* Bug 1430761 - Update tzdata in ICU data files to 2018c. r=Waldo, a=lizzardAndré Bargull2018-03-14-6/+5
| | | | | --HG-- extra : rebase_source : cb9ac8a678b6f565091f6d7733b6cd86afde0da7
* JS - RegExp - match updated spec for `/\b/iu` and `/\B/iu`janekptacijarabaci2018-03-12-8/+50
|
* Generate irregexp character tables with make_unicode.py.wolfbeast2018-03-12-109/+485
|
* Revert "JS - RegExp - match updated spec for `/\b/iu` and `/\B/iu`"wolfbeast2018-03-12-50/+8
| | | | This reverts commit 93f8e06bb8d8656e868679d584c7c8771ff8e42f.
* JS - Object - "TypeError: setting a property that has only a getter" without ↵janekptacijarabaci2018-03-12-16/+1
| | | | mentioning file and property name
* JS - RegExp - match updated spec for `/\b/iu` and `/\B/iu`janekptacijarabaci2018-03-12-8/+50
|
* Disable strict-aliasing for GCC in js/src/jsapi-teststrav902018-03-04-1/+1
| | | | Compiling our tree with strict-aliasing is not supported.
* Disable -Wimplicit-fallthrough when building jsdtoa.cpptrav902018-03-04-1/+1
| | | | GCC 7 supports the clang option -Wimplicit-fallthrough.
* Disable strict-aliasing for GCC in js/src/gdbtrav902018-03-04-1/+1
| | | | Compiling our tree with strict-aliasing is not supported.
* Disable strict-aliasing for GCC in js/srctrav902018-03-04-1/+3
| | | | Compiling our tree with strict-aliasing is not supported.
* Use thread_local calls on Win and Mac.wolfbeast2018-02-19-1/+1
| | | | This resolves #24.
* Remove SEH try blocks from a11y code.wolfbeast2018-02-19-322/+7
|
* Make the proper Windows APIs natively available to our tree.wolfbeast2018-02-19-5/+4
| | | | | Tag #22. This bypasses custom definitions of some functions for things natively available in Windows 7.
* Part 2Matt A. Tobin2018-02-18-6/+1
|
* Merge branch 'ported-upstream'wolfbeast2018-02-09-59/+92
|\
| * Limit the number of SharedArrayBuffers in normal JS code (not just asm.js).wolfbeast2018-02-09-15/+19
| |
| * Make XDR decoding more robust.wolfbeast2018-02-08-23/+57
| |
| * WASM: Separate out ToTableIndex()wolfbeast2018-02-08-2/+16
| |
| * Remove unnecessary InvalidateCompilerOutputsForScript call.wolfbeast2018-02-08-19/+0
| |
* | Re-enable asm.js cachingwolfbeast2018-02-09-4/+0
|/
* Add rematerialized frames to the table on JitActivation after ↵wolfbeast2018-02-08-8/+71
| | | | rematerialization succeeds.
* WASM: Set OOM failure flag on alloc failure when context is available.wolfbeast2018-02-07-2/+6
|
* Add pluralrules to JS Intlwolfbeast2018-02-07-134/+542
|
* Always initialize nursery data structures even if size is smaller than one ↵wolfbeast2018-02-05-7/+7
| | | | chunk.
* Split double MoveOperands that conflict with floats.wolfbeast2018-02-05-1/+203
|
* Remove unused compileBarriers()wolfbeast2018-02-03-2/+0
|
* Remove SetGCZeal() stub and its callers.wolfbeast2018-02-03-19/+0
|
* Remove runDebugGC() stubwolfbeast2018-02-03-6/+0
|
* Remove pushZealSelectedObjects() and callerwolfbeast2018-02-03-9/+0
|
* Remove finishMarkingValidation and callerwolfbeast2018-02-03-9/+0
|
* Remove validateIncrementalMarking() and callerwolfbeast2018-02-03-8/+0
|
* Remove computeNonIncrementalMarkingForValidation(lock) and callerwolfbeast2018-02-03-8/+0
|
* Remove VerifyBarriers() and MaybeVerifyBarriers() stubs and callers.wolfbeast2018-02-03-29/+0
|
* Remove AutoStopVerifyingBarriers RAII stub struct no longer in use.wolfbeast2018-02-03-9/+0
|
* Remove needZealousGC()wolfbeast2018-02-03-4/+0
|
* Remove upcomingZealousGC() and callerwolfbeast2018-02-03-5/+0
|
* Remove clearZealMode(mode)wolfbeast2018-02-03-2/+0
|
* Remove hasZealMode(mode) and callerswolfbeast2018-02-03-40/+4
|
* Remove isVerifyPreBarriersEnabled() stub and callerswolfbeast2018-02-03-6/+2
|
* Remove "has-gczeal" property.wolfbeast2018-02-03-4/+0
|
* Remove remaining conditional GCZeal code.wolfbeast2018-02-03-783/+4
| | | | | | | | | | | | | | | Creates stubs: jsgc.h/cpp VerifyBarriers() stub MaybeVerifyBarriers() stub GCRuntime::computeNonIncrementalMarkingForValidation() stub GCRuntime::validateIncrementalMarking() stub GCRuntime::finishMarkingValidation() stub GCRuntime::pushZealSelectedObjects() stub bool useZeal? GCRuntime::runDebugGC() stub XPConnect: nsXPCComponents_Utils::SetGCZeal() stub (always NS_OK)
* Remove GCZeal: Base cleanupwolfbeast2018-02-03-889/+1
| | | | UXP repo issue #8
* Implement configuration pref for Generational Garbage Collection.wolfbeast2018-02-02-0/+14
| | | | | Pref: javascript.options.mem.gc_generational This resolves #20
* Use UTC where appropriate in python filesMatt A. Tobin2018-02-02-10/+10
|
* Add m-esr52 at 52.6.0Matt A. Tobin2018-02-02-0/+2229324