OLD | NEW |
1 // Copyright 2013 the V8 project authors. All rights reserved. | 1 // Copyright 2013 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/hydrogen.h" | 5 #include "src/hydrogen.h" |
6 | 6 |
7 #include <sstream> | 7 #include <sstream> |
8 | 8 |
9 #include "src/v8.h" | 9 #include "src/v8.h" |
10 | 10 |
(...skipping 2487 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2498 AddIncrementCounter(isolate()->counters()->string_add_native()); | 2498 AddIncrementCounter(isolate()->counters()->string_add_native()); |
2499 | 2499 |
2500 // Return the sequential string. | 2500 // Return the sequential string. |
2501 Push(result); | 2501 Push(result); |
2502 } | 2502 } |
2503 if_sameencodingandsequential.Else(); | 2503 if_sameencodingandsequential.Else(); |
2504 { | 2504 { |
2505 // Fallback to the runtime to add the two strings. | 2505 // Fallback to the runtime to add the two strings. |
2506 Add<HPushArguments>(left, right); | 2506 Add<HPushArguments>(left, right); |
2507 Push(Add<HCallRuntime>(isolate()->factory()->empty_string(), | 2507 Push(Add<HCallRuntime>(isolate()->factory()->empty_string(), |
2508 Runtime::FunctionForId(Runtime::kStringAddRT), 2)); | 2508 Runtime::FunctionForId(Runtime::kStringAdd), 2)); |
2509 } | 2509 } |
2510 if_sameencodingandsequential.End(); | 2510 if_sameencodingandsequential.End(); |
2511 } | 2511 } |
2512 if_createcons.End(); | 2512 if_createcons.End(); |
2513 | 2513 |
2514 return Pop(); | 2514 return Pop(); |
2515 } | 2515 } |
2516 | 2516 |
2517 | 2517 |
2518 HValue* HGraphBuilder::BuildStringAdd( | 2518 HValue* HGraphBuilder::BuildStringAdd( |
(...skipping 10979 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
13498 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); | 13498 isolate()->GetHTracer()->TraceHydrogen(name(), graph_); |
13499 } | 13499 } |
13500 | 13500 |
13501 #ifdef DEBUG | 13501 #ifdef DEBUG |
13502 graph_->Verify(false); // No full verify. | 13502 graph_->Verify(false); // No full verify. |
13503 #endif | 13503 #endif |
13504 } | 13504 } |
13505 | 13505 |
13506 } // namespace internal | 13506 } // namespace internal |
13507 } // namespace v8 | 13507 } // namespace v8 |
OLD | NEW |