You've already forked linux-packaging-mono
51 lines
1.6 KiB
C
51 lines
1.6 KiB
C
//===----------------------------------------------------------------------===//
|
|
//
|
|
// The LLVM Compiler Infrastructure
|
|
//
|
|
// This file is dual licensed under the MIT and the University of Illinois Open
|
|
// Source Licenses. See LICENSE.txt for details.
|
|
//
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
/*! \file
|
|
\brief The interface between compiler-generated target code and runtime library
|
|
*/
|
|
|
|
#ifndef COMPILER_IF_TARGET_H_INCLUDED
|
|
#define COMPILER_IF_TARGET_H_INCLUDED
|
|
|
|
#include "offload_target.h"
|
|
|
|
#define OFFLOAD_TARGET_ENTER OFFLOAD_PREFIX(target_enter)
|
|
#define OFFLOAD_TARGET_LEAVE OFFLOAD_PREFIX(target_leave)
|
|
#define OFFLOAD_TARGET_MAIN OFFLOAD_PREFIX(target_main)
|
|
|
|
/*! \fn OFFLOAD_TARGET_ENTER
|
|
\brief Fill in variable addresses using VarDesc array.
|
|
\brief Then call back the runtime library to fetch data.
|
|
\param ofld Offload descriptor created by runtime.
|
|
\param var_desc_num Number of variable descriptors.
|
|
\param var_desc Pointer to VarDesc array.
|
|
\param var_desc2 Pointer to VarDesc2 array.
|
|
*/
|
|
extern "C" void OFFLOAD_TARGET_ENTER(
|
|
OFFLOAD ofld,
|
|
int var_desc_num,
|
|
VarDesc *var_desc,
|
|
VarDesc2 *var_desc2
|
|
);
|
|
|
|
/*! \fn OFFLOAD_TARGET_LEAVE
|
|
\brief Call back the runtime library to gather outputs using VarDesc array.
|
|
\param ofld Offload descriptor created by OFFLOAD_TARGET_ACQUIRE.
|
|
*/
|
|
extern "C" void OFFLOAD_TARGET_LEAVE(
|
|
OFFLOAD ofld
|
|
);
|
|
|
|
// Entry point for the target application.
|
|
extern "C" void OFFLOAD_TARGET_MAIN(void);
|
|
|
|
#endif // COMPILER_IF_TARGET_H_INCLUDED
|