void TypeFeedbackOracle::PropertyReceiverTypes(TypeFeedbackId id,
- Handle<String> name,
+ Handle<Name> name,
SmallMapList* receiver_types) {
receiver_types->Clear();
Code::Flags flags = Code::ComputeHandlerFlags(Code::LOAD_IC);
void TypeFeedbackOracle::PropertyReceiverTypes(FeedbackVectorICSlot slot,
- Handle<String> name,
+ Handle<Name> name,
SmallMapList* receiver_types) {
receiver_types->Clear();
LoadICNexus nexus(feedback_vector_, slot);
}
-void TypeFeedbackOracle::AssignmentReceiverTypes(
- TypeFeedbackId id, Handle<String> name, SmallMapList* receiver_types) {
+void TypeFeedbackOracle::AssignmentReceiverTypes(TypeFeedbackId id,
+ Handle<Name> name,
+ SmallMapList* receiver_types) {
receiver_types->Clear();
Code::Flags flags = Code::ComputeHandlerFlags(Code::STORE_IC);
CollectReceiverTypes(id, name, flags, receiver_types);
void TypeFeedbackOracle::CollectReceiverTypes(TypeFeedbackId ast_id,
- Handle<String> name,
+ Handle<Name> name,
Code::Flags flags,
SmallMapList* types) {
Handle<Object> object = GetInfo(ast_id);
template <class T>
-void TypeFeedbackOracle::CollectReceiverTypes(T* obj, Handle<String> name,
+void TypeFeedbackOracle::CollectReceiverTypes(T* obj, Handle<Name> name,
Code::Flags flags,
SmallMapList* types) {
if (FLAG_collect_megamorphic_maps_from_stub_cache &&
IcCheckType* key_type);
void GetLoadKeyType(TypeFeedbackId id, IcCheckType* key_type);
- void PropertyReceiverTypes(TypeFeedbackId id, Handle<String> name,
+ void PropertyReceiverTypes(TypeFeedbackId id, Handle<Name> name,
SmallMapList* receiver_types);
- void PropertyReceiverTypes(FeedbackVectorICSlot slot, Handle<String> name,
+ void PropertyReceiverTypes(FeedbackVectorICSlot slot, Handle<Name> name,
SmallMapList* receiver_types);
void KeyedPropertyReceiverTypes(TypeFeedbackId id,
SmallMapList* receiver_types,
void KeyedPropertyReceiverTypes(FeedbackVectorICSlot slot,
SmallMapList* receiver_types, bool* is_string,
IcCheckType* key_type);
- void AssignmentReceiverTypes(TypeFeedbackId id,
- Handle<String> name,
+ void AssignmentReceiverTypes(TypeFeedbackId id, Handle<Name> name,
SmallMapList* receiver_types);
void KeyedAssignmentReceiverTypes(TypeFeedbackId id,
SmallMapList* receiver_types,
Isolate* isolate() const { return isolate_; }
private:
- void CollectReceiverTypes(TypeFeedbackId id,
- Handle<String> name,
- Code::Flags flags,
- SmallMapList* types);
+ void CollectReceiverTypes(TypeFeedbackId id, Handle<Name> name,
+ Code::Flags flags, SmallMapList* types);
template <class T>
- void CollectReceiverTypes(T* obj, Handle<String> name, Code::Flags flags,
+ void CollectReceiverTypes(T* obj, Handle<Name> name, Code::Flags flags,
SmallMapList* types);
// Returns true if there is at least one string map and if