| Index: src/type-info.cc
|
| ===================================================================
|
| --- src/type-info.cc (revision 8025)
|
| +++ src/type-info.cc (working copy)
|
| @@ -258,13 +258,13 @@
|
| TypeInfo unknown = TypeInfo::Unknown();
|
| if (!object->IsCode()) return unknown;
|
| Handle<Code> code = Handle<Code>::cast(object);
|
| - ASSERT(code->is_type_recording_unary_op_stub());
|
| - TRUnaryOpIC::TypeInfo type = static_cast<TRUnaryOpIC::TypeInfo>(
|
| - code->type_recording_unary_op_type());
|
| + ASSERT(code->is_unary_op_stub());
|
| + UnaryOpIC::TypeInfo type = static_cast<UnaryOpIC::TypeInfo>(
|
| + code->unary_op_type());
|
| switch (type) {
|
| - case TRUnaryOpIC::SMI:
|
| + case UnaryOpIC::SMI:
|
| return TypeInfo::Smi();
|
| - case TRUnaryOpIC::HEAP_NUMBER:
|
| + case UnaryOpIC::HEAP_NUMBER:
|
| return TypeInfo::Double();
|
| default:
|
| return unknown;
|
| @@ -277,41 +277,41 @@
|
| TypeInfo unknown = TypeInfo::Unknown();
|
| if (!object->IsCode()) return unknown;
|
| Handle<Code> code = Handle<Code>::cast(object);
|
| - if (code->is_type_recording_binary_op_stub()) {
|
| - TRBinaryOpIC::TypeInfo type = static_cast<TRBinaryOpIC::TypeInfo>(
|
| - code->type_recording_binary_op_type());
|
| - TRBinaryOpIC::TypeInfo result_type = static_cast<TRBinaryOpIC::TypeInfo>(
|
| - code->type_recording_binary_op_result_type());
|
| + if (code->is_binary_op_stub()) {
|
| + BinaryOpIC::TypeInfo type = static_cast<BinaryOpIC::TypeInfo>(
|
| + code->binary_op_type());
|
| + BinaryOpIC::TypeInfo result_type = static_cast<BinaryOpIC::TypeInfo>(
|
| + code->binary_op_result_type());
|
|
|
| switch (type) {
|
| - case TRBinaryOpIC::UNINITIALIZED:
|
| + case BinaryOpIC::UNINITIALIZED:
|
| // Uninitialized means never executed.
|
| // TODO(fschneider): Introduce a separate value for never-executed ICs
|
| return unknown;
|
| - case TRBinaryOpIC::SMI:
|
| + case BinaryOpIC::SMI:
|
| switch (result_type) {
|
| - case TRBinaryOpIC::UNINITIALIZED:
|
| - case TRBinaryOpIC::SMI:
|
| + case BinaryOpIC::UNINITIALIZED:
|
| + case BinaryOpIC::SMI:
|
| return TypeInfo::Smi();
|
| - case TRBinaryOpIC::INT32:
|
| + case BinaryOpIC::INT32:
|
| return TypeInfo::Integer32();
|
| - case TRBinaryOpIC::HEAP_NUMBER:
|
| + case BinaryOpIC::HEAP_NUMBER:
|
| return TypeInfo::Double();
|
| default:
|
| return unknown;
|
| }
|
| - case TRBinaryOpIC::INT32:
|
| + case BinaryOpIC::INT32:
|
| if (expr->op() == Token::DIV ||
|
| - result_type == TRBinaryOpIC::HEAP_NUMBER) {
|
| + result_type == BinaryOpIC::HEAP_NUMBER) {
|
| return TypeInfo::Double();
|
| }
|
| return TypeInfo::Integer32();
|
| - case TRBinaryOpIC::HEAP_NUMBER:
|
| + case BinaryOpIC::HEAP_NUMBER:
|
| return TypeInfo::Double();
|
| - case TRBinaryOpIC::BOTH_STRING:
|
| + case BinaryOpIC::BOTH_STRING:
|
| return TypeInfo::String();
|
| - case TRBinaryOpIC::STRING:
|
| - case TRBinaryOpIC::GENERIC:
|
| + case BinaryOpIC::STRING:
|
| + case BinaryOpIC::GENERIC:
|
| return unknown;
|
| default:
|
| return unknown;
|
| @@ -353,21 +353,21 @@
|
| TypeInfo unknown = TypeInfo::Unknown();
|
| if (!object->IsCode()) return unknown;
|
| Handle<Code> code = Handle<Code>::cast(object);
|
| - if (!code->is_type_recording_binary_op_stub()) return unknown;
|
| + if (!code->is_binary_op_stub()) return unknown;
|
|
|
| - TRBinaryOpIC::TypeInfo type = static_cast<TRBinaryOpIC::TypeInfo>(
|
| - code->type_recording_binary_op_type());
|
| + BinaryOpIC::TypeInfo type = static_cast<BinaryOpIC::TypeInfo>(
|
| + code->binary_op_type());
|
| switch (type) {
|
| - case TRBinaryOpIC::UNINITIALIZED:
|
| - case TRBinaryOpIC::SMI:
|
| + case BinaryOpIC::UNINITIALIZED:
|
| + case BinaryOpIC::SMI:
|
| return TypeInfo::Smi();
|
| - case TRBinaryOpIC::INT32:
|
| + case BinaryOpIC::INT32:
|
| return TypeInfo::Integer32();
|
| - case TRBinaryOpIC::HEAP_NUMBER:
|
| + case BinaryOpIC::HEAP_NUMBER:
|
| return TypeInfo::Double();
|
| - case TRBinaryOpIC::BOTH_STRING:
|
| - case TRBinaryOpIC::STRING:
|
| - case TRBinaryOpIC::GENERIC:
|
| + case BinaryOpIC::BOTH_STRING:
|
| + case BinaryOpIC::STRING:
|
| + case BinaryOpIC::GENERIC:
|
| return unknown;
|
| default:
|
| return unknown;
|
| @@ -441,8 +441,8 @@
|
| InlineCacheState state = target->ic_state();
|
| Code::Kind kind = target->kind();
|
|
|
| - if (kind == Code::TYPE_RECORDING_BINARY_OP_IC ||
|
| - kind == Code::TYPE_RECORDING_UNARY_OP_IC ||
|
| + if (kind == Code::BINARY_OP_IC ||
|
| + kind == Code::UNARY_OP_IC ||
|
| kind == Code::COMPARE_IC) {
|
| SetInfo(id, target);
|
| } else if (state == MONOMORPHIC) {
|
| @@ -484,9 +484,9 @@
|
| if (target->is_inline_cache_stub()) {
|
| InlineCacheState state = target->ic_state();
|
| Code::Kind kind = target->kind();
|
| - if (kind == Code::TYPE_RECORDING_BINARY_OP_IC) {
|
| - if (target->type_recording_binary_op_type() ==
|
| - TRBinaryOpIC::GENERIC) {
|
| + if (kind == Code::BINARY_OP_IC) {
|
| + if (target->binary_op_type() ==
|
| + BinaryOpIC::GENERIC) {
|
| continue;
|
| }
|
| } else if (kind == Code::COMPARE_IC) {
|
|
|