OLD | NEW |
1 // Copyright 2011 the V8 project authors. All rights reserved. | 1 // Copyright 2011 the V8 project authors. All rights reserved. |
2 // Redistribution and use in source and binary forms, with or without | 2 // Redistribution and use in source and binary forms, with or without |
3 // modification, are permitted provided that the following conditions are | 3 // modification, are permitted provided that the following conditions are |
4 // met: | 4 // met: |
5 // | 5 // |
6 // * Redistributions of source code must retain the above copyright | 6 // * Redistributions of source code must retain the above copyright |
7 // notice, this list of conditions and the following disclaimer. | 7 // notice, this list of conditions and the following disclaimer. |
8 // * Redistributions in binary form must reproduce the above | 8 // * Redistributions in binary form must reproduce the above |
9 // copyright notice, this list of conditions and the following | 9 // copyright notice, this list of conditions and the following |
10 // disclaimer in the documentation and/or other materials provided | 10 // disclaimer in the documentation and/or other materials provided |
(...skipping 2601 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2612 | 2612 |
2613 | 2613 |
2614 int Code::arguments_count() { | 2614 int Code::arguments_count() { |
2615 ASSERT(is_call_stub() || is_keyed_call_stub() || kind() == STUB); | 2615 ASSERT(is_call_stub() || is_keyed_call_stub() || kind() == STUB); |
2616 return ExtractArgumentsCountFromFlags(flags()); | 2616 return ExtractArgumentsCountFromFlags(flags()); |
2617 } | 2617 } |
2618 | 2618 |
2619 | 2619 |
2620 int Code::major_key() { | 2620 int Code::major_key() { |
2621 ASSERT(kind() == STUB || | 2621 ASSERT(kind() == STUB || |
2622 kind() == TYPE_RECORDING_BINARY_OP_IC || | 2622 kind() == UNARY_OP_IC || |
| 2623 kind() == BINARY_OP_IC || |
2623 kind() == COMPARE_IC); | 2624 kind() == COMPARE_IC); |
2624 return READ_BYTE_FIELD(this, kStubMajorKeyOffset); | 2625 return READ_BYTE_FIELD(this, kStubMajorKeyOffset); |
2625 } | 2626 } |
2626 | 2627 |
2627 | 2628 |
2628 void Code::set_major_key(int major) { | 2629 void Code::set_major_key(int major) { |
2629 ASSERT(kind() == STUB || | 2630 ASSERT(kind() == STUB || |
2630 kind() == TYPE_RECORDING_UNARY_OP_IC || | 2631 kind() == UNARY_OP_IC || |
2631 kind() == TYPE_RECORDING_BINARY_OP_IC || | 2632 kind() == BINARY_OP_IC || |
2632 kind() == COMPARE_IC); | 2633 kind() == COMPARE_IC); |
2633 ASSERT(0 <= major && major < 256); | 2634 ASSERT(0 <= major && major < 256); |
2634 WRITE_BYTE_FIELD(this, kStubMajorKeyOffset, major); | 2635 WRITE_BYTE_FIELD(this, kStubMajorKeyOffset, major); |
2635 } | 2636 } |
2636 | 2637 |
2637 | 2638 |
2638 bool Code::optimizable() { | 2639 bool Code::optimizable() { |
2639 ASSERT(kind() == FUNCTION); | 2640 ASSERT(kind() == FUNCTION); |
2640 return READ_BYTE_FIELD(this, kOptimizableOffset) == 1; | 2641 return READ_BYTE_FIELD(this, kOptimizableOffset) == 1; |
2641 } | 2642 } |
(...skipping 87 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2729 return static_cast<ExternalArrayType>(type); | 2730 return static_cast<ExternalArrayType>(type); |
2730 } | 2731 } |
2731 | 2732 |
2732 | 2733 |
2733 void Code::set_external_array_type(ExternalArrayType value) { | 2734 void Code::set_external_array_type(ExternalArrayType value) { |
2734 ASSERT(is_keyed_load_stub() || is_keyed_store_stub()); | 2735 ASSERT(is_keyed_load_stub() || is_keyed_store_stub()); |
2735 WRITE_BYTE_FIELD(this, kExternalArrayTypeOffset, value); | 2736 WRITE_BYTE_FIELD(this, kExternalArrayTypeOffset, value); |
2736 } | 2737 } |
2737 | 2738 |
2738 | 2739 |
2739 byte Code::type_recording_unary_op_type() { | 2740 byte Code::unary_op_type() { |
2740 ASSERT(is_type_recording_unary_op_stub()); | 2741 ASSERT(is_unary_op_stub()); |
2741 return READ_BYTE_FIELD(this, kUnaryOpTypeOffset); | 2742 return READ_BYTE_FIELD(this, kUnaryOpTypeOffset); |
2742 } | 2743 } |
2743 | 2744 |
2744 | 2745 |
2745 void Code::set_type_recording_unary_op_type(byte value) { | 2746 void Code::set_unary_op_type(byte value) { |
2746 ASSERT(is_type_recording_unary_op_stub()); | 2747 ASSERT(is_unary_op_stub()); |
2747 WRITE_BYTE_FIELD(this, kUnaryOpTypeOffset, value); | 2748 WRITE_BYTE_FIELD(this, kUnaryOpTypeOffset, value); |
2748 } | 2749 } |
2749 | 2750 |
2750 | 2751 |
2751 byte Code::type_recording_binary_op_type() { | 2752 byte Code::binary_op_type() { |
2752 ASSERT(is_type_recording_binary_op_stub()); | 2753 ASSERT(is_binary_op_stub()); |
2753 return READ_BYTE_FIELD(this, kBinaryOpTypeOffset); | 2754 return READ_BYTE_FIELD(this, kBinaryOpTypeOffset); |
2754 } | 2755 } |
2755 | 2756 |
2756 | 2757 |
2757 void Code::set_type_recording_binary_op_type(byte value) { | 2758 void Code::set_binary_op_type(byte value) { |
2758 ASSERT(is_type_recording_binary_op_stub()); | 2759 ASSERT(is_binary_op_stub()); |
2759 WRITE_BYTE_FIELD(this, kBinaryOpTypeOffset, value); | 2760 WRITE_BYTE_FIELD(this, kBinaryOpTypeOffset, value); |
2760 } | 2761 } |
2761 | 2762 |
2762 | 2763 |
2763 byte Code::type_recording_binary_op_result_type() { | 2764 byte Code::binary_op_result_type() { |
2764 ASSERT(is_type_recording_binary_op_stub()); | 2765 ASSERT(is_binary_op_stub()); |
2765 return READ_BYTE_FIELD(this, kBinaryOpReturnTypeOffset); | 2766 return READ_BYTE_FIELD(this, kBinaryOpReturnTypeOffset); |
2766 } | 2767 } |
2767 | 2768 |
2768 | 2769 |
2769 void Code::set_type_recording_binary_op_result_type(byte value) { | 2770 void Code::set_binary_op_result_type(byte value) { |
2770 ASSERT(is_type_recording_binary_op_stub()); | 2771 ASSERT(is_binary_op_stub()); |
2771 WRITE_BYTE_FIELD(this, kBinaryOpReturnTypeOffset, value); | 2772 WRITE_BYTE_FIELD(this, kBinaryOpReturnTypeOffset, value); |
2772 } | 2773 } |
2773 | 2774 |
2774 | 2775 |
2775 byte Code::compare_state() { | 2776 byte Code::compare_state() { |
2776 ASSERT(is_compare_ic_stub()); | 2777 ASSERT(is_compare_ic_stub()); |
2777 return READ_BYTE_FIELD(this, kCompareStateOffset); | 2778 return READ_BYTE_FIELD(this, kCompareStateOffset); |
2778 } | 2779 } |
2779 | 2780 |
2780 | 2781 |
(...skipping 1533 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4314 #undef WRITE_INT_FIELD | 4315 #undef WRITE_INT_FIELD |
4315 #undef READ_SHORT_FIELD | 4316 #undef READ_SHORT_FIELD |
4316 #undef WRITE_SHORT_FIELD | 4317 #undef WRITE_SHORT_FIELD |
4317 #undef READ_BYTE_FIELD | 4318 #undef READ_BYTE_FIELD |
4318 #undef WRITE_BYTE_FIELD | 4319 #undef WRITE_BYTE_FIELD |
4319 | 4320 |
4320 | 4321 |
4321 } } // namespace v8::internal | 4322 } } // namespace v8::internal |
4322 | 4323 |
4323 #endif // V8_OBJECTS_INL_H_ | 4324 #endif // V8_OBJECTS_INL_H_ |
OLD | NEW |