OLD | NEW |
1 // Copyright 2012 the V8 project authors. All rights reserved. | 1 // Copyright 2012 the V8 project authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "src/crankshaft/hydrogen-instructions.h" | 5 #include "src/crankshaft/hydrogen-instructions.h" |
6 | 6 |
7 #include "src/base/bits.h" | 7 #include "src/base/bits.h" |
8 #include "src/base/safe_math.h" | 8 #include "src/base/safe_math.h" |
9 #include "src/crankshaft/hydrogen-infer-representation.h" | 9 #include "src/crankshaft/hydrogen-infer-representation.h" |
10 #include "src/double.h" | 10 #include "src/double.h" |
(...skipping 2109 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2120 | 2120 |
2121 | 2121 |
2122 void HEnterInlined::RegisterReturnTarget(HBasicBlock* return_target, | 2122 void HEnterInlined::RegisterReturnTarget(HBasicBlock* return_target, |
2123 Zone* zone) { | 2123 Zone* zone) { |
2124 DCHECK(return_target->IsInlineReturnTarget()); | 2124 DCHECK(return_target->IsInlineReturnTarget()); |
2125 return_targets_.Add(return_target, zone); | 2125 return_targets_.Add(return_target, zone); |
2126 } | 2126 } |
2127 | 2127 |
2128 | 2128 |
2129 std::ostream& HEnterInlined::PrintDataTo(std::ostream& os) const { // NOLINT | 2129 std::ostream& HEnterInlined::PrintDataTo(std::ostream& os) const { // NOLINT |
2130 return os << function()->debug_name()->ToCString().get(); | 2130 os << function()->debug_name()->ToCString().get(); |
| 2131 if (syntactic_tail_call_mode() == TailCallMode::kAllow) { |
| 2132 os << ", JSTailCall"; |
| 2133 } |
| 2134 return os; |
2131 } | 2135 } |
2132 | 2136 |
2133 | 2137 |
2134 static bool IsInteger32(double value) { | 2138 static bool IsInteger32(double value) { |
2135 if (value >= std::numeric_limits<int32_t>::min() && | 2139 if (value >= std::numeric_limits<int32_t>::min() && |
2136 value <= std::numeric_limits<int32_t>::max()) { | 2140 value <= std::numeric_limits<int32_t>::max()) { |
2137 double roundtrip_value = static_cast<double>(static_cast<int32_t>(value)); | 2141 double roundtrip_value = static_cast<double>(static_cast<int32_t>(value)); |
2138 return bit_cast<int64_t>(roundtrip_value) == bit_cast<int64_t>(value); | 2142 return bit_cast<int64_t>(roundtrip_value) == bit_cast<int64_t>(value); |
2139 } | 2143 } |
2140 return false; | 2144 return false; |
(...skipping 1988 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
4129 case HObjectAccess::kExternalMemory: | 4133 case HObjectAccess::kExternalMemory: |
4130 os << "[external-memory]"; | 4134 os << "[external-memory]"; |
4131 break; | 4135 break; |
4132 } | 4136 } |
4133 | 4137 |
4134 return os << "@" << access.offset(); | 4138 return os << "@" << access.offset(); |
4135 } | 4139 } |
4136 | 4140 |
4137 } // namespace internal | 4141 } // namespace internal |
4138 } // namespace v8 | 4142 } // namespace v8 |
OLD | NEW |