Home | History | Annotate | Download | only in interpreter

Lines Matching defs:property

768   Property* property = expr->AsProperty();
769 LhsKind assign_type = Property::GetAssignType(property);
780 Register object = VisitForRegisterValue(property->obj());
781 Handle<String> name = property->key()->AsLiteral()->AsPropertyName();
791 Register object = VisitForRegisterValue(property->obj());
792 Register key = VisitForRegisterValue(property->key());
974 ObjectLiteral::Property* property = expr->properties()->at(property_index);
975 if (property->is_computed_name()) break;
976 if (property->IsCompileTimeValue()) continue;
985 Literal* literal_key = property->key()->AsLiteral();
986 switch (property->kind()) {
987 case ObjectLiteral::Property::CONSTANT:
989 case ObjectLiteral::Property::MATERIALIZED_LITERAL:
990 DCHECK(!CompileTimeValue::IsCompileTimeValue(property->value()));
992 case ObjectLiteral::Property::COMPUTED: {
996 if (property->emit_store()) {
997 VisitForAccumulatorValue(property->value());
1000 feedback_index(property->GetSlot(0)), language_mode());
1002 VisitForEffect(property->value());
1013 VisitForAccumulatorValue(property->key());
1015 property->value());
1017 if (property->emit_store()) {
1022 VisitSetHomeObject(value, literal, property);
1027 case ObjectLiteral::Property::PROTOTYPE: {
1029 DCHECK(property->emit_store());
1032 VisitForAccumulatorValue(property->value());
1037 case ObjectLiteral::Property::GETTER:
1038 if (property->emit_store()) {
1039 accessor_table.lookup(literal_key)->second->getter = property;
1042 case ObjectLiteral::Property::SETTER:
1043 if (property->emit_store()) {
1044 accessor_table.lookup(literal_key)->second->setter = property;
1072 // computed property names, and so we can compute its map ahead of time; see
1074 // with the first computed property name and continues with all properties to
1087 ObjectLiteral::Property* property = expr->properties()->at(property_index);
1089 if (property->kind() == ObjectLiteral::Property::PROTOTYPE) {
1090 DCHECK(property->emit_store());
1093 VisitForAccumulatorValue(property->value());
1105 VisitForAccumulatorValue(property->key());
1107 VisitForAccumulatorValue(property->value());
1109 VisitSetHomeObject(value, literal, property);
1112 switch (property->kind()) {
1113 case ObjectLiteral::Property::CONSTANT:
1114 case ObjectLiteral::Property::COMPUTED:
1115 case ObjectLiteral::Property::MATERIALIZED_LITERAL:
1118 case ObjectLiteral::Property::PROTOTYPE:
1121 case ObjectLiteral::Property::GETTER:
1124 case ObjectLiteral::Property::SETTER:
1334 // Left-hand side can only be a property, a global or a variable slot.
1335 Property* property = expr->target()->AsProperty();
1336 LhsKind assign_type = Property::GetAssignType(property);
1344 object = VisitForRegisterValue(property->obj());
1345 name = property->key()->AsLiteral()->AsPropertyName();
1349 object = VisitForRegisterValue(property->obj());
1354 VisitForAccumulatorValue(property->key());
1357 key = VisitForRegisterValue(property->key());
1378 FeedbackVectorSlot slot = property->PropertyFeedbackSlot();
1389 FeedbackVectorSlot slot = property->PropertyFeedbackSlot();
1443 void BytecodeGenerator::VisitPropertyLoad(Register obj, Property* expr) {
1444 LhsKind property_kind = Property::GetAssignType(expr);
1469 Property* expr) {
1475 void BytecodeGenerator::VisitProperty(Property* expr) {
1533 Property* property = callee_expr->AsProperty();
1534 VisitForAccumulatorValue(property->obj());
1536 VisitPropertyLoadForAccumulator(receiver, property);
1717 // Delete of an object property is allowed both in sloppy
1719 Property* property = expr->expression()->AsProperty();
1720 Register object = VisitForRegisterValue(property->obj());
1721 VisitForAccumulatorValue(property->key());
1776 // Left-hand side can only be a property, a global or a variable slot.
1777 Property* property = expr->expression()->AsProperty();
1778 LhsKind assign_type = Property::GetAssignType(property);
1794 FeedbackVectorSlot slot = property->PropertyFeedbackSlot();
1795 obj = VisitForRegisterValue(property->obj());
1796 name = property->key()->AsLiteral()->AsPropertyName();
1802 FeedbackVectorSlot slot = property->PropertyFeedbackSlot();
1803 obj = VisitForRegisterValue(property->obj());
1807 VisitForAccumulatorValue(property->key());
2045 Register home_object, ObjectLiteralProperty* property, Register value_out) {
2047 if (property == nullptr) {
2050 VisitForAccumulatorValue(property->value());
2052 VisitSetHomeObject(value_out, home_object, property);
2058 ObjectLiteralProperty* property,
2060 Expression* expr = property->value();