Changeset 215073 in webkit for trunk/Source/JavaScriptCore
- Timestamp:
- Apr 6, 2017, 5:26:53 PM (8 years ago)
- Location:
- trunk/Source/JavaScriptCore
- Files:
-
- 4 edited
- 2 moved
Legend:
- Unmodified
- Added
- Removed
-
trunk/Source/JavaScriptCore/CMakeLists.txt
r214919 r215073 76 76 b3/air/AirAllocateRegistersByGraphColoring.cpp 77 77 b3/air/AirAllocateRegistersByLinearScan.cpp 78 b3/air/AirAllocateStack .cpp78 b3/air/AirAllocateStackByGraphColoring.cpp 79 79 b3/air/AirArg.cpp 80 80 b3/air/AirBasicBlock.cpp -
trunk/Source/JavaScriptCore/ChangeLog
r215072 r215073 1 2017-04-06 Filip Pizlo <[email protected]> 2 3 Rename allocateStack to allocateStackByGraphColoring. 4 5 Rubber stamped by Saam Barati. 6 7 * CMakeLists.txt: 8 * JavaScriptCore.xcodeproj/project.pbxproj: 9 * b3/air/AirAllocateStack.cpp: Removed. 10 * b3/air/AirAllocateStack.h: Removed. 11 * b3/air/AirAllocateStackByGraphColoring.cpp: Copied from Source/JavaScriptCore/b3/air/AirAllocateStack.cpp. 12 (JSC::B3::Air::allocateStackByGraphColoring): 13 (JSC::B3::Air::allocateStack): Deleted. 14 * b3/air/AirAllocateStackByGraphColoring.h: Copied from Source/JavaScriptCore/b3/air/AirAllocateStack.h. 15 * b3/air/AirGenerate.cpp: 16 (JSC::B3::Air::prepareForGeneration): 17 1 18 2017-04-06 Michael Saboff <[email protected]> 2 19 -
trunk/Source/JavaScriptCore/JavaScriptCore.xcodeproj/project.pbxproj
r215071 r215073 935 935 0FEC85461BDACDAC0080FF74 /* B3ValueRep.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEC84FC1BDACDAC0080FF74 /* B3ValueRep.cpp */; }; 936 936 0FEC85471BDACDAC0080FF74 /* B3ValueRep.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FEC84FD1BDACDAC0080FF74 /* B3ValueRep.h */; }; 937 0FEC856D1BDACDC70080FF74 /* AirAllocateStack .cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEC85481BDACDC70080FF74 /* AirAllocateStack.cpp */; };938 0FEC856E1BDACDC70080FF74 /* AirAllocateStack .h in Headers */ = {isa = PBXBuildFile; fileRef = 0FEC85491BDACDC70080FF74 /* AirAllocateStack.h */; };937 0FEC856D1BDACDC70080FF74 /* AirAllocateStackByGraphColoring.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEC85481BDACDC70080FF74 /* AirAllocateStackByGraphColoring.cpp */; }; 938 0FEC856E1BDACDC70080FF74 /* AirAllocateStackByGraphColoring.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FEC85491BDACDC70080FF74 /* AirAllocateStackByGraphColoring.h */; }; 939 939 0FEC856F1BDACDC70080FF74 /* AirArg.cpp in Sources */ = {isa = PBXBuildFile; fileRef = 0FEC854A1BDACDC70080FF74 /* AirArg.cpp */; }; 940 940 0FEC85701BDACDC70080FF74 /* AirArg.h in Headers */ = {isa = PBXBuildFile; fileRef = 0FEC854B1BDACDC70080FF74 /* AirArg.h */; }; … … 3484 3484 0FEC84FC1BDACDAC0080FF74 /* B3ValueRep.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = B3ValueRep.cpp; path = b3/B3ValueRep.cpp; sourceTree = "<group>"; }; 3485 3485 0FEC84FD1BDACDAC0080FF74 /* B3ValueRep.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = B3ValueRep.h; path = b3/B3ValueRep.h; sourceTree = "<group>"; }; 3486 0FEC85481BDACDC70080FF74 /* AirAllocateStack .cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AirAllocateStack.cpp; path = b3/air/AirAllocateStack.cpp; sourceTree = "<group>"; };3487 0FEC85491BDACDC70080FF74 /* AirAllocateStack .h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AirAllocateStack.h; path = b3/air/AirAllocateStack.h; sourceTree = "<group>"; };3486 0FEC85481BDACDC70080FF74 /* AirAllocateStackByGraphColoring.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AirAllocateStackByGraphColoring.cpp; path = b3/air/AirAllocateStackByGraphColoring.cpp; sourceTree = "<group>"; }; 3487 0FEC85491BDACDC70080FF74 /* AirAllocateStackByGraphColoring.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AirAllocateStackByGraphColoring.h; path = b3/air/AirAllocateStackByGraphColoring.h; sourceTree = "<group>"; }; 3488 3488 0FEC854A1BDACDC70080FF74 /* AirArg.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; name = AirArg.cpp; path = b3/air/AirArg.cpp; sourceTree = "<group>"; }; 3489 3489 0FEC854B1BDACDC70080FF74 /* AirArg.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AirArg.h; path = b3/air/AirArg.h; sourceTree = "<group>"; }; … … 5574 5574 0F2AC5681E8A0BD10001EE3F /* AirAllocateRegistersByLinearScan.cpp */, 5575 5575 0F2AC5691E8A0BD10001EE3F /* AirAllocateRegistersByLinearScan.h */, 5576 0FEC85481BDACDC70080FF74 /* AirAllocateStack .cpp */,5577 0FEC85491BDACDC70080FF74 /* AirAllocateStack .h */,5576 0FEC85481BDACDC70080FF74 /* AirAllocateStackByGraphColoring.cpp */, 5577 0FEC85491BDACDC70080FF74 /* AirAllocateStackByGraphColoring.h */, 5578 5578 0FEC854A1BDACDC70080FF74 /* AirArg.cpp */, 5579 5579 0FEC854B1BDACDC70080FF74 /* AirArg.h */, … … 8090 8090 0F55F0F514D1063C00AC7649 /* AbstractPC.h in Headers */, 8091 8091 5370B4F61BF26205005C40FC /* AdaptiveInferredPropertyValueWatchpointBase.h in Headers */, 8092 0FEC856E1BDACDC70080FF74 /* AirAllocateStack .h in Headers */,8092 0FEC856E1BDACDC70080FF74 /* AirAllocateStackByGraphColoring.h in Headers */, 8093 8093 0FEC85701BDACDC70080FF74 /* AirArg.h in Headers */, 8094 8094 0F64EAF31C4ECD0600621E9B /* AirArgInlines.h in Headers */, … … 9983 9983 0F55F0F414D1063900AC7649 /* AbstractPC.cpp in Sources */, 9984 9984 5370B4F51BF26202005C40FC /* AdaptiveInferredPropertyValueWatchpointBase.cpp in Sources */, 9985 0FEC856D1BDACDC70080FF74 /* AirAllocateStack .cpp in Sources */,9985 0FEC856D1BDACDC70080FF74 /* AirAllocateStackByGraphColoring.cpp in Sources */, 9986 9986 0FEC856F1BDACDC70080FF74 /* AirArg.cpp in Sources */, 9987 9987 0FEC85711BDACDC70080FF74 /* AirBasicBlock.cpp in Sources */, -
trunk/Source/JavaScriptCore/b3/air/AirAllocateStackByGraphColoring.cpp
r215072 r215073 25 25 26 26 #include "config.h" 27 #include "AirAllocateStack .h"27 #include "AirAllocateStackByGraphColoring.h" 28 28 29 29 #if ENABLE(B3_JIT) … … 132 132 } // anonymous namespace 133 133 134 void allocateStack (Code& code)134 void allocateStackByGraphColoring(Code& code) 135 135 { 136 PhaseScope phaseScope(code, "allocateStack ");136 PhaseScope phaseScope(code, "allocateStackByGraphColoring"); 137 137 138 138 // Allocate all of the escaped slots in order. This is kind of a crazy algorithm to allow for -
trunk/Source/JavaScriptCore/b3/air/AirAllocateStackByGraphColoring.h
r215072 r215073 1 1 /* 2 * Copyright (C) 2015-201 6Apple Inc. All rights reserved.2 * Copyright (C) 2015-2017 Apple Inc. All rights reserved. 3 3 * 4 4 * Redistribution and use in source and binary forms, with or without … … 35 35 // order and then it allocates the rest using first fit. Takes the opportunity to kill dead 36 36 // assignments to stack slots, since it knows which ones are live. Also fixes ZDefs to anonymous 37 // stack slots. 37 // stack slots. Also coalesces spill slots whenever possible. 38 // 39 // This is meant to be an optimal stack allocator, focused on generating great code. It's not 40 // particularly fast, though. 38 41 39 void allocateStack (Code&);42 void allocateStackByGraphColoring(Code&); 40 43 41 44 } } } // namespace JSC::B3::Air -
trunk/Source/JavaScriptCore/b3/air/AirGenerate.cpp
r214901 r215073 31 31 #include "AirAllocateRegistersByGraphColoring.h" 32 32 #include "AirAllocateRegistersByLinearScan.h" 33 #include "AirAllocateStack .h"33 #include "AirAllocateStackByGraphColoring.h" 34 34 #include "AirCode.h" 35 35 #include "AirEliminateDeadCode.h" … … 117 117 // this by first-fit allocating stack slots. It should be pretty darn close to optimal, so we 118 118 // shouldn't have to worry about this very much. 119 allocateStack (code);119 allocateStackByGraphColoring(code); 120 120 121 121 // If we coalesced moves then we can unbreak critical edges. This is the main reason for this
Note:
See TracChangeset
for help on using the changeset viewer.