Index: src/x64/lithium-codegen-x64.cc |
diff --git a/src/x64/lithium-codegen-x64.cc b/src/x64/lithium-codegen-x64.cc |
index d4875da4a15e0379abb1d3eca48f5d10c5e6d41f..3b712345233c5f22d6f20537a03ac3eb8fba4806 100644 |
--- a/src/x64/lithium-codegen-x64.cc |
+++ b/src/x64/lithium-codegen-x64.cc |
@@ -3380,6 +3380,9 @@ void LCodeGen::DoStringCharCodeAt(LStringCharCodeAt* instr) { |
// Check whether the string is sequential. The only non-sequential |
// shapes we support have just been unwrapped above. |
+ // Note that if the original string is a cons or slice with an external |
+ // string as underlying string, we pass that unpacked underlying string with |
+ // the updated index to the runtime function. |
__ bind(&check_sequential); |
STATIC_ASSERT(kSeqStringTag == 0); |
__ testb(result, Immediate(kStringRepresentationMask)); |