Changeset 219098 in webkit
- Timestamp:
- Jul 3, 2017, 2:51:01 PM (8 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/ChangeLog
r219097 r219098 1 2017-07-03 Saam Barati <[email protected]> 2 3 Add better crash logging for allocation sinking phase 4 https://bugs.webkit.org/show_bug.cgi?id=174102 5 <rdar://problem/33112092> 6 7 Rubber stamped by Filip Pizlo. 8 9 I'm trying to gather better information from crashlogs about why 10 we're crashing in the allocation sinking phase. I'm adding a allocation 11 sinking specific RELEASE_ASSERT as well as marking a few functions as 12 NEVER_INLINE to have the stack traces in the crash trace contain more 13 actionable information. 14 15 * dfg/DFGObjectAllocationSinkingPhase.cpp: 16 1 17 2017-07-03 Sam Weinig <[email protected]> 2 18 -
trunk/Source/JavaScriptCore/dfg/DFGObjectAllocationSinkingPhase.cpp
r213939 r219098 48 48 49 49 namespace { 50 51 NO_RETURN_DUE_TO_CRASH NEVER_INLINE void crash(const char*, int line, int) 52 { 53 CRASH_WITH_SECURITY_IMPLICATION_AND_INFO(line); 54 } 55 56 #undef RELEASE_ASSERT 57 #define RELEASE_ASSERT(assertion) do { \ 58 if (!(assertion)) { \ 59 WTFReportAssertionFailure(__FILE__, __LINE__, WTF_PRETTY_FUNCTION, #assertion); \ 60 crash(__FILE__, __LINE__, __COUNTER__); \ 61 } \ 62 } while (0) 50 63 51 64 bool verbose = false; … … 1907 1920 } 1908 1921 1909 N ode* resolve(BasicBlock* block, PromotedHeapLocation location)1922 NEVER_INLINE Node* resolve(BasicBlock* block, PromotedHeapLocation location) 1910 1923 { 1911 1924 // If we are currently pointing to a single local allocation, … … 1932 1945 } 1933 1946 1934 N ode* resolve(BasicBlock* block, Node* node)1947 NEVER_INLINE Node* resolve(BasicBlock* block, Node* node) 1935 1948 { 1936 1949 // If we are currently pointing to a single local allocation, … … 1946 1959 } 1947 1960 1948 N ode* getMaterialization(BasicBlock* block, Node* identifier)1961 NEVER_INLINE Node* getMaterialization(BasicBlock* block, Node* identifier) 1949 1962 { 1950 1963 ASSERT(m_heap.isAllocation(identifier));
Note:
See TracChangeset
for help on using the changeset viewer.