Title: [249857] trunk/Source/_javascript_Core
- Revision
- 249857
- Author
- mark....@apple.com
- Date
- 2019-09-13 16:18:51 -0700 (Fri, 13 Sep 2019)
Log Message
performJITMemcpy() should do its !Gigacage assertion on exit.
https://bugs.webkit.org/show_bug.cgi?id=201780
<rdar://problem/55354867>
Reviewed by Robin Morisset.
* jit/ExecutableAllocator.h:
(JSC::GigacageAssertScope::GigacageAssertScope):
(JSC::GigacageAssertScope::~GigacageAssertScope):
(JSC::performJITMemcpy):
Modified Paths
Diff
Modified: trunk/Source/_javascript_Core/ChangeLog (249856 => 249857)
--- trunk/Source/_javascript_Core/ChangeLog 2019-09-13 22:06:51 UTC (rev 249856)
+++ trunk/Source/_javascript_Core/ChangeLog 2019-09-13 23:18:51 UTC (rev 249857)
@@ -1,3 +1,16 @@
+2019-09-13 Mark Lam <mark....@apple.com>
+
+ performJITMemcpy() should do its !Gigacage assertion on exit.
+ https://bugs.webkit.org/show_bug.cgi?id=201780
+ <rdar://problem/55354867>
+
+ Reviewed by Robin Morisset.
+
+ * jit/ExecutableAllocator.h:
+ (JSC::GigacageAssertScope::GigacageAssertScope):
+ (JSC::GigacageAssertScope::~GigacageAssertScope):
+ (JSC::performJITMemcpy):
+
2019-09-13 Yusuke Suzuki <ysuz...@apple.com>
[JSC] Micro-optimize YarrJIT's surrogate pair handling
Modified: trunk/Source/_javascript_Core/jit/ExecutableAllocator.h (249856 => 249857)
--- trunk/Source/_javascript_Core/jit/ExecutableAllocator.h 2019-09-13 22:06:51 UTC (rev 249856)
+++ trunk/Source/_javascript_Core/jit/ExecutableAllocator.h 2019-09-13 23:18:51 UTC (rev 249857)
@@ -116,9 +116,17 @@
JS_EXPORT_PRIVATE void dumpJITMemory(const void*, const void*, size_t);
+struct GigacageAssertScope {
+ GigacageAssertScope(const void *src)
+ : src(src)
+ { }
+ ~GigacageAssertScope() { RELEASE_ASSERT(!Gigacage::contains(src)); }
+ const void* src;
+};
+
static ALWAYS_INLINE void* performJITMemcpy(void *dst, const void *src, size_t n)
{
- RELEASE_ASSERT(!Gigacage::contains(src));
+ GigacageAssertScope assertScope(src);
#if CPU(ARM64)
static constexpr size_t instructionSize = sizeof(unsigned);
RELEASE_ASSERT(roundUpToMultipleOf<instructionSize>(dst) == dst);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes