97366c8fa024314ee9f130e542e1e150e96f7e6d: Bug 1207827 - Delete Assembler::actualOffset() and transitive closure. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269658
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Delete Assembler::actualOffset() and transitive closure. r=nbp The implemetation of Assembler::actualOffset() is now a no-op in all targets, and it is no longer necessary to rewrite assembler buffer offsets to their final form after finishing the assembler buffer. - Delete Assembler::actualOffset() in all targets. - Delete AsmJSModule::CodeRange::updateOffsets(). - Delete AsmJSModule::updateCodeOffset(). - Delete AsmJSModule::updateOffsets(). - Delete CodeOffsetLabel::fixup(). - Delete ICEnty::fixupReturnOffset(). - Delete LSafepoint::fixupOffset(). - Delete OsiIndex::fixUpOffset(). - Delete PCMappingEntry::fixupNativeOffset(). Also delete all code calling these functions.
0c6da2dc2bc49cd7c79496cac9ec6e6f597047d7: Bug 1207827 - Remove ARM temporary offset buffers. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269657
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Remove ARM temporary offset buffers. r=nbp The ARM assembler no longer needs to keep track of code offsets for later translation to 'actual' offsets. The AssemblerBuffer offsets are directly usable now. Remove tmpDataRelocations_, tmpPreBarriers_, and tmpJumpRelocations_.
3bb6cd5b7e5635c826c630a0ab237af4aec768de: Bug 1207827 - Remove ARM64 temporary offset buffers. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269656
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Remove ARM64 temporary offset buffers. r=nbp The ARM64 assembler no longer needs to keep track of code offsets for later translation to 'final' offsets. The AssemblerBuffer offsets are directly usable now. Remove tmpDataRelocations_, tmpPreBarriers_, tmpJumpRelocations_, and the finalOffset() method.
5beca478137361e9e6c212577d0d694be42d2a56: Bug 1207827 - Eliminate poolSizeBefore(). r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269655
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Eliminate poolSizeBefore(). r=nbp This method was used by the Assembler::actualOffset() methods to translate buffer offsets from pre-pool to post-pool numbers. Since pools are now injected immediately, there is no need to translate offsets. All the actualOffset() methods have become no-ops in all our supported targets.
a6667610d4ba14c1a1505c5bb672f95b87f948a2: Bug 1207827 - Switch jit::Pool to a LifoAllocPolicy. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269654
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Switch jit::Pool to a LifoAllocPolicy. r=nbp This is possible because we no longer PodCopy the pools. Use a more reasonable size for the inline memory in the loadOffsets vector (8 loads instead of 512). This saves stack space when a MacroAssembler is created on the stack. Use a matching inline size of 8 entries for the poolData array itself. Don't drop memory in Pool::reset() by calling placement new - call Vector::clear() instead which hangs on to previously allocated memory for use by the next pool. Delete an unused array of pools in arm64/vixl/MozBaseAssembler-vixl.h.
a205783978a08750991298a31e089271f78141e0: Bug 1207827 - Use a Vector for poolInfo_. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:09 -0700 - rev 269653
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Use a Vector for poolInfo_. r=nbp Use a Vector with 8 preallocated slots and a LifoAllocPolicy allocating from the parent AssemblerBuffer's lifoAlloc_. We'll rarely need more than 8 constant pools in a single assembler. We can't actually allocate memory from this->lifoAlloc_ in the constructor, but it is OK to capture allocator references like the Vector constructor does. Add an assertion to initWithAllocator() to verify that we didn't allocate anything from lifoAlloc_ before the MacroAssembler constructor had a chance to install an AutoJitContextAlloc.
e7e10092994ca6a858c4c7dd1068436681baa973: Bug 1207827 - Stop perforating AssemblerBuffers. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:08 -0700 - rev 269652
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Stop perforating AssemblerBuffers. r=nbp There is no longer a 1-1 correspondence between buffer slices and constant pools. We no longer need the ability to truncate a buffer slice prematurely. This uses less memory.
05d587cc9378ac9a912eac622a9ce3b807e1fbc0: Bug 1207827 - Copy pool data into buffer immediately. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:08 -0700 - rev 269651
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Copy pool data into buffer immediately. r=nbp Since constant pools have been simplified such that they always follow the load instructions referencing them, it is now possible to copy the pool data into the main assembly buffer right away in finishPool() instead of deferring the copy to executableCopy(). This has the important effect that BufferOffset values don't need to be adjusted to account for the size of injected constant pools. - In finishPool(), copy the constant pool data into the main assembler buffer with putBytesLarge() which allows the potentially large pool data to be split over multiple slices. - Stop copying pool data in executableCopy(). It has already been copied in finishPool(). - Simplify the PoolInfo data structure to a simple (firstEntry, offset) pair which records the necessary information about a single emitted constant pool. - Rewrite poolEntryOffset() to use the new PoolInfo data. - Simplify poolSizeBefore() to just return 0. This function will be removed entirely in a followup patch. - Stop patching branches in executableCopy() and delete the patchBranch() method. Since buffer offsets are reliable when the branches are inserted and when labels are bound, there is no need to adjust branches to account for constant pools. - Delete the BufferSliceTail class. It is no longer necessary to maintain a bit vector of branch instructions since we don't rewrite branches any longer. Use the plain AssemblerBuffer::Slice class instead. This patch implements the basic functional change of copying pool data immediately instead of deferring it. Followup patches will clean up the now redundant code.
607b2fd0ecb87317012902d29900d218f03c96b2: Bug 1207827 - Add AssemblerBuffer::putBytesLarge. r=nbp
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 17:06:08 -0700 - rev 269650
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1207827 - Add AssemblerBuffer::putBytesLarge. r=nbp This new method copies a large amount of data into the assembler buffer, potentially splitting it across multiple slices. The existing putBytes() method can only copy into a single slice which limits the maximum since of data that can be inserted and potentially wastes space at the end of the previous slice.
f9cd7aa25d6f212d0cf6c48318ff47f2c4ebab88: Bug 1211402 - dump hazards.txt into log file, r=me
Steve Fink <sfink@mozilla.com> - Mon, 26 Oct 2015 15:46:49 -0700 - rev 269649
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1211402 - dump hazards.txt into log file, r=me
96eeff9fec807670d5e39102498469fdf613c91a: Bug 1193610 - Also use SystemParametersInfo to block screen saver on Windows, so it works on WinXP and Vista. r=jimm
Chris Pearce <cpearce@mozilla.com> - Tue, 27 Oct 2015 11:58:15 +1300 - rev 269648
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1193610 - Also use SystemParametersInfo to block screen saver on Windows, so it works on WinXP and Vista. r=jimm
08493e40a4ad44fb3d05d4c19ab8fd923a8de737: Bug 1217061 - Report OOMs in IonCache::linkAndAttachStub(). r=djvj
Jakob Olesen <jolesen@mozilla.com> - Mon, 26 Oct 2015 15:39:51 -0700 - rev 269647
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1217061 - Report OOMs in IonCache::linkAndAttachStub(). r=djvj The method IonCache::linkAndAttachStub() can run out of memory in a few ways: When adding entries to the global jit code table, and when generating code through the macro assembler. Make sure to call ReportOutOfMemory() before returning false when that happens. Otherwise we won't get the right of error reported, and OOM simulation tests fail. The Linker already calls ReportOutOfMemory(), so we don't need to handle those calls.
23f0dcfdcce1de9293704d6e59a679eed76eeede: bug 1217602 - remove nsIPKIParamBlock r=Cykesiopka
David Keeler <dkeeler@mozilla.com> - Thu, 22 Oct 2015 13:11:40 -0700 - rev 269646
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
bug 1217602 - remove nsIPKIParamBlock r=Cykesiopka nsIPKIParamBlock was unnecessary.
92d383d8d282e9fb35302836f9e44717c2d1d4cc: Bug 1184890 part.3 TSFTextStore shouldn't commit composition when a selection change notification occurred before starting current composition r=m_kato
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 27 Oct 2015 07:21:37 +0900 - rev 269645
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1184890 part.3 TSFTextStore shouldn't commit composition when a selection change notification occurred before starting current composition r=m_kato
e23949bd2c042aa175f029112a26114c2ea6b558: Bug 1184890 part.2 IMContextWrapper shouldn't commit composition when a selection change notification occurred before starting current composition r=m_kato
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 27 Oct 2015 07:21:37 +0900 - rev 269644
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1184890 part.2 IMContextWrapper shouldn't commit composition when a selection change notification occurred before starting current composition r=m_kato
760b56778e5a427026377c5ac2170f56917a672c: Bug 1184890 part.1 SelectionChangeDataBase and TextChangeDataBase should have a flag which indicates whether the change occurred during composition or not r=smaug
Masayuki Nakano <masayuki@d-toybox.com> - Tue, 27 Oct 2015 07:21:37 +0900 - rev 269643
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1184890 part.1 SelectionChangeDataBase and TextChangeDataBase should have a flag which indicates whether the change occurred during composition or not r=smaug
d70472571f1d0313456c99d8f34e3ecbc9831cfe: Merge m-c to inbound, a=merge
Wes Kocher <wkocher@mozilla.com> - Mon, 26 Oct 2015 14:38:13 -0700 - rev 269642
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Merge m-c to inbound, a=merge
a6f01cc9c740cc536a8d4e73565e1ee0db55427b: Bug 1167029 - Remove support for let blocks. (r=jorendorff)
Shu-yu Guo <shu@rfrn.org> - Mon, 26 Oct 2015 14:13:25 -0700 - rev 269641
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1167029 - Remove support for let blocks. (r=jorendorff)
a944e7136866c0a95a0ef18918d04840c4905bf5: Bug 1214048 - Improve callee-not-a-function error for spread calls. (r=jorendorff)
Shu-yu Guo <shu@rfrn.org> - Mon, 26 Oct 2015 14:13:25 -0700 - rev 269640
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 1214048 - Improve callee-not-a-function error for spread calls. (r=jorendorff)
f066d7c6b5566699ae3624b59b20ab51d9eda71e: Bug 618898 - Part 1: Add WGL_NV_DX_interop. r=jgilbert
Benoit Girard <b56girard@gmail.com> - Thu, 08 Oct 2015 16:36:58 -0400 - rev 269639
Push 29587 by cbook@mozilla.com at Tue, 27 Oct 2015 09:56:28 +0000
Bug 618898 - Part 1: Add WGL_NV_DX_interop. r=jgilbert
(0) -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 +300000 tip