|
CppInterOp
C++ Language Interoperability Layer
|
#include "Tracing.h"#include "CppInterOp/CppInterOp.h"#include "llvm/ADT/StringMap.h"#include "llvm/Support/FileSystem.h"#include "llvm/Support/ManagedStatic.h"#include "llvm/Support/Path.h"#include "llvm/Support/Process.h"#include "llvm/Support/raw_ostream.h"#include <cassert>#include <cstdint>#include <system_error>#include "CppInterOp/CppInterOpAPI.inc"
Go to the source code of this file.
Namespaces | |
| namespace | CppInternal |
| namespace | CppInternal::DispatchRaw |
| namespace | CppInterOp |
| namespace | CppInterOp::Tracing |
Macros | |
| #define | CPPINTEROP_API_FUNC(DN, CN, Ret, DA, CA, RT) |
| #define | CPPINTEROP_API_OUT(CN, OutMask) {#CN, OutMask}, |
Functions | |
| void | CppInterOp::Tracing::InitTracing () |
| Activate tracing. | |
| static void | CppInterOp::Tracing::WriteVersionComment (llvm::raw_ostream &OS, const std::string &Version) |
| Helper: emit version info as comment lines. | |
| static std::string | CppInterOp::Tracing::GetCppInterOpLibPath () |
| dladdr-based path to libclangCppInterOp, used as the dispatch-mode fallback. | |
| static void | CppInterOp::Tracing::WriteBuildContext (llvm::raw_ostream &OS) |
Stream Cpp::GetBuildInfo() into the prologue as // comments. | |
| static void | CppInterOp::Tracing::WriteReproducerPrologue (llvm::raw_ostream &OS, llvm::StringRef Title, const std::string &Version, llvm::StringRef Footnote) |
| Emit a prologue compilable in two modes selected by -D: default <CppInterOp/CppInterOp.h>, static-link -DCPPINTEROP_USE_DISPATCH <CppInterOp/Dispatch.h>, dlopen-based The dispatch path reads CPPINTEROP_LIBRARY_PATH and falls back to the dladdr-captured libclangCppInterOp path (when available). | |
Variables | |
| void(* | CppInternal::DispatchRaw::CppInterOpTraceJitCallInvokeImpl )(const Cpp::JitCall *, void *, void **, std::size_t, void *) = nullptr |
| void(* | CppInternal::DispatchRaw::CppInterOpTraceJitCallInvokeDestructorImpl )(const Cpp::JitCall *, void *, unsigned long, int) = nullptr |
| void(* | CppInternal::DispatchRaw::CppInterOpTraceJitCallInvokeReturnImpl )(const Cpp::JitCall *, void *) = nullptr |
| TraceInfo * | CppInterOp::Tracing::TheTraceInfo = nullptr |
| Process-global tracer pointer. | |
| #define CPPINTEROP_API_FUNC | ( | DN, | |
| CN, | |||
| Ret, | |||
| DA, | |||
| CA, | |||
| RT | |||
| ) |
| #define CPPINTEROP_API_OUT | ( | CN, | |
| OutMask | |||
| ) | {#CN, OutMask}, |