summaryrefslogtreecommitdiff
path: root/deps/v8/src/compiler/raw-machine-assembler.h
diff options
context:
space:
mode:
Diffstat (limited to 'deps/v8/src/compiler/raw-machine-assembler.h')
-rw-r--r--deps/v8/src/compiler/raw-machine-assembler.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/deps/v8/src/compiler/raw-machine-assembler.h b/deps/v8/src/compiler/raw-machine-assembler.h
index cbbb719d54..c0bfd84a61 100644
--- a/deps/v8/src/compiler/raw-machine-assembler.h
+++ b/deps/v8/src/compiler/raw-machine-assembler.h
@@ -983,6 +983,22 @@ class V8_EXPORT_PRIVATE RawMachineAssembler {
Node* CallCFunction(Node* function, MachineType return_type,
std::initializer_list<CFunctionArg> args);
+ // Call to a C function without a function discriptor on AIX.
+ template <class... CArgs>
+ Node* CallCFunctionWithoutFunctionDescriptor(Node* function,
+ MachineType return_type,
+ CArgs... cargs) {
+ static_assert(v8::internal::conjunction<
+ std::is_convertible<CArgs, CFunctionArg>...>::value,
+ "invalid argument types");
+ return CallCFunctionWithoutFunctionDescriptor(function, return_type,
+ {cargs...});
+ }
+
+ Node* CallCFunctionWithoutFunctionDescriptor(
+ Node* function, MachineType return_type,
+ std::initializer_list<CFunctionArg> args);
+
// Call to a C function, while saving/restoring caller registers.
template <class... CArgs>
Node* CallCFunctionWithCallerSavedRegisters(Node* function,