+// #endif /* !defined(__cplusplus) */
+
+/**
+ * \defgroup LLVMCREMARKS Remarks
+ * \ingroup LLVMC
+ *
+ * \{
+ */
+
+public static final int REMARKS_API_VERSION = 0;
+
+/**
+ * The type of the emitted remark.
+ */
+/** enum LLVMRemarkType */
+public static final int
+ LLVMRemarkTypeUnknown = 0,
+ LLVMRemarkTypePassed = 1,
+ LLVMRemarkTypeMissed = 2,
+ LLVMRemarkTypeAnalysis = 3,
+ LLVMRemarkTypeAnalysisFPCommute = 4,
+ LLVMRemarkTypeAnalysisAliasing = 5,
+ LLVMRemarkTypeFailure = 6;
+// Targeting ../LLVM/LLVMRemarkStringRef.java
+
+
+
+/**
+ * Returns the buffer holding the string.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("const char*") BytePointer LLVMRemarkStringGetData(LLVMRemarkStringRef String);
+
+/**
+ * Returns the size of the string.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint32_t") int LLVMRemarkStringGetLen(LLVMRemarkStringRef String);
+// Targeting ../LLVM/LLVMRemarkDebugLocRef.java
+
+
+
+/**
+ * Return the path to the source file for a debug location.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkDebugLocGetSourceFilePath(LLVMRemarkDebugLocRef DL);
+
+/**
+ * Return the line in the source file for a debug location.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint32_t") int LLVMRemarkDebugLocGetSourceLine(LLVMRemarkDebugLocRef DL);
+
+/**
+ * Return the column in the source file for a debug location.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint32_t") int LLVMRemarkDebugLocGetSourceColumn(LLVMRemarkDebugLocRef DL);
+// Targeting ../LLVM/LLVMRemarkArgRef.java
+
+
+
+/**
+ * Returns the key of an argument. The key defines what the value is, and the
+ * same key can appear multiple times in the list of arguments.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkArgGetKey(LLVMRemarkArgRef Arg);
+
+/**
+ * Returns the value of an argument. This is a string that can contain newlines.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkArgGetValue(LLVMRemarkArgRef Arg);
+
+/**
+ * Returns the debug location that is attached to the value of this argument.
+ *
+ * If there is no debug location, the return value will be {@code NULL}.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkDebugLocRef LLVMRemarkArgGetDebugLoc(LLVMRemarkArgRef Arg);
+// Targeting ../LLVM/LLVMRemarkEntryRef.java
+
+
+
+/**
+ * Free the resources used by the remark entry.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native void LLVMRemarkEntryDispose(LLVMRemarkEntryRef Remark);
+
+/**
+ * The type of the remark. For example, it can allow users to only keep the
+ * missed optimizations from the compiler.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("LLVMRemarkType") int LLVMRemarkEntryGetType(LLVMRemarkEntryRef Remark);
+
+/**
+ * Get the name of the pass that emitted this remark.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkEntryGetPassName(LLVMRemarkEntryRef Remark);
+
+/**
+ * Get an identifier of the remark.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkEntryGetRemarkName(LLVMRemarkEntryRef Remark);
+
+/**
+ * Get the name of the function being processed when the remark was emitted.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkStringRef LLVMRemarkEntryGetFunctionName(LLVMRemarkEntryRef Remark);
+
+/**
+ * Returns the debug location that is attached to this remark.
+ *
+ * If there is no debug location, the return value will be {@code NULL}.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkDebugLocRef LLVMRemarkEntryGetDebugLoc(LLVMRemarkEntryRef Remark);
+
+/**
+ * Return the hotness of the remark.
+ *
+ * A hotness of {@code 0} means this value is not set.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint64_t") long LLVMRemarkEntryGetHotness(LLVMRemarkEntryRef Remark);
+
+/**
+ * The number of arguments the remark holds.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint32_t") int LLVMRemarkEntryGetNumArgs(LLVMRemarkEntryRef Remark);
+
+/**
+ * Get a new iterator to iterate over a remark's argument.
+ *
+ * If there are no arguments in \p Remark, the return value will be {@code NULL}.
+ *
+ * The lifetime of the returned value is bound to the lifetime of \p Remark.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkArgRef LLVMRemarkEntryGetFirstArg(LLVMRemarkEntryRef Remark);
+
+/**
+ * Get the next argument in \p Remark from the position of \p It.
+ *
+ * Returns {@code NULL} if there are no more arguments available.
+ *
+ * The lifetime of the returned value is bound to the lifetime of \p Remark.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkArgRef LLVMRemarkEntryGetNextArg(LLVMRemarkArgRef It,
+ LLVMRemarkEntryRef Remark);
+// Targeting ../LLVM/LLVMRemarkParserRef.java
+
+
+
+/**
+ * Creates a remark parser that can be used to parse the buffer located in \p
+ * Buf of size \p Size bytes.
+ *
+ * \p Buf cannot be {@code NULL}.
+ *
+ * This function should be paired with LLVMRemarkParserDispose() to avoid
+ * leaking resources.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkParserRef LLVMRemarkParserCreateYAML(@Const Pointer Buf,
+ @Cast("uint64_t") long Size);
+
+/**
+ * Returns the next remark in the file.
+ *
+ * The value pointed to by the return value needs to be disposed using a call to
+ * LLVMRemarkEntryDispose().
+ *
+ * All the entries in the returned value that are of LLVMRemarkStringRef type
+ * will become invalidated once a call to LLVMRemarkParserDispose is made.
+ *
+ * If the parser reaches the end of the buffer, the return value will be {@code NULL}.
+ *
+ * In the case of an error, the return value will be {@code NULL}, and:
+ *
+ * 1) LLVMRemarkParserHasError() will return {@code 1}.
+ *
+ * 2) LLVMRemarkParserGetErrorMessage() will return a descriptive error
+ * message.
+ *
+ * An error may occur if:
+ *
+ * 1) An argument is invalid.
+ *
+ * 2) There is a parsing error. This can occur on things like malformed YAML.
+ *
+ * 3) There is a Remark semantic error. This can occur on well-formed files with
+ * missing or extra fields.
+ *
+ * Here is a quick example of the usage:
+ *
+ * {@code
+ * LLVMRemarkParserRef Parser = LLVMRemarkParserCreateYAML(Buf, Size);
+ * LLVMRemarkEntryRef Remark = NULL;
+ * while ((Remark = LLVMRemarkParserGetNext(Parser))) {
+ * // use Remark
+ * LLVMRemarkEntryDispose(Remark); // Release memory.
+ * }
+ * bool HasError = LLVMRemarkParserHasError(Parser);
+ * LLVMRemarkParserDispose(Parser);
+ * }
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native LLVMRemarkEntryRef LLVMRemarkParserGetNext(LLVMRemarkParserRef Parser);
+
+/**
+ * Returns {@code 1} if the parser encountered an error while parsing the buffer.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("LLVMBool") int LLVMRemarkParserHasError(LLVMRemarkParserRef Parser);
+
+/**
+ * Returns a null-terminated string containing an error message.
+ *
+ * In case of no error, the result is {@code NULL}.
+ *
+ * The memory of the string is bound to the lifetime of \p Parser. If
+ * LLVMRemarkParserDispose() is called, the memory of the string will be
+ * released.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("const char*") BytePointer LLVMRemarkParserGetErrorMessage(LLVMRemarkParserRef Parser);
+
+/**
+ * Releases all the resources used by \p Parser.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native void LLVMRemarkParserDispose(LLVMRemarkParserRef Parser);
+
+/**
+ * Returns the version of the remarks library.
+ *
+ * @since REMARKS_API_VERSION=0
+ */
+public static native @Cast("uint32_t") int LLVMRemarkVersion();
+
+/**
+ * \} // endgoup LLVMCREMARKS
+ */
+
+// #ifdef __cplusplus
+// #endif /* !defined(__cplusplus) */
+
+// #endif /* LLVM_C_REMARKS_H */
+
+
+// Parsed from
+
+/*===-- AggressiveInstCombine.h ---------------------------------*- C++ -*-===*\
+|* *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
+|* Exceptions. *|
+|* See https://llvm.org/LICENSE.txt for license information. *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This header declares the C interface to libLLVMAggressiveInstCombine.a, *|
+|* which combines instructions to form fewer, simple IR instructions. *|
+|* *|
+\*===----------------------------------------------------------------------===*/
+
+// #ifndef LLVM_C_TRANSFORMS_AGGRESSIVEINSTCOMBINE_H
+// #define LLVM_C_TRANSFORMS_AGGRESSIVEINSTCOMBINE_H
+
+// #include "llvm-c/Types.h"
+
+// #ifdef __cplusplus
+// #endif
+
+/**
+ * \defgroup LLVMCTransformsAggressiveInstCombine Aggressive Instruction Combining transformations
+ * \ingroup LLVMCTransforms
+ *
+ * \{
+ */
+
+/** See llvm::createAggressiveInstCombinerPass function. */
+public static native void LLVMAddAggressiveInstCombinerPass(LLVMPassManagerRef PM);
+
+/**
+ * \}
+ */
+
+// #ifdef __cplusplus
+// #endif /* defined(__cplusplus) */
+
+// #endif
+
+
+
+// Parsed from
+
+/*===-- Coroutines.h - Coroutines Library C Interface -----------*- C++ -*-===*\
+|* *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
+|* Exceptions. *|
+|* See https://llvm.org/LICENSE.txt for license information. *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This header declares the C interface to libLLVMCoroutines.a, which *|
+|* implements various scalar transformations of the LLVM IR. *|
+|* *|
+|* Many exotic languages can interoperate with C code but have a harder time *|
+|* with C++ due to name mangling. So in addition to C, this interface enables *|
+|* tools written in such languages. *|
+|* *|
+\*===----------------------------------------------------------------------===*/
+
+// #ifndef LLVM_C_TRANSFORMS_COROUTINES_H
+// #define LLVM_C_TRANSFORMS_COROUTINES_H
+
+// #include "llvm-c/Types.h"
+
+// #ifdef __cplusplus
+// #endif
+
+/**
+ * \defgroup LLVMCTransformsCoroutines Coroutine transformations
+ * \ingroup LLVMCTransforms
+ *
+ * \{
+ */
+
+/** See llvm::createCoroEarlyPass function. */
+public static native void LLVMAddCoroEarlyPass(LLVMPassManagerRef PM);
+
+/** See llvm::createCoroSplitPass function. */
+public static native void LLVMAddCoroSplitPass(LLVMPassManagerRef PM);
+
+/** See llvm::createCoroElidePass function. */
+public static native void LLVMAddCoroElidePass(LLVMPassManagerRef PM);
+
+/** See llvm::createCoroCleanupPass function. */
+public static native void LLVMAddCoroCleanupPass(LLVMPassManagerRef PM);
+
+/**
+ * \}
+ */
+
+// #ifdef __cplusplus
+// #endif /* defined(__cplusplus) */
+
+// #endif
+
+
+// Parsed from
+
+/*===-- Scalar.h - Scalar Transformation Library C Interface ----*- C++ -*-===*\
+|* *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
+|* Exceptions. *|
+|* See https://llvm.org/LICENSE.txt for license information. *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This header declares the C interface to libLLVMInstCombine.a, which *|
+|* combines instructions to form fewer, simple IR instructions. *|
+|* *|
+\*===----------------------------------------------------------------------===*/
+
+// #ifndef LLVM_C_TRANSFORMS_INSTCOMBINE_H
+// #define LLVM_C_TRANSFORMS_INSTCOMBINE_H
+
+// #include "llvm-c/Types.h"
+
+// #ifdef __cplusplus
+// #endif
+
+/**
+ * \defgroup LLVMCTransformsInstCombine Instruction Combining transformations
+ * \ingroup LLVMCTransforms
+ *
+ * \{
+ */
+
+/** See llvm::createInstructionCombiningPass function. */
+public static native void LLVMAddInstructionCombiningPass(LLVMPassManagerRef PM);
+
+/**
+ * \}
+ */
+
+// #ifdef __cplusplus
+// #endif /* defined(__cplusplus) */
+
+// #endif
+
+
+
+// Parsed from
+
+/*===-- IPO.h - Interprocedural Transformations C Interface -----*- C++ -*-===*\
+|* *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
+|* Exceptions. *|
+|* See https://llvm.org/LICENSE.txt for license information. *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This header declares the C interface to libLLVMIPO.a, which implements *|
+|* various interprocedural transformations of the LLVM IR. *|
+|* *|
+\*===----------------------------------------------------------------------===*/
+
+// #ifndef LLVM_C_TRANSFORMS_IPO_H
+// #define LLVM_C_TRANSFORMS_IPO_H
+
+// #include "llvm-c/Types.h"
+
+// #ifdef __cplusplus
+// #endif
+
+/**
+ * \defgroup LLVMCTransformsIPO Interprocedural transformations
+ * \ingroup LLVMCTransforms
+ *
+ * \{
+ */
+
+/** See llvm::createArgumentPromotionPass function. */
+public static native void LLVMAddArgumentPromotionPass(LLVMPassManagerRef PM);
+
+/** See llvm::createConstantMergePass function. */
+public static native void LLVMAddConstantMergePass(LLVMPassManagerRef PM);
+
+/** See llvm::createCalledValuePropagationPass function. */
+public static native void LLVMAddCalledValuePropagationPass(LLVMPassManagerRef PM);
+
+/** See llvm::createDeadArgEliminationPass function. */
+public static native void LLVMAddDeadArgEliminationPass(LLVMPassManagerRef PM);
+
+/** See llvm::createFunctionAttrsPass function. */
+public static native void LLVMAddFunctionAttrsPass(LLVMPassManagerRef PM);
+
+/** See llvm::createFunctionInliningPass function. */
+public static native void LLVMAddFunctionInliningPass(LLVMPassManagerRef PM);
+
+/** See llvm::createAlwaysInlinerPass function. */
+public static native void LLVMAddAlwaysInlinerPass(LLVMPassManagerRef PM);
+
+/** See llvm::createGlobalDCEPass function. */
+public static native void LLVMAddGlobalDCEPass(LLVMPassManagerRef PM);
+
+/** See llvm::createGlobalOptimizerPass function. */
+public static native void LLVMAddGlobalOptimizerPass(LLVMPassManagerRef PM);
+
+/** See llvm::createIPConstantPropagationPass function. */
+public static native void LLVMAddIPConstantPropagationPass(LLVMPassManagerRef PM);
+
+/** See llvm::createPruneEHPass function. */
+public static native void LLVMAddPruneEHPass(LLVMPassManagerRef PM);
+
+/** See llvm::createIPSCCPPass function. */
+public static native void LLVMAddIPSCCPPass(LLVMPassManagerRef PM);
+
+/** See llvm::createInternalizePass function. */
+public static native void LLVMAddInternalizePass(LLVMPassManagerRef arg0, @Cast("unsigned") int AllButMain);
+
+/** See llvm::createStripDeadPrototypesPass function. */
+public static native void LLVMAddStripDeadPrototypesPass(LLVMPassManagerRef PM);
+
+/** See llvm::createStripSymbolsPass function. */
+public static native void LLVMAddStripSymbolsPass(LLVMPassManagerRef PM);
+
+/**
+ * \}
+ */
+
+// #ifdef __cplusplus
+// #endif /* defined(__cplusplus) */
+
+// #endif
+
+
+// Parsed from
+
+/*===-- llvm-c/Transform/PassManagerBuilder.h - PMB C Interface ---*- C -*-===*\
+|* *|
+|* Part of the LLVM Project, under the Apache License v2.0 with LLVM *|
+|* Exceptions. *|
+|* See https://llvm.org/LICENSE.txt for license information. *|
+|* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *|
+|* *|
+|*===----------------------------------------------------------------------===*|
+|* *|
+|* This header declares the C interface to the PassManagerBuilder class. *|
+|* *|
+\*===----------------------------------------------------------------------===*/
+
+// #ifndef LLVM_C_TRANSFORMS_PASSMANAGERBUILDER_H
+// #define LLVM_C_TRANSFORMS_PASSMANAGERBUILDER_H
+
+// #include "llvm-c/Types.h"
+// Targeting ../LLVM/LLVMPassManagerBuilderRef.java
+
+
+
+// #ifdef __cplusplus
+// #endif
+
+/**
+ * \defgroup LLVMCTransformsPassManagerBuilder Pass manager builder
+ * \ingroup LLVMCTransforms
+ *
+ * \{
+ */
+
+/** See llvm::PassManagerBuilder. */
+public static native LLVMPassManagerBuilderRef LLVMPassManagerBuilderCreate();
+public static native void LLVMPassManagerBuilderDispose(LLVMPassManagerBuilderRef PMB);
+
+/** See llvm::PassManagerBuilder::OptLevel. */
+public static native void LLVMPassManagerBuilderSetOptLevel(LLVMPassManagerBuilderRef PMB,
+ @Cast("unsigned") int OptLevel);
+
+/** See llvm::PassManagerBuilder::SizeLevel. */
+public static native void LLVMPassManagerBuilderSetSizeLevel(LLVMPassManagerBuilderRef PMB,
+ @Cast("unsigned") int SizeLevel);
+
+/** See llvm::PassManagerBuilder::DisableUnitAtATime. */
+public static native void LLVMPassManagerBuilderSetDisableUnitAtATime(LLVMPassManagerBuilderRef PMB,
+ @Cast("LLVMBool") int Value);
+
+/** See llvm::PassManagerBuilder::DisableUnrollLoops. */
+public static native void LLVMPassManagerBuilderSetDisableUnrollLoops(LLVMPassManagerBuilderRef PMB,
+ @Cast("LLVMBool") int Value);
+
+/** See llvm::PassManagerBuilder::DisableSimplifyLibCalls */
+public static native void LLVMPassManagerBuilderSetDisableSimplifyLibCalls(LLVMPassManagerBuilderRef PMB,
+ @Cast("LLVMBool") int Value);
+
+/** See llvm::PassManagerBuilder::Inliner. */
+public static native void LLVMPassManagerBuilderUseInlinerWithThreshold(LLVMPassManagerBuilderRef PMB,
+ @Cast("unsigned") int Threshold);
+
+/** See llvm::PassManagerBuilder::populateFunctionPassManager. */
+public static native void LLVMPassManagerBuilderPopulateFunctionPassManager(LLVMPassManagerBuilderRef PMB,
+ LLVMPassManagerRef PM);
+
+/** See llvm::PassManagerBuilder::populateModulePassManager. */
+public static native void LLVMPassManagerBuilderPopulateModulePassManager(LLVMPassManagerBuilderRef PMB,
+ LLVMPassManagerRef PM);
+
+/** See llvm::PassManagerBuilder::populateLTOPassManager. */
+public static native void LLVMPassManagerBuilderPopulateLTOPassManager(LLVMPassManagerBuilderRef PMB,
+ LLVMPassManagerRef PM,
+ @Cast("LLVMBool") int Internalize,
+ @Cast("LLVMBool") int RunInliner);
+
+/**
+ * \}
+ */
+
+// #ifdef __cplusplus
+// #endif
+
+// #endif
// Parsed from
@@ -7769,7 +10239,6 @@ public static native void LLVMPassManagerBuilderPopulateLTOPassManager(LLVMPassM
public static native void LLVMAddIndVarSimplifyPass(LLVMPassManagerRef PM);
/** See llvm::createInstructionCombiningPass function. */
-public static native void LLVMAddInstructionCombiningPass(LLVMPassManagerRef PM);
/** See llvm::createJumpThreadingPass function. */
public static native void LLVMAddJumpThreadingPass(LLVMPassManagerRef PM);
diff --git a/llvm/src/gen/java/org/bytedeco/llvm/global/clang.java b/llvm/src/gen/java/org/bytedeco/llvm/global/clang.java
index 487c90fd750..37b4fcd21d4 100644
--- a/llvm/src/gen/java/org/bytedeco/llvm/global/clang.java
+++ b/llvm/src/gen/java/org/bytedeco/llvm/global/clang.java
@@ -1,4 +1,4 @@
-// Targeted by JavaCPP version 1.5.2: DO NOT EDIT THIS FILE
+// Targeted by JavaCPP version 1.5.3-SNAPSHOT: DO NOT EDIT THIS FILE
package org.bytedeco.llvm.global;
diff --git a/llvm/src/main/java/org/bytedeco/llvm/presets/LLVM.java b/llvm/src/main/java/org/bytedeco/llvm/presets/LLVM.java
index e02b14d9d26..8dadaf6da4c 100644
--- a/llvm/src/main/java/org/bytedeco/llvm/presets/LLVM.java
+++ b/llvm/src/main/java/org/bytedeco/llvm/presets/LLVM.java
@@ -1,5 +1,5 @@
/*
- * Copyright (C) 2014-2019 Samuel Audet
+ * Copyright (C) 2014-2020 Samuel Audet
*
* Licensed either under the Apache License, Version 2.0, or (at your option)
* under the terms of the GNU General Public License as published by
@@ -28,9 +28,11 @@
@Properties(target = "org.bytedeco.llvm.LLVM", global = "org.bytedeco.llvm.global.LLVM", value = {@Platform(
value = {"linux", "macosx", "windows"}, define = {"__STDC_LIMIT_MACROS", "__STDC_CONSTANT_MACROS"},
- include = {"", "", "", "", "", "",
+ include = {"", "", "", "", "", "", "",
"", "", "", "", "", "",
"", "", "", "", "",
+ "", "", "", "", "", "",
+ "", "", "",
"", "", "", "", ""},
compiler = "cpp11", link = {"LLVM-9", "LTO@.9"}, preload = "LLVM-C"), @Platform(value = {"macosx", "windows"}, link = {"LTO", "LLVM"}) })
public class LLVM implements InfoMapper {
@@ -61,6 +63,15 @@ public void map(InfoMap infoMap) {
.put(new Info("LLVMOpaqueGenericValue").pointerTypes("LLVMGenericValueRef"))
.put(new Info("LLVMOpaqueExecutionEngine").pointerTypes("LLVMExecutionEngineRef"))
.put(new Info("LLVMOpaqueMCJITMemoryManager").pointerTypes("LLVMMCJITMemoryManagerRef"))
+ .put(new Info("LLVMComdat").pointerTypes("LLVMComdatRef"))
+ .put(new Info("LLVMOpaqueDIBuilder").pointerTypes("LLVMDIBuilderRef"))
+ .put(new Info("LLVMOpaqueError").pointerTypes("LLVMErrorRef"))
+ .put(new Info("LLVMOrcOpaqueJITStack").pointerTypes("LLVMOrcJITStackRef"))
+ .put(new Info("LLVMRemarkOpaqueString").pointerTypes("LLVMRemarkStringRef"))
+ .put(new Info("LLVMRemarkOpaqueDebugLoc").pointerTypes("LLVMRemarkDebugLocRef"))
+ .put(new Info("LLVMRemarkOpaqueArg").pointerTypes("LLVMRemarkArgRef"))
+ .put(new Info("LLVMRemarkOpaqueEntry").pointerTypes("LLVMRemarkEntryRef"))
+ .put(new Info("LLVMRemarkOpaqueParser").pointerTypes("LLVMRemarkParserRef"))
.put(new Info("LLVMOpaqueLTOModule").pointerTypes("lto_module_t"))
.put(new Info("LLVMOpaqueLTOCodeGenerator").pointerTypes("lto_code_gen_t"))
.put(new Info("LLVMOpaqueThinLTOCodeGenerator").pointerTypes("thinlto_code_gen_t"))
@@ -95,6 +106,15 @@ public void map(InfoMap infoMap) {
.put(new Info("LLVMGenericValueRef").valueTypes("LLVMGenericValueRef").pointerTypes("@ByPtrPtr LLVMGenericValueRef", "@Cast(\"LLVMGenericValueRef*\") PointerPointer"))
.put(new Info("LLVMExecutionEngineRef").valueTypes("LLVMExecutionEngineRef").pointerTypes("@ByPtrPtr LLVMExecutionEngineRef", "@Cast(\"LLVMExecutionEngineRef*\") PointerPointer"))
.put(new Info("LLVMMCJITMemoryManagerRef").valueTypes("LLVMMCJITMemoryManagerRef").pointerTypes("@ByPtrPtr LLVMMCJITMemoryManagerRef", "@Cast(\"LLVMMCJITMemoryManagerRef*\") PointerPointer"))
+ .put(new Info("LLVMComdatRef").valueTypes("LLVMComdatRef").pointerTypes("@ByPtrPtr LLVMComdatRef", "@Cast(\"LLVMComdatRef*\") PointerPointer"))
+ .put(new Info("LLVMDIBuilderRef").valueTypes("LLVMDIBuilderRef").pointerTypes("@ByPtrPtr LLVMDIBuilderRef", "@Cast(\"LLVMDIBuilderRef*\") PointerPointer"))
+ .put(new Info("LLVMErrorRef").valueTypes("LLVMErrorRef").pointerTypes("@ByPtrPtr LLVMErrorRef", "@Cast(\"LLVMErrorRef*\") PointerPointer"))
+ .put(new Info("LLVMOrcJITStackRef").valueTypes("LLVMOrcJITStackRef").pointerTypes("@ByPtrPtr LLVMOrcJITStackRef", "@Cast(\"LLVMOrcJITStackRef*\") PointerPointer"))
+ .put(new Info("LLVMRemarkStringRef").valueTypes("LLVMRemarkStringRef").pointerTypes("@ByPtrPtr LLVMRemarkStringRef", "@Cast(\"LLVMRemarkStringRef*\") PointerPointer"))
+ .put(new Info("LLVMRemarkDebugLocRef").valueTypes("LLVMRemarkDebugLocRef").pointerTypes("@ByPtrPtr LLVMRemarkDebugLocRef", "@Cast(\"LLVMRemarkDebugLocRef*\") PointerPointer"))
+ .put(new Info("LLVMRemarkArgRef").valueTypes("LLVMRemarkArgRef").pointerTypes("@ByPtrPtr LLVMRemarkArgRef", "@Cast(\"LLVMRemarkArgRef*\") PointerPointer"))
+ .put(new Info("LLVMRemarkEntryRef").valueTypes("LLVMRemarkEntryRef").pointerTypes("@ByPtrPtr LLVMRemarkEntryRef", "@Cast(\"LLVMRemarkEntryRef*\") PointerPointer"))
+ .put(new Info("LLVMRemarkParserRef").valueTypes("LLVMRemarkParserRef").pointerTypes("@ByPtrPtr LLVMRemarkParserRef", "@Cast(\"LLVMRemarkParserRef*\") PointerPointer"))
.put(new Info("lto_module_t").valueTypes("lto_module_t").pointerTypes("@ByPtrPtr lto_module_t", "@Cast(\"lto_module_t*\") PointerPointer"))
.put(new Info("lto_code_gen_t").valueTypes("lto_code_gen_t").pointerTypes("@ByPtrPtr lto_code_gen_t", "@Cast(\"lto_code_gen_t*\") PointerPointer"))
.put(new Info("thinlto_code_gen_t").valueTypes("thinlto_code_gen_t").pointerTypes("@ByPtrPtr thinlto_code_gen_t", "@Cast(\"thinlto_code_gen_t*\") PointerPointer"))
@@ -105,6 +125,9 @@ public void map(InfoMap infoMap) {
.put(new Info("LLVMRelocationIteratorRef").valueTypes("LLVMRelocationIteratorRef").pointerTypes("@ByPtrPtr LLVMRelocationIteratorRef", "@Cast(\"LLVMRelocationIteratorRef*\") PointerPointer"))
.put(new Info("LLVMPassManagerBuilderRef").valueTypes("LLVMPassManagerBuilderRef").pointerTypes("@ByPtrPtr LLVMPassManagerBuilderRef", "@Cast(\"LLVMPassManagerBuilderRef*\") PointerPointer"))
+ .put(new Info("INT64_MIN").cppTypes("long").translate())
+ .put(new Info("HUGE_VALF").cppTypes("float").translate(false))
+ .put(new Info("LLVMErrorTypeId").annotations("@Const").valueTypes("LLVMErrorTypeId"))
.put(new Info("defined(_MSC_VER) && !defined(inline)").define(false))
.put(new Info("LLVMDumpType", "LLVMConstGEP2", "LLVMConstInBoundsGEP2", "LLVMCreateOprofileJITEventListener",
"llvm_optimize_modules", "llvm_destroy_optimizer", "llvm_read_object_file", "llvm_create_optimizer").skip());