summaryrefslogtreecommitdiffstats
path: root/js/src
Commit message (Collapse)AuthorAgeLines
* Inline Parser::reportHelper into its callers.wolfbeast2019-04-06-8/+29
|
* Remove Parser::reportWithNode and its remaining callers.wolfbeast2019-04-06-24/+7
| | | | | All of the callsites have a full ParseNode* at hand, of which the offset can be directly accessed.
* Report errors for bad increment/decrement operands usingwolfbeast2019-04-06-30/+27
| | | | explicitly-specified offsets.
* Simplify checking of targets within destructuring patterns.wolfbeast2019-04-06-82/+14
|
* Simplify increment/decrement operand checking.wolfbeast2019-04-06-18/+20
|
* Inline Parser::checkAssignmentToCall into its sole caller.wolfbeast2019-04-06-16/+5
|
* Specify an explicit offset when reporting an error for a for-of loopwolfbeast2019-04-06-1/+1
| | | | whose target is an expression that begins with 'let'.
* Simplify checking of the left-hand side of assignment and compoundwolfbeast2019-04-06-50/+28
| | | | assignment expressions.
* Remove for-in/of loop parsing code that redundantly marks the loopwolfbeast2019-04-06-6/+0
| | | | target as assigned -- Parser::forHeadStart already does this.
* Report some errors about invalid left-hand-sides in for-in/of loop headswolfbeast2019-04-06-38/+26
| | | | using code with an explicitly computed offset.
* Report the error for uninitialized const-declaration in for(;;) loopwolfbeast2019-04-06-1/+1
| | | | head using an explicit offset.
* Remove Parser::reportWithOffset since it's no longer used.wolfbeast2019-04-06-12/+0
|
* Introduce Parser::warningAtwolfbeast2019-04-06-12/+19
| | | | | This reduces reporting an warning at a particular offset to its bare essentials, simplifying calls.
* Report for-loop-decl-with-initializer errors using a specified offsetwolfbeast2019-04-06-2/+4
| | | | instead of a node's offset.
* Report bad-class-member errors using a specified offset instead of a node's ↵wolfbeast2019-04-06-4/+4
| | | | offset.
* Remove Parser::reportBadReturnwolfbeast2019-04-06-29/+10
| | | | Report simpler errors that don't use the offset of a node as location.
* Introduce Parser::errorAtwolfbeast2019-04-06-32/+42
| | | | | This reduces reporting an error at a particular offset to its bare essentials, simplifying calls.
* Inline Parser::checkFunctionDefinition into its sole caller.wolfbeast2019-04-06-65/+49
|
* Inline GeneratorKindFromPropertyType and AsyncKindFromPropertyType.wolfbeast2019-04-06-20/+9
| | | | Trivially inlines these into their sole caller.
* Move the Parser::checkFunctionDefinition call into its callers.wolfbeast2019-04-06-95/+116
|
* Move part of Parser::functionDefinition into callers.wolfbeast2019-04-06-20/+31
|
* Track strict mode errors in for...in and for...of correctly whenwolfbeast2019-04-05-4/+5
| | | | syntax-parsing.
* Track strict mode errors in unary deletions correctly whenwolfbeast2019-04-05-2/+24
| | | | syntax-parsing.
* Specify an explicit offset when warning about "use asm" found in thewolfbeast2019-04-05-6/+7
| | | | directive prologue of a script (rather than a function body).
* Change report at current offset to warning(), extraWarning() and error()wolfbeast2019-04-05-122/+152
|
* Remove the |bool strict| argument from the report-at-current-offsetwolfbeast2019-04-05-125/+140
| | | | | Parser function (zeport). zeport => qeport
* Split Parser::report into Parser::zeport (a temporary name) that useswolfbeast2019-04-05-209/+198
| | | | | the current offset, and Parser::reportWithNode that derives it from a Node.
* Merge branch 'master' into 816wolfbeast2019-04-05-288/+97
|\
| * Remove AIX 1st party code OS checks, part 2wolfbeast2019-04-01-7/+1
| | | | | | | | Issue #186
| * Remove AIX 1st party code OS checks, part 1wolfbeast2019-03-31-26/+0
| | | | | | | | Issue #186
| * Issue #187: Remove solaris 1st party code OS checks.wolfbeast2019-03-30-28/+0
| |
| * Issue #187: Remove solaris conditional code.wolfbeast2019-03-30-130/+2
| |
| * Simplify some alias sets in IonMonkey.wolfbeast2019-03-26-6/+4
| |
| * Restrict ExtractLinearSum to monotonous operation in infinite math space.Nicolas B. Pierron2019-03-23-4/+17
| | | | | | | | | | Thanks to Bruno Keith & Niklas Baumstark from the phoenhex team for finding this issue and reporting it with a proper analysis.
| * Reset nursery position when it's disabled.Jon Coppeard2019-03-22-0/+2
| |
| * Check for dead wrappers in CallerGetterImpl/CallerSetterImpl.wolfbeast2019-03-22-46/+12
| | | | | | | | | | This also removes code duplication by making CallerSetterImpl call CallerGetterImpl.
| * Pref the use of unboxed plain objects in JS and disable by default.wolfbeast2019-03-21-13/+17
| | | | | | | | | | This should be all that's needed for #1017, but verification of impact is definitely desired.
| * Remove a couple of unused variablesadeshkp2019-03-14-2/+0
| |
| * Use C++11 thread-safe statics with MSVC. (js)wolfbeast2019-02-14-4/+0
| |
| * Fix possible data race while updating scope object during compacting GC.wolfbeast2019-02-07-3/+8
| |
| * Align `instanceof` with the final ES6 spec.wolfbeast2019-02-07-18/+30
| |
| * Fix build error with JS_HAS_TOSOURCE undefined.wolfbeast2019-02-02-1/+4
| |
* | Stage 1-4: Update testsTooru Fujisawa2019-02-03-53/+424
| |
* | Stage 1-3: Generate better source in Object.prototype.toSource.wolfbeast2019-02-02-87/+193
| | | | | | | | Tag #960.
* | Stage 1-2: Remove a space after comma in parameter list for generatedwolfbeast2019-02-02-1/+1
| | | | | | | | function source.
* | Stage 1-1: Implement Function.prototype.toString revision proposal.wolfbeast2019-02-02-154/+330
|/ | | | Tag #960
* Remove telemetry leftovers from JS engine.adeshkp2019-01-30-453/+63
|
* Reduce number of allocations in AutoStopwatchDavid Teller2019-01-29-6/+21
| | | | | | | | | | | | | | | This patch fixes two related issues. 1. The AutoStopwatch uses a stack-allocated `mozilla::Vector` to communicate with its callback during each compartment switch. This vector was designed to allow its contents to be stack-allocated but they turned out to be accidentally heap-allocated. 2. During each tick, the stopwatch fills a vector `recentGroups_`. This vector always started with minimal capacity and had to grow repeatedly as groups were added, causing repeated reallocations. This patch preallocates `recentGroups_` to have the same capacity as the previous tick. We expect that this should eventually reach a stable size that closely matches the actual needs of the process.
* Revert "Reduce number of allocations in AutoStopwatch"wolfbeast2019-01-29-18/+8
| | | | This reverts commit 3476c1d60ec29c5497123194acd7a9310b1023d2.
* Reduce number of allocations in AutoStopwatchDavid Teller2019-01-28-8/+18
| | | | | | | | | | | | | | | This patch fixes two related issues. 1. The AutoStopwatch uses a stack-allocated `mozilla::Vector` to communicate with its callback during each compartment switch. This vector was designed to allow its contents to be stack-allocated but they turned out to be accidentally heap-allocated. 2. During each tick, the stopwatch fills a vector `recentGroups_`. This vector always started with minimal capacity and had to grow repeatedly as groups were added, causing repeated reallocations. This patch preallocates `recentGroups_` to have the same capacity as the previous tick. We expect that this should eventually reach a stable size that closely matches the actual needs of the process.