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

Unified Diff: src/compiler/simplified-operator.h

Issue 2373983004: [turbofan] inline %StringIteratorPrototype%.next in JSBuiltinReducer. (Closed)
Patch Set: Created 4 years, 3 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
Index: src/compiler/simplified-operator.h
diff --git a/src/compiler/simplified-operator.h b/src/compiler/simplified-operator.h
index ca2bf6d24ba0aa507e1a41bdf05ba130b7d5f3f3..06ffc0c65831eb301eac3a48aac26dbff3d6cd8f 100644
--- a/src/compiler/simplified-operator.h
+++ b/src/compiler/simplified-operator.h
@@ -185,6 +185,14 @@ NumberOperationHint NumberOperationHintOf(const Operator* op)
PretenureFlag PretenureFlagOf(const Operator* op) WARN_UNUSED_RESULT;
+enum class StringOperationHint : uint8_t {
Benedikt Meurer 2016/09/29 13:04:27 Please remove this optimization from this CL. Let'
+ kAny, // No restrictions on String input type
+ kSeqStringOrExternalString, // SeqString or ExternalString only
+};
+
+StringOperationHint StringOperationHintOf(const Operator*) WARN_UNUSED_RESULT;
+UnicodeEncoding UnicodeEncodingOf(const Operator*) WARN_UNUSED_RESULT;
+
// Interface for building simplified operators, which represent the
// medium-level operations of V8, including adding numbers, allocating objects,
// indexing into objects and arrays, etc.
@@ -287,8 +295,10 @@ class SimplifiedOperatorBuilder final : public ZoneObject {
const Operator* StringEqual();
const Operator* StringLessThan();
const Operator* StringLessThanOrEqual();
- const Operator* StringCharCodeAt();
+ const Operator* StringCharCodeAt(
+ StringOperationHint hint = StringOperationHint::kAny);
const Operator* StringFromCharCode();
+ const Operator* StringFromCodePoint(UnicodeEncoding encoding);
const Operator* PlainPrimitiveToNumber();
const Operator* PlainPrimitiveToWord32();

Powered by Google App Engine
This is Rietveld 408576698