| OLD | NEW | 
|---|
| 1 // Copyright 2014 the V8 project authors. All rights reserved. | 1 // Copyright 2014 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 #ifndef V8_COMPILER_LINKAGE_H_ | 5 #ifndef V8_COMPILER_LINKAGE_H_ | 
| 6 #define V8_COMPILER_LINKAGE_H_ | 6 #define V8_COMPILER_LINKAGE_H_ | 
| 7 | 7 | 
| 8 #include "src/base/flags.h" | 8 #include "src/base/flags.h" | 
| 9 #include "src/compiler/frame.h" | 9 #include "src/compiler/frame.h" | 
| 10 #include "src/compiler/machine-type.h" | 10 #include "src/compiler/machine-type.h" | 
| (...skipping 55 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 66     kCallJSFunction,  // target is a JSFunction object | 66     kCallJSFunction,  // target is a JSFunction object | 
| 67     kCallAddress      // target is a machine pointer | 67     kCallAddress      // target is a machine pointer | 
| 68   }; | 68   }; | 
| 69 | 69 | 
| 70   enum Flag { | 70   enum Flag { | 
| 71     kNoFlags = 0u, | 71     kNoFlags = 0u, | 
| 72     kNeedsFrameState = 1u << 0, | 72     kNeedsFrameState = 1u << 0, | 
| 73     kPatchableCallSite = 1u << 1, | 73     kPatchableCallSite = 1u << 1, | 
| 74     kNeedsNopAfterCall = 1u << 2, | 74     kNeedsNopAfterCall = 1u << 2, | 
| 75     kHasExceptionHandler = 1u << 3, | 75     kHasExceptionHandler = 1u << 3, | 
| 76     kSupportsTailCalls = 1u << 4, | 76     kHasLocalCatchHandler = 1u << 4, | 
|  | 77     kSupportsTailCalls = 1u << 5, | 
| 77     kPatchableCallSiteWithNop = kPatchableCallSite | kNeedsNopAfterCall | 78     kPatchableCallSiteWithNop = kPatchableCallSite | kNeedsNopAfterCall | 
| 78   }; | 79   }; | 
| 79   typedef base::Flags<Flag> Flags; | 80   typedef base::Flags<Flag> Flags; | 
| 80 | 81 | 
| 81   CallDescriptor(Kind kind, MachineType target_type, LinkageLocation target_loc, | 82   CallDescriptor(Kind kind, MachineType target_type, LinkageLocation target_loc, | 
| 82                  const MachineSignature* machine_sig, | 83                  const MachineSignature* machine_sig, | 
| 83                  LocationSignature* location_sig, size_t js_param_count, | 84                  LocationSignature* location_sig, size_t js_param_count, | 
| 84                  Operator::Properties properties, | 85                  Operator::Properties properties, | 
| 85                  RegList callee_saved_registers, Flags flags, | 86                  RegList callee_saved_registers, Flags flags, | 
| 86                  const char* debug_name = "") | 87                  const char* debug_name = "") | 
| (...skipping 169 matching lines...) Expand 10 before | Expand all | Expand 10 after  Loading... | 
| 256   CallDescriptor* const incoming_; | 257   CallDescriptor* const incoming_; | 
| 257 | 258 | 
| 258   DISALLOW_COPY_AND_ASSIGN(Linkage); | 259   DISALLOW_COPY_AND_ASSIGN(Linkage); | 
| 259 }; | 260 }; | 
| 260 | 261 | 
| 261 }  // namespace compiler | 262 }  // namespace compiler | 
| 262 }  // namespace internal | 263 }  // namespace internal | 
| 263 }  // namespace v8 | 264 }  // namespace v8 | 
| 264 | 265 | 
| 265 #endif  // V8_COMPILER_LINKAGE_H_ | 266 #endif  // V8_COMPILER_LINKAGE_H_ | 
| OLD | NEW | 
|---|