1 /*===-- llvm-c-test.h - tool for testing libLLVM and llvm-c API -----------===*\ 2 |* *| 3 |* Part of the LLVM Project, under the Apache License v2.0 with LLVM *| 4 |* Exceptions. *| 5 |* See https://llvm.org/LICENSE.txt for license information. *| 6 |* SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception *| 7 |* *| 8 |*===----------------------------------------------------------------------===*| 9 |* *| 10 |* Header file for llvm-c-test *| 11 |* *| 12 \*===----------------------------------------------------------------------===*/ 13 #ifndef LLVM_C_TEST_H 14 #define LLVM_C_TEST_H 15 16 #include <stdbool.h> 17 #include "llvm-c/Core.h" 18 19 #ifdef __cplusplus 20 extern "C" { 21 #endif 22 23 // helpers.c 24 void llvm_tokenize_stdin(void (*cb)(char **tokens, int ntokens)); 25 26 // module.c 27 LLVMModuleRef llvm_load_module(bool Lazy, bool New); 28 int llvm_module_dump(bool Lazy, bool New); 29 int llvm_module_list_functions(void); 30 int llvm_module_list_globals(void); 31 32 // calc.c 33 int llvm_calc(void); 34 35 // disassemble.c 36 int llvm_disassemble(void); 37 38 // debuginfo.c 39 int llvm_test_dibuilder(void); 40 41 // metadata.c 42 int llvm_add_named_metadata_operand(void); 43 int llvm_set_metadata(void); 44 45 // object.c 46 int llvm_object_list_sections(void); 47 int llvm_object_list_symbols(void); 48 49 // targets.c 50 int llvm_targets_list(void); 51 52 // echo.c 53 int llvm_echo(void); 54 55 // diagnostic.c 56 int llvm_test_diagnostic_handler(void); 57 58 // attributes.c 59 int llvm_test_function_attributes(void); 60 int llvm_test_callsite_attributes(void); 61 62 #ifdef __cplusplus 63 } 64 #endif /* !defined(__cplusplus) */ 65 66 #endif 67