Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Unified Diff: src/crankshaft/lithium.cc

Issue 1702593002: More simplification and unification of frame handling (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Fix arm64 Created 4 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « src/crankshaft/lithium.h ('k') | src/crankshaft/mips/lithium-codegen-mips.h » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/crankshaft/lithium.cc
diff --git a/src/crankshaft/lithium.cc b/src/crankshaft/lithium.cc
index 82ad6962be43e121badea6907aa1e62f9b5010f2..677639095a522f64a9729a6100ad5f8472df79d6 100644
--- a/src/crankshaft/lithium.cc
+++ b/src/crankshaft/lithium.cc
@@ -246,22 +246,9 @@ void LPointerMap::PrintTo(StringStream* stream) {
stream->Add("}");
}
-
-int StackSlotOffset(int index) {
- if (index >= 0) {
- // Local or spill slot. Skip the frame pointer, function, and
- // context in the fixed part of the frame.
- return -(index + 1) * kPointerSize -
- StandardFrameConstants::kFixedFrameSizeFromFp;
- } else {
- // Incoming parameter. Skip the return address.
- return -(index + 1) * kPointerSize + kFPOnStackSize + kPCOnStackSize;
- }
-}
-
-
LChunk::LChunk(CompilationInfo* info, HGraph* graph)
- : spill_slot_count_(0),
+ : base_frame_slots_(StandardFrameConstants::kFixedFrameSize / kPointerSize),
+ current_frame_slots_(base_frame_slots_),
info_(info),
graph_(graph),
instructions_(32, info->zone()),
@@ -270,7 +257,6 @@ LChunk::LChunk(CompilationInfo* info, HGraph* graph)
deprecation_dependencies_(32, info->zone()),
stability_dependencies_(8, info->zone()) {}
-
LLabel* LChunk::GetLabel(int block_id) const {
HBasicBlock* block = graph_->blocks()->at(block_id);
int first_instruction = block->first_instruction_index();
@@ -495,9 +481,9 @@ void LChunk::set_allocated_double_registers(BitVector* allocated_registers) {
while (!iterator.Done()) {
if (info()->saves_caller_doubles()) {
if (kDoubleSize == kPointerSize * 2) {
- spill_slot_count_ += 2;
+ current_frame_slots_ += 2;
} else {
- spill_slot_count_++;
+ current_frame_slots_++;
}
}
iterator.Advance();
« no previous file with comments | « src/crankshaft/lithium.h ('k') | src/crankshaft/mips/lithium-codegen-mips.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698