Reviewers: danno, titzer, Benedikt Meurer, mcilroy,
Description:
[turbofan] Fix unified stack slots for embedded constant pools.
Account for the constant pool pointer slot during register allocation
data initialization.
[email protected], [email protected], [email protected],
[email protected],
TEST=cctest/test-run-machops/RunSpillConstantsAndParameters
BUG=
Please review this at https://codereview.chromium.org/1317123003/
Base URL: https://chromium.googlesource.com/v8/v8.git@master
Affected files (+3, -1 lines):
M src/compiler/pipeline.cc
M src/frames.h
Index: src/compiler/pipeline.cc
diff --git a/src/compiler/pipeline.cc b/src/compiler/pipeline.cc
index
978aeee94a8c3ba922a619b697c00477887b4d11..50d14959213381bdd4da5514cac40f75d635a45d
100644
--- a/src/compiler/pipeline.cc
+++ b/src/compiler/pipeline.cc
@@ -266,7 +266,8 @@ class PipelineData {
int fixed_frame_size = 0;
if (descriptor != nullptr) {
fixed_frame_size = (descriptor->kind() ==
CallDescriptor::kCallAddress)
- ?
StandardFrameConstants::kFixedSlotCountAboveFp
+ ?
StandardFrameConstants::kFixedSlotCountAboveFp +
+ StandardFrameConstants::kCPSlotCount
: StandardFrameConstants::kFixedSlotCount;
}
frame_ = new (instruction_zone()) Frame(fixed_frame_size);
Index: src/frames.h
diff --git a/src/frames.h b/src/frames.h
index
05c0a3548918036457e46b0d16de4cd9403a57b7..fdf91246c38982a596dc86564631f142678cb918
100644
--- a/src/frames.h
+++ b/src/frames.h
@@ -126,6 +126,7 @@ class StandardFrameConstants : public AllStatic {
static const int kFixedSlotCountAboveFp =
kFixedFrameSizeAboveFp / kPointerSize;
static const int kFixedSlotCount = kFixedFrameSize / kPointerSize;
+ static const int kCPSlotCount = kCPSlotSize / kPointerSize;
static const int kExpressionsOffset = -3 * kPointerSize - kCPSlotSize;
static const int kMarkerOffset = -2 * kPointerSize - kCPSlotSize;
static const int kContextOffset = -1 * kPointerSize - kCPSlotSize;
--
--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
---
You received this message because you are subscribed to the Google Groups "v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.