Changeset 244625 in webkit
- Timestamp:
- Apr 24, 2019, 4:23:00 PM (7 years ago)
- Location:
- branches/safari-607.2.6.0-branch
- Files:
-
- 2 deleted
- 6 edited
-
JSTests/ChangeLog (modified) (1 diff)
-
JSTests/stress/map-b3-licm-infinite-loop.js (deleted)
-
Source/JavaScriptCore/ChangeLog (modified) (1 diff)
-
Source/JavaScriptCore/b3/testb3.cpp (modified) (2 diffs)
-
Source/WTF/ChangeLog (modified) (1 diff)
-
Source/WTF/WTF.xcodeproj/project.pbxproj (modified) (2 diffs)
-
Source/WTF/wtf/BackwardsGraph.h (modified) (3 diffs)
-
Source/WTF/wtf/SpanningTree.h (deleted)
Legend:
- Unmodified
- Added
- Removed
-
branches/safari-607.2.6.0-branch/JSTests/ChangeLog
r244122 r244625 1 2019-04-24 Alan Coon <alancoon@apple.com> 2 3 Revert r244122. rdar://problem/50132675 4 1 5 2019-04-09 Alan Coon <alancoon@apple.com> 2 6 -
branches/safari-607.2.6.0-branch/Source/JavaScriptCore/ChangeLog
r244624 r244625 1 2019-04-24 Alan Coon <alancoon@apple.com> 2 3 Revert r244122. rdar://problem/50132675 4 1 5 2019-04-24 Alan Coon <alancoon@apple.com> 2 6 -
branches/safari-607.2.6.0-branch/Source/JavaScriptCore/b3/testb3.cpp
r244122 r244625 16326 16326 16327 16327 compileAndRun<void>(proc); 16328 }16329 16330 void testInfiniteLoopDoesntCauseBadHoisting()16331 {16332 Procedure proc;16333 if (proc.optLevel() < 2)16334 return;16335 BasicBlock* root = proc.addBlock();16336 BasicBlock* header = proc.addBlock();16337 BasicBlock* loadBlock = proc.addBlock();16338 BasicBlock* postLoadBlock = proc.addBlock();16339 16340 Value* arg = root->appendNew<ArgumentRegValue>(proc, Origin(), GPRInfo::argumentGPR0);16341 root->appendNewControlValue(proc, Jump, Origin(), header);16342 16343 header->appendNewControlValue(16344 proc, Branch, Origin(),16345 header->appendNew<Value>(proc, Equal, Origin(),16346 arg,16347 header->appendNew<Const64Value>(proc, Origin(), 10)), header, loadBlock);16348 16349 PatchpointValue* patchpoint = loadBlock->appendNew<PatchpointValue>(proc, Void, Origin());16350 patchpoint->effects = Effects::none();16351 patchpoint->effects.writesLocalState = true; // Don't DCE this.16352 patchpoint->setGenerator(16353 [&] (CCallHelpers& jit, const StackmapGenerationParams&) {16354 // This works because we don't have callee saves.16355 jit.emitFunctionEpilogue();16356 jit.ret();16357 });16358 16359 Value* badLoad = loadBlock->appendNew<MemoryValue>(proc, Load, Int64, Origin(), arg, 0);16360 16361 loadBlock->appendNewControlValue(16362 proc, Branch, Origin(),16363 loadBlock->appendNew<Value>(proc, Equal, Origin(),16364 badLoad,16365 loadBlock->appendNew<Const64Value>(proc, Origin(), 45)), header, postLoadBlock);16366 16367 postLoadBlock->appendNewControlValue(proc, Return, Origin(), badLoad);16368 16369 // The patchpoint early ret() works because we don't have callee saves.16370 auto code = compileProc(proc);16371 RELEASE_ASSERT(!proc.calleeSaveRegisterAtOffsetList().size());16372 invoke<void>(*code, static_cast<uint64_t>(55)); // Shouldn't crash dereferncing 55.16373 16328 } 16374 16329 … … 17944 17899 RUN(testLoopWithMultipleHeaderEdges()); 17945 17900 17946 RUN(testInfiniteLoopDoesntCauseBadHoisting());17947 17948 17901 if (isX86()) { 17949 17902 RUN(testBranchBitAndImmFusion(Identity, Int64, 1, Air::BranchTest32, Air::Arg::Tmp)); -
branches/safari-607.2.6.0-branch/Source/WTF/ChangeLog
r244122 r244625 1 2019-04-24 Alan Coon <alancoon@apple.com> 2 3 Revert r244122. rdar://problem/50132675 4 1 5 2019-04-09 Alan Coon <alancoon@apple.com> 2 6 -
branches/safari-607.2.6.0-branch/Source/WTF/WTF.xcodeproj/project.pbxproj
r244122 r244625 389 389 70ECA60B1B02426800449739 /* SymbolImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SymbolImpl.h; sourceTree = "<group>"; }; 390 390 70ECA60C1B02426800449739 /* UniquedStringImpl.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UniquedStringImpl.h; sourceTree = "<group>"; }; 391 79038E05224B05A7004C0738 /* SpanningTree.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SpanningTree.h; sourceTree = "<group>"; };392 391 7936D6A91C99F8AE000D1AED /* SmallPtrSet.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SmallPtrSet.h; sourceTree = "<group>"; }; 393 392 793BFADD9CED44B8B9FBCA16 /* StdUnorderedMap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = StdUnorderedMap.h; sourceTree = "<group>"; }; … … 1079 1078 7936D6A91C99F8AE000D1AED /* SmallPtrSet.h */, 1080 1079 A30D412D1F0DE13F00B71954 /* SoftLinking.h */, 1081 79038E05224B05A7004C0738 /* SpanningTree.h */,1082 1080 A8A4730D151A825B004123FF /* Spectrum.h */, 1083 1081 A8A4730E151A825B004123FF /* StackBounds.cpp */, -
branches/safari-607.2.6.0-branch/Source/WTF/wtf/BackwardsGraph.h
r244122 r244625 1 1 /* 2 * Copyright (C) 2016 -2019Apple Inc. All rights reserved.2 * Copyright (C) 2016 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 30 30 #include <wtf/Noncopyable.h> 31 31 #include <wtf/SingleRootGraph.h> 32 #include <wtf/SpanningTree.h>33 32 #include <wtf/StdLibExtras.h> 34 33 … … 58 57 } 59 58 }; 60 61 {62 // Loops are a form of terminality (you can loop forever). To have a loop, you need to63 // have a back edge. An edge u->v is a back edge when u is a descendent of v in the64 // DFS spanning tree of the Graph.65 SpanningTree<Graph> spanningTree(graph);66 for (unsigned i = 0; i < graph.numNodes(); ++i) {67 if (typename Graph::Node node = graph.node(i)) {68 for (typename Graph::Node successor : graph.successors(node)) {69 if (spanningTree.isDescendent(node, successor)) {70 addRootSuccessor(node);71 break;72 }73 }74 }75 }76 }77 59 78 60 for (unsigned i = 0; i < graph.numNodes(); ++i) {
Note:
See TracChangeset
for help on using the changeset viewer.