OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 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 2063 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2074 right_kind_ = RightKindField::decode(extra_ic_state); | 2074 right_kind_ = RightKindField::decode(extra_ic_state); |
2075 } | 2075 } |
2076 result_kind_ = ResultKindField::decode(extra_ic_state); | 2076 result_kind_ = ResultKindField::decode(extra_ic_state); |
2077 ASSERT_LE(FIRST_TOKEN, op_); | 2077 ASSERT_LE(FIRST_TOKEN, op_); |
2078 ASSERT_LE(op_, LAST_TOKEN); | 2078 ASSERT_LE(op_, LAST_TOKEN); |
2079 } | 2079 } |
2080 | 2080 |
2081 | 2081 |
2082 ExtraICState BinaryOpIC::State::GetExtraICState() const { | 2082 ExtraICState BinaryOpIC::State::GetExtraICState() const { |
2083 bool sse2 = (Max(result_kind_, Max(left_kind_, right_kind_)) > SMI && | 2083 bool sse2 = (Max(result_kind_, Max(left_kind_, right_kind_)) > SMI && |
2084 CpuFeatures::IsSafeForSnapshot(SSE2)); | 2084 CpuFeatures::IsSafeForSnapshot(isolate(), SSE2)); |
2085 ExtraICState extra_ic_state = | 2085 ExtraICState extra_ic_state = |
2086 SSE2Field::encode(sse2) | | 2086 SSE2Field::encode(sse2) | |
2087 OpField::encode(op_ - FIRST_TOKEN) | | 2087 OpField::encode(op_ - FIRST_TOKEN) | |
2088 OverwriteModeField::encode(mode_) | | 2088 OverwriteModeField::encode(mode_) | |
2089 LeftKindField::encode(left_kind_) | | 2089 LeftKindField::encode(left_kind_) | |
2090 ResultKindField::encode(result_kind_) | | 2090 ResultKindField::encode(result_kind_) | |
2091 HasFixedRightArgField::encode(fixed_right_arg_.has_value); | 2091 HasFixedRightArgField::encode(fixed_right_arg_.has_value); |
2092 if (fixed_right_arg_.has_value) { | 2092 if (fixed_right_arg_.has_value) { |
2093 extra_ic_state = FixedRightArgValueField::update( | 2093 extra_ic_state = FixedRightArgValueField::update( |
2094 extra_ic_state, WhichPowerOf2(fixed_right_arg_.value)); | 2094 extra_ic_state, WhichPowerOf2(fixed_right_arg_.value)); |
(...skipping 852 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2947 #undef ADDR | 2947 #undef ADDR |
2948 }; | 2948 }; |
2949 | 2949 |
2950 | 2950 |
2951 Address IC::AddressFromUtilityId(IC::UtilityId id) { | 2951 Address IC::AddressFromUtilityId(IC::UtilityId id) { |
2952 return IC_utilities[id]; | 2952 return IC_utilities[id]; |
2953 } | 2953 } |
2954 | 2954 |
2955 | 2955 |
2956 } } // namespace v8::internal | 2956 } } // namespace v8::internal |
OLD | NEW |