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

Side by Side Diff: src/a64/macro-assembler-a64.h

Issue 195363003: A64: Tidy up a few TODOs. (Closed) Base URL: https://v8.googlecode.com/svn/branches/bleeding_edge
Patch Set: Created 6 years, 9 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 | Annotate | Revision Log
« no previous file with comments | « src/a64/assembler-a64.h ('k') | src/a64/macro-assembler-a64.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 2013 the V8 project authors. All rights reserved. 1 // Copyright 2013 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 1029 matching lines...) Expand 10 before | Expand all | Expand 10 after
1040 void CallRuntime(const Runtime::Function* f, 1040 void CallRuntime(const Runtime::Function* f,
1041 int num_arguments, 1041 int num_arguments,
1042 SaveFPRegsMode save_doubles = kDontSaveFPRegs); 1042 SaveFPRegsMode save_doubles = kDontSaveFPRegs);
1043 1043
1044 void CallRuntime(Runtime::FunctionId id, 1044 void CallRuntime(Runtime::FunctionId id,
1045 int num_arguments, 1045 int num_arguments,
1046 SaveFPRegsMode save_doubles = kDontSaveFPRegs) { 1046 SaveFPRegsMode save_doubles = kDontSaveFPRegs) {
1047 CallRuntime(Runtime::FunctionForId(id), num_arguments, save_doubles); 1047 CallRuntime(Runtime::FunctionForId(id), num_arguments, save_doubles);
1048 } 1048 }
1049 1049
1050 // TODO(all): Why does this variant save FP regs unconditionally?
1051 void CallRuntimeSaveDoubles(Runtime::FunctionId id) { 1050 void CallRuntimeSaveDoubles(Runtime::FunctionId id) {
1052 const Runtime::Function* function = Runtime::FunctionForId(id); 1051 const Runtime::Function* function = Runtime::FunctionForId(id);
1053 CallRuntime(function, function->nargs, kSaveFPRegs); 1052 CallRuntime(function, function->nargs, kSaveFPRegs);
1054 } 1053 }
1055 1054
1056 void TailCallRuntime(Runtime::FunctionId fid, 1055 void TailCallRuntime(Runtime::FunctionId fid,
1057 int num_arguments, 1056 int num_arguments,
1058 int result_size); 1057 int result_size);
1059 1058
1060 int ActivationFrameAlignment(); 1059 int ActivationFrameAlignment();
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
1103 int num_arguments); 1102 int num_arguments);
1104 1103
1105 1104
1106 // Invoke specified builtin JavaScript function. Adds an entry to 1105 // Invoke specified builtin JavaScript function. Adds an entry to
1107 // the unresolved list if the name does not resolve. 1106 // the unresolved list if the name does not resolve.
1108 void InvokeBuiltin(Builtins::JavaScript id, 1107 void InvokeBuiltin(Builtins::JavaScript id,
1109 InvokeFlag flag, 1108 InvokeFlag flag,
1110 const CallWrapper& call_wrapper = NullCallWrapper()); 1109 const CallWrapper& call_wrapper = NullCallWrapper());
1111 1110
1112 // Store the code object for the given builtin in the target register and 1111 // Store the code object for the given builtin in the target register and
1113 // setup the function in x1. 1112 // setup the function in the function register.
1114 // TODO(all): Can we use another register than x1? 1113 void GetBuiltinEntry(Register target,
1115 void GetBuiltinEntry(Register target, Builtins::JavaScript id); 1114 Register function,
1115 Builtins::JavaScript id);
1116 1116
1117 // Store the function for the given builtin in the target register. 1117 // Store the function for the given builtin in the target register.
1118 void GetBuiltinFunction(Register target, Builtins::JavaScript id); 1118 void GetBuiltinFunction(Register target, Builtins::JavaScript id);
1119 1119
1120 void Jump(Register target); 1120 void Jump(Register target);
1121 void Jump(Address target, RelocInfo::Mode rmode); 1121 void Jump(Address target, RelocInfo::Mode rmode);
1122 void Jump(Handle<Code> code, RelocInfo::Mode rmode); 1122 void Jump(Handle<Code> code, RelocInfo::Mode rmode);
1123 void Jump(intptr_t target, RelocInfo::Mode rmode); 1123 void Jump(intptr_t target, RelocInfo::Mode rmode);
1124 1124
1125 void Call(Register target); 1125 void Call(Register target);
(...skipping 1148 matching lines...) Expand 10 before | Expand all | Expand 10 after
2274 #error "Unsupported option" 2274 #error "Unsupported option"
2275 #define CODE_COVERAGE_STRINGIFY(x) #x 2275 #define CODE_COVERAGE_STRINGIFY(x) #x
2276 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x) 2276 #define CODE_COVERAGE_TOSTRING(x) CODE_COVERAGE_STRINGIFY(x)
2277 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__) 2277 #define __FILE_LINE__ __FILE__ ":" CODE_COVERAGE_TOSTRING(__LINE__)
2278 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm-> 2278 #define ACCESS_MASM(masm) masm->stop(__FILE_LINE__); masm->
2279 #else 2279 #else
2280 #define ACCESS_MASM(masm) masm-> 2280 #define ACCESS_MASM(masm) masm->
2281 #endif 2281 #endif
2282 2282
2283 #endif // V8_A64_MACRO_ASSEMBLER_A64_H_ 2283 #endif // V8_A64_MACRO_ASSEMBLER_A64_H_
OLDNEW
« no previous file with comments | « src/a64/assembler-a64.h ('k') | src/a64/macro-assembler-a64.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698