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

Unified Diff: runtime/vm/intrinsifier_ia32.cc

Issue 2893553002: More compact string representation on 64 bit. (Closed)
Patch Set: Slava feedback Created 3 years, 7 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 | « runtime/vm/intrinsifier_arm64.cc ('k') | runtime/vm/intrinsifier_mips.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: runtime/vm/intrinsifier_ia32.cc
diff --git a/runtime/vm/intrinsifier_ia32.cc b/runtime/vm/intrinsifier_ia32.cc
index 13e47bdd0c2d142aa4b15efadf197c4f961ea8c7..16d5209cef3d0d6a3396ef7951b617c9cd65c62f 100644
--- a/runtime/vm/intrinsifier_ia32.cc
+++ b/runtime/vm/intrinsifier_ia32.cc
@@ -212,8 +212,9 @@ void Intrinsifier::GrowableArray_add(Assembler* assembler) {
/* only scale by 8. */ \
scale_factor = TIMES_8; \
} \
- const intptr_t fixed_size = sizeof(Raw##type_name) + kObjectAlignment - 1; \
- __ leal(EDI, Address(EDI, scale_factor, fixed_size)); \
+ const intptr_t fixed_size_plus_alignment_padding = \
+ sizeof(Raw##type_name) + kObjectAlignment - 1; \
+ __ leal(EDI, Address(EDI, scale_factor, fixed_size_plus_alignment_padding)); \
__ andl(EDI, Immediate(-kObjectAlignment)); \
Heap::Space space = Heap::kNew; \
__ movl(ECX, Address(THR, Thread::heap_offset())); \
@@ -2027,8 +2028,10 @@ static void TryAllocateOnebyteString(Assembler* assembler,
Label pop_and_fail;
__ pushl(EDI); // Preserve length.
__ SmiUntag(EDI);
- const intptr_t fixed_size = sizeof(RawString) + kObjectAlignment - 1;
- __ leal(EDI, Address(EDI, TIMES_1, fixed_size)); // EDI is untagged.
+ const intptr_t fixed_size_plus_alignment_padding =
+ sizeof(RawString) + kObjectAlignment - 1;
+ __ leal(EDI, Address(EDI, TIMES_1,
+ fixed_size_plus_alignment_padding)); // EDI is untagged.
__ andl(EDI, Immediate(-kObjectAlignment));
const intptr_t cid = kOneByteStringCid;
« no previous file with comments | « runtime/vm/intrinsifier_arm64.cc ('k') | runtime/vm/intrinsifier_mips.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698