#ifndef V8_CODEGEN_X64_INTERFACE_DESCRIPTORS_X64_INL_H_
#define V8_CODEGEN_X64_INTERFACE_DESCRIPTORS_X64_INL_H_
#if V8_TARGET_ARCH_X64
#include "src/codegen/interface-descriptors.h"
namespace v8 {
namespace internal {
constexpr auto CallInterfaceDescriptor::DefaultRegisterArray() { … }
constexpr auto CallInterfaceDescriptor::DefaultDoubleRegisterArray() { … }
constexpr auto CallInterfaceDescriptor::DefaultReturnRegisterArray() { … }
constexpr auto CallInterfaceDescriptor::DefaultReturnDoubleRegisterArray() { … }
#if DEBUG
template <typename DerivedDescriptor>
void StaticCallInterfaceDescriptor<DerivedDescriptor>::
VerifyArgumentRegisterCount(CallInterfaceDescriptorData* data,
int nof_expected_args) { … }
#endif
constexpr auto WriteBarrierDescriptor::registers() { … }
#ifdef V8_IS_TSAN
constexpr auto TSANStoreDescriptor::registers() {
return RegisterArray(kCArgRegs[0], kCArgRegs[1], kReturnRegister0);
}
constexpr auto TSANLoadDescriptor::registers() {
return RegisterArray(kCArgRegs[0], kReturnRegister0);
}
#endif
constexpr Register LoadDescriptor::ReceiverRegister() { … }
constexpr Register LoadDescriptor::NameRegister() { … }
constexpr Register LoadDescriptor::SlotRegister() { … }
constexpr Register LoadWithVectorDescriptor::VectorRegister() { … }
constexpr Register KeyedLoadBaselineDescriptor::ReceiverRegister() { … }
constexpr Register KeyedLoadBaselineDescriptor::NameRegister() { … }
constexpr Register KeyedLoadBaselineDescriptor::SlotRegister() { … }
constexpr Register KeyedLoadWithVectorDescriptor::VectorRegister() { … }
constexpr Register EnumeratedKeyedLoadBaselineDescriptor::EnumIndexRegister() { … }
constexpr Register EnumeratedKeyedLoadBaselineDescriptor::CacheTypeRegister() { … }
constexpr Register EnumeratedKeyedLoadBaselineDescriptor::SlotRegister() { … }
constexpr Register KeyedHasICBaselineDescriptor::ReceiverRegister() { … }
constexpr Register KeyedHasICBaselineDescriptor::NameRegister() { … }
constexpr Register KeyedHasICBaselineDescriptor::SlotRegister() { … }
constexpr Register KeyedHasICWithVectorDescriptor::VectorRegister() { … }
constexpr Register
LoadWithReceiverAndVectorDescriptor::LookupStartObjectRegister() { … }
constexpr Register StoreDescriptor::ReceiverRegister() { … }
constexpr Register StoreDescriptor::NameRegister() { … }
constexpr Register StoreDescriptor::ValueRegister() { … }
constexpr Register StoreDescriptor::SlotRegister() { … }
constexpr Register StoreWithVectorDescriptor::VectorRegister() { … }
constexpr Register DefineKeyedOwnDescriptor::FlagsRegister() { … }
constexpr Register StoreTransitionDescriptor::MapRegister() { … }
constexpr Register ApiGetterDescriptor::HolderRegister() { … }
constexpr Register ApiGetterDescriptor::CallbackRegister() { … }
constexpr Register GrowArrayElementsDescriptor::ObjectRegister() { … }
constexpr Register GrowArrayElementsDescriptor::KeyRegister() { … }
constexpr Register BaselineLeaveFrameDescriptor::ParamsSizeRegister() { … }
constexpr Register BaselineLeaveFrameDescriptor::WeightRegister() { … }
constexpr Register
MaglevOptimizeCodeOrTailCallOptimizedCodeSlotDescriptor::FlagsRegister() { … }
constexpr Register MaglevOptimizeCodeOrTailCallOptimizedCodeSlotDescriptor::
FeedbackVectorRegister() { … }
constexpr Register
MaglevOptimizeCodeOrTailCallOptimizedCodeSlotDescriptor::TemporaryRegister() { … }
constexpr Register TypeConversionDescriptor::ArgumentRegister() { … }
constexpr auto TypeofDescriptor::registers() { … }
constexpr auto CallTrampolineDescriptor::registers() { … }
constexpr auto CopyDataPropertiesWithExcludedPropertiesDescriptor::registers() { … }
constexpr auto
CopyDataPropertiesWithExcludedPropertiesOnStackDescriptor::registers() { … }
constexpr auto CallVarargsDescriptor::registers() { … }
constexpr auto CallForwardVarargsDescriptor::registers() { … }
constexpr auto CallFunctionTemplateDescriptor::registers() { … }
constexpr auto CallFunctionTemplateGenericDescriptor::registers() { … }
constexpr auto CallWithSpreadDescriptor::registers() { … }
constexpr auto CallWithArrayLikeDescriptor::registers() { … }
constexpr auto ConstructVarargsDescriptor::registers() { … }
constexpr auto ConstructForwardVarargsDescriptor::registers() { … }
constexpr auto ConstructWithSpreadDescriptor::registers() { … }
constexpr auto ConstructWithArrayLikeDescriptor::registers() { … }
constexpr auto ConstructStubDescriptor::registers() { … }
constexpr auto AbortDescriptor::registers() { … }
constexpr auto CompareDescriptor::registers() { … }
constexpr auto BinaryOpDescriptor::registers() { … }
constexpr auto Compare_BaselineDescriptor::registers() { … }
constexpr auto BinaryOp_BaselineDescriptor::registers() { … }
constexpr auto BinarySmiOp_BaselineDescriptor::registers() { … }
constexpr Register
CallApiCallbackOptimizedDescriptor::ApiFunctionAddressRegister() { … }
constexpr Register
CallApiCallbackOptimizedDescriptor::ActualArgumentsCountRegister() { … }
constexpr Register
CallApiCallbackOptimizedDescriptor::FunctionTemplateInfoRegister() { … }
constexpr Register CallApiCallbackOptimizedDescriptor::HolderRegister() { … }
constexpr Register
CallApiCallbackGenericDescriptor::ActualArgumentsCountRegister() { … }
constexpr Register
CallApiCallbackGenericDescriptor::FunctionTemplateInfoRegister() { … }
constexpr Register
CallApiCallbackGenericDescriptor::TopmostScriptHavingContextRegister() { … }
constexpr Register CallApiCallbackGenericDescriptor::HolderRegister() { … }
constexpr auto InterpreterDispatchDescriptor::registers() { … }
constexpr auto InterpreterPushArgsThenCallDescriptor::registers() { … }
constexpr auto InterpreterPushArgsThenConstructDescriptor::registers() { … }
constexpr auto ConstructForwardAllArgsDescriptor::registers() { … }
constexpr auto ResumeGeneratorDescriptor::registers() { … }
constexpr auto RunMicrotasksEntryDescriptor::registers() { … }
constexpr auto WasmJSToWasmWrapperDescriptor::registers() { … }
}
}
#endif
#endif