]> git.proxmox.com Git - mirror_frr.git/blob - tools/frr-llvm-debuginfo.h
Merge pull request #8759 from idryzhov/ospf6-vrf-fix
[mirror_frr.git] / tools / frr-llvm-debuginfo.h
1 // This is free and unencumbered software released into the public domain.
2 //
3 // Anyone is free to copy, modify, publish, use, compile, sell, or
4 // distribute this software, either in source code form or as a compiled
5 // binary, for any purpose, commercial or non-commercial, and by any
6 // means.
7 //
8 // In jurisdictions that recognize copyright laws, the author or authors
9 // of this software dedicate any and all copyright interest in the
10 // software to the public domain. We make this dedication for the benefit
11 // of the public at large and to the detriment of our heirs and
12 // successors. We intend this dedication to be an overt act of
13 // relinquishment in perpetuity of all present and future rights to this
14 // software under copyright law.
15 //
16 // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17 // EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18 // MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19 // IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
20 // OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
21 // ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
22 // OTHER DEALINGS IN THE SOFTWARE.
23 //
24 // For more information, please refer to <http://unlicense.org/>
25
26 #ifndef _FRR_LLVM_DEBUGINFO_H
27 #define _FRR_LLVM_DEBUGINFO_H
28
29 #include <stdbool.h>
30 #include <llvm-c/Core.h>
31
32 #ifdef __cplusplus
33 extern "C" {
34 #endif
35
36 struct dbginfo;
37
38 extern struct dbginfo *dbginfo_load(LLVMModuleRef mod);
39 extern bool dbginfo_struct_member(struct dbginfo *di, LLVMTypeRef typ,
40 unsigned long long idx, char **struct_name,
41 char **member_name);
42
43 #ifdef __cplusplus
44 }
45 #endif
46
47 #endif /* _FRR_LLVM_DEBUGINFO_H */