Commit message (Collapse) | Author | Age | Lines | |
---|---|---|---|---|
* | Remove Unboxed Object code from /vm, Part 3. | wolfbeast | 2019-06-25 | -1538/+12 |
| | ||||
* | Remove Unboxed Object code from jit, Part 2. | wolfbeast | 2019-06-23 | -199/+2 |
| | ||||
* | Merge pull request #1137 from MoonchildProductions/remove-unboxed-checked | Moonchild | 2019-06-19 | -1824/+88 |
|\ | | | | | Remove unboxed (checked branch) | |||
| * | Remove JSOP_SPREADCALLARRAY and just use JSOP_NEWARRAY again. | wolfbeast | 2019-06-18 | -12/+2 |
| | | ||||
| * | Update comment | wolfbeast | 2019-06-18 | -4/+2 |
| | | ||||
| * | Remove and clean up more code. | wolfbeast | 2019-06-18 | -39/+8 |
| | | ||||
| * | Replace SetOrExtendBoxedOrUnboxedDenseElements with direct calls. | wolfbeast | 2019-06-18 | -38/+41 |
| | | ||||
| * | Clean up and rename MoveBoxedOrUnboxedDenseElements. | wolfbeast | 2019-06-18 | -16/+0 |
| | | ||||
| * | Convert CopyBoxedOrUnboxedDenseElements to something that doesn't crash. | wolfbeast | 2019-06-17 | -18/+0 |
| | | ||||
| * | Remove functors for array natives. | wolfbeast | 2019-06-12 | -121/+0 |
| | | ||||
| * | Remove unboxed array context option and shell flag. | wolfbeast | 2019-06-12 | -13/+0 |
| | | ||||
| * | Make use of ArrayObjects in favor of generic JS objects. | wolfbeast | 2019-06-12 | -14/+11 |
| | | | | | | | | | | ArrayObjects has been a thing for years but been under-used. About time they are used where prudent. | |||
| * | Inline combined methods for NativeObject and UnboxedArrayObject accesses. | wolfbeast | 2019-06-10 | -129/+9 |
| | | ||||
| * | Merge branch 'master' into remove-unboxed | wolfbeast | 2019-06-08 | -2/+6 |
| |\ | ||||
| * | | Remove UnboxedArray code part 2 | wolfbeast | 2019-05-23 | -1499/+94 |
| | | | ||||
* | | | Add Atomics.notify instead of Atomics.wake according to revised spec. | wolfbeast | 2019-06-12 | -1/+1 |
| |/ |/| | | | | | | | - Keep .wake as an alias until we're certain it can be removed. - Enable SAB memory | |||
* | | Merge pull request #1091 from MoonchildProductions/remove-unboxed | Moonchild | 2019-05-22 | -445/+5 |
|\| | | | | | Remove unboxed objects phase 1 | |||
| * | Remove Unboxed Objects from vm/ - Part 2 | wolfbeast | 2019-05-16 | -6/+0 |
| | | ||||
| * | Remove unboxed object code from jit, Part 1 | wolfbeast | 2019-05-16 | -12/+0 |
| | | ||||
| * | Remove Unboxed Objects from vm/ Part 1 + fix deprot | wolfbeast | 2019-05-16 | -15/+5 |
| | | ||||
| * | Remove initial chunk of Unboxed Objects machinery part 2 | wolfbeast | 2019-05-15 | -12/+0 |
| | | ||||
| * | remove unboxed code chunk (wip1) | wolfbeast | 2019-05-14 | -400/+0 |
| | | ||||
* | | Implement array.flat and array.flatMap | wolfbeast | 2019-05-19 | -0/+2 |
| | | | | | | | | | | | | Self-hosted implementation that adds both functions and adds them to @@unscopables as specced in ES2019. Resolves #1095 | |||
* | | Implement String.prototype.trimStart and trimEnd. | wolfbeast | 2019-05-17 | -2/+4 |
|/ | | | | | | This renames our internal function names because *Left and *Right might be deprecated and have to be removed later, making that trivial. Resolves #1089 | |||
* | Issue #187: Remove solaris conditional code. | wolfbeast | 2019-03-30 | -11/+0 |
| | ||||
* | Remove a couple of unused variables | adeshkp | 2019-03-14 | -1/+0 |
| | ||||
* | Align `instanceof` with the final ES6 spec. | wolfbeast | 2019-02-07 | -10/+7 |
| | ||||
* | Remove telemetry leftovers from JS engine. | adeshkp | 2019-01-30 | -88/+0 |
| | ||||
* | Reduce number of allocations in AutoStopwatch | David Teller | 2019-01-29 | -5/+20 |
| | | | | | | | | | | | | | | | 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" | wolfbeast | 2019-01-29 | -17/+7 |
| | | | | This reverts commit 3476c1d60ec29c5497123194acd7a9310b1023d2. | |||
* | Reduce number of allocations in AutoStopwatch | David Teller | 2019-01-28 | -7/+17 |
| | | | | | | | | | | | | | | | 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. | |||
* | Telemetry: Remove stubs and related code | adeshkp | 2019-01-12 | -7/+0 |
| | ||||
* | Use canonical function in TypeNewScript::rollbackPartiallyInitializedObjects. | wolfbeast | 2018-12-13 | -7/+13 |
| | ||||
* | Rename TypeSet::clone to TypeSet::cloneIntoUninitialized to indicate that it ↵ | trav90 | 2018-09-19 | -9/+11 |
| | | | | | | freshly initializes the TemporaryTypeSet* provided to it. Also removes existing code that, quite unnecessarily, partly initialized that argument. | |||
* | Don't use PodCopy/PodMove to implement typed-array element-to-element copying | trav90 | 2018-09-19 | -4/+17 |
| | | | | Standard std::copy and std::copy_n are readily optimized to the same thing, and they don't have a non-obvious requirement that the type being copied be trivial. | |||
* | Give uint8_clamped a defaulted (and also trivial) default constructor, copy ↵ | trav90 | 2018-09-19 | -6/+3 |
| | | | | | | constructor, and copy-assignment operator. This also allows uint8_clamped to be permissibly memmove'd and memcpy'd. | |||
* | Stop using PodZero in several places to initialize values of non-trivial type | trav90 | 2018-09-12 | -29/+33 |
| | ||||
* | Fix build bustage | trav90 | 2018-09-02 | -1/+1 |
| | ||||
* | Call the relevant scope-data constructor when allocating it, and poison/mark ↵ | trav90 | 2018-09-02 | -26/+53 |
| | | | | as undefined the memory for the trailing array of BindingNames, ratther than impermissibly PodZero-ing non-trivial classes. | |||
* | Convert the trailing array of BindingNames at the end of the various kinds ↵ | trav90 | 2018-09-02 | -13/+46 |
| | | | | of scope data into raw unsigned chars into which those BindingNames are placement-new'd, rather than memcpy-ing non-trivial classes around and failing to comply with the C++ object model | |||
* | Simplify HeapSlot to make it trivially copyable | trav90 | 2018-08-12 | -6/+4 |
| | | | | This removes the constructors, which were never called since we allocate arrays of HeapSlot with pod_malloc. The destructor is only ever called explicitly since we free this memory with js_free so it has been renamed to destroy(). Also removed is an unused manual barrier. | |||
* | Avoid using memcpy on HeapSlot that is not trivially copyable. | trav90 | 2018-08-12 | -4/+7 |
| | ||||
* | Fix Build Bustage - with "--enable-debug" | janekptacijarabaci | 2018-07-12 | -0/+3 |
| | ||||
* | Bug 1465108 - Use function pointers rather than virtual run method for GC ↵ | Jon Coppeard | 2018-06-07 | -2/+2 |
| | | | | parallel tasks r=sfink a=abillings a=RyanVM | |||
* | Refactor structured clone JSAPI to prevent mismatched scopes. | wolfbeast | 2018-06-07 | -208/+181 |
| | | | | Roll-up of bugs 1442722, 1455071, 1433642, 1456604 and 1458320. | |||
* | Change inlining of intrinsics. | wolfbeast | 2018-06-07 | -12/+33 |
| | ||||
* | Make InitRuntimeNumberState's return type reflect its infallible nature. | wolfbeast | 2018-05-04 | -2/+1 |
| | ||||
* | Issue #325 Part 14: Remove EXPOSE_INTL_API conditionals. | wolfbeast | 2018-05-04 | -31/+1 |
| | ||||
* | Issue #325 Part 5: Remove non-Intl legacy code paths from js. | wolfbeast | 2018-05-04 | -6/+2 |
| | ||||
* | Merge branch 'html_input_datetime_1' | wolfbeast | 2018-04-15 | -0/+1 |
|\ | | | | | | | This is almost everything needed for #162. |