Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(94)

Side by Side Diff: src/arm/simulator-arm.cc

Issue 1604653006: Introduce BUILTIN_CALL_PAIR. (Closed) Base URL: https://chromium.googlesource.com/v8/v8.git@master
Patch Set: Changes based on review comments. Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « no previous file | src/arm64/simulator-arm64.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 <stdarg.h> 5 #include <stdarg.h>
6 #include <stdlib.h> 6 #include <stdlib.h>
7 #include <cmath> 7 #include <cmath>
8 8
9 #if V8_TARGET_ARCH_ARM 9 #if V8_TARGET_ARCH_ARM
10 10
(...skipping 1915 matching lines...) Expand 10 before | Expand all | Expand 10 after
1926 ObjectTriple result = target(arg1, arg2, arg3, arg4, arg5); 1926 ObjectTriple result = target(arg1, arg2, arg3, arg4, arg5);
1927 if (::v8::internal::FLAG_trace_sim) { 1927 if (::v8::internal::FLAG_trace_sim) {
1928 PrintF("Returned { %p, %p, %p }\n", result.x, result.y, result.z); 1928 PrintF("Returned { %p, %p, %p }\n", result.x, result.y, result.z);
1929 } 1929 }
1930 // Return is passed back in address pointed to by hidden first argument. 1930 // Return is passed back in address pointed to by hidden first argument.
1931 ObjectTriple* sim_result = reinterpret_cast<ObjectTriple*>(arg0); 1931 ObjectTriple* sim_result = reinterpret_cast<ObjectTriple*>(arg0);
1932 *sim_result = result; 1932 *sim_result = result;
1933 set_register(r0, arg0); 1933 set_register(r0, arg0);
1934 } else { 1934 } else {
1935 // builtin call. 1935 // builtin call.
1936 DCHECK(redirection->type() == ExternalReference::BUILTIN_CALL); 1936 DCHECK(redirection->type() == ExternalReference::BUILTIN_CALL ||
1937 redirection->type() == ExternalReference::BUILTIN_CALL_PAIR);
1937 SimulatorRuntimeCall target = 1938 SimulatorRuntimeCall target =
1938 reinterpret_cast<SimulatorRuntimeCall>(external); 1939 reinterpret_cast<SimulatorRuntimeCall>(external);
1939 if (::v8::internal::FLAG_trace_sim || !stack_aligned) { 1940 if (::v8::internal::FLAG_trace_sim || !stack_aligned) {
1940 PrintF( 1941 PrintF(
1941 "Call to host function at %p " 1942 "Call to host function at %p "
1942 "args %08x, %08x, %08x, %08x, %08x, %08x", 1943 "args %08x, %08x, %08x, %08x, %08x, %08x",
1943 FUNCTION_ADDR(target), 1944 FUNCTION_ADDR(target),
1944 arg0, 1945 arg0,
1945 arg1, 1946 arg1,
1946 arg2, 1947 arg2,
(...skipping 2266 matching lines...) Expand 10 before | Expand all | Expand 10 after
4213 set_register(sp, current_sp + sizeof(uintptr_t)); 4214 set_register(sp, current_sp + sizeof(uintptr_t));
4214 return address; 4215 return address;
4215 } 4216 }
4216 4217
4217 } // namespace internal 4218 } // namespace internal
4218 } // namespace v8 4219 } // namespace v8
4219 4220
4220 #endif // USE_SIMULATOR 4221 #endif // USE_SIMULATOR
4221 4222
4222 #endif // V8_TARGET_ARCH_ARM 4223 #endif // V8_TARGET_ARCH_ARM
OLDNEW
« no previous file with comments | « no previous file | src/arm64/simulator-arm64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698