Commit 8090e78e authored by Santiago Aboy Solanes's avatar Santiago Aboy Solanes Committed by Commit Bot

[ptr-compr][CSA] Adding a Change node in OptimizedStoreMap

Since we updated the access builders, in particular AccessBuilder::ForMap(),
the StoreField from CSA's OptimizedStoreMap was missing the corresponding
ChangeTaggedPointerToCompressedPointer node.

Tests were passing, but it was failing to compile with verify CSA enabled.

Cq-Include-Trybots: luci.v8.try:v8_linux64_pointer_compression_rel_ng
Cq-Include-Trybots: luci.v8.try:v8_linux64_arm64_pointer_compression_rel_ng
Bug: v8:8977, v8:7703
Change-Id: I0ddb03eb2ba19b55f9b9cef4eef94e32bc84ef18
Reviewed-on: https://chromium-review.googlesource.com/c/v8/v8/+/1601506
Commit-Queue: Santiago Aboy Solanes <solanes@chromium.org>
Reviewed-by: 's avatarRoss McIlroy <rmcilroy@chromium.org>
Reviewed-by: 's avatarJaroslav Sevcik <jarin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#61377}
parent 4c7cffc9
......@@ -210,6 +210,11 @@ class V8_EXPORT_PRIVATE RawMachineAssembler {
object, value);
}
void OptimizedStoreMap(Node* object, Node* value) {
if (COMPRESS_POINTERS_BOOL) {
DCHECK(AccessBuilder::ForMap().machine_type.IsCompressedPointer());
value =
AddNode(machine()->ChangeTaggedPointerToCompressedPointer(), value);
}
AddNode(simplified()->StoreField(AccessBuilder::ForMap()), object, value);
}
Node* Retain(Node* value) { return AddNode(common()->Retain(), value); }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment