@@ -25,8 +25,8 @@ use rustc_target::spec::SymbolVisibility;
2525use super :: RustString ;
2626use super :: debuginfo:: {
2727 DIArray , DIBuilder , DIDerivedType , DIDescriptor , DIEnumerator , DIFile , DIFlags ,
28- DIGlobalVariableExpression , DILocation , DISPFlags , DIScope , DISubprogram , DISubrange ,
29- DITemplateTypeParameter , DIType , DIVariable , DebugEmissionKind , DebugNameTableKind ,
28+ DIGlobalVariableExpression , DILocation , DISPFlags , DIScope , DISubprogram ,
29+ DITemplateTypeParameter , DIType , DebugEmissionKind , DebugNameTableKind ,
3030} ;
3131use crate :: llvm;
3232
@@ -807,6 +807,8 @@ unsafe extern "C" {
807807 pub ( crate ) type Metadata ;
808808 pub ( crate ) type BasicBlock ;
809809 pub ( crate ) type Comdat ;
810+ /// `&'ll DbgRecord` represents `LLVMDbgRecordRef`.
811+ pub ( crate ) type DbgRecord ;
810812}
811813#[ repr( C ) ]
812814pub ( crate ) struct Builder < ' a > ( InvariantOpaque < ' a > ) ;
@@ -891,7 +893,6 @@ pub(crate) mod debuginfo {
891893 pub ( crate ) type DIVariable = DIDescriptor ;
892894 pub ( crate ) type DIGlobalVariableExpression = DIDescriptor ;
893895 pub ( crate ) type DIArray = DIDescriptor ;
894- pub ( crate ) type DISubrange = DIDescriptor ;
895896 pub ( crate ) type DIEnumerator = DIDescriptor ;
896897 pub ( crate ) type DITemplateTypeParameter = DIDescriptor ;
897898
@@ -1992,6 +1993,59 @@ unsafe extern "C" {
19921993 Scope : Option < & ' ll Metadata > ,
19931994 AlignInBits : u32 , // (optional; default is 0)
19941995 ) -> & ' ll Metadata ;
1996+
1997+ pub ( crate ) fn LLVMDIBuilderGetOrCreateSubrange < ' ll > (
1998+ Builder : & DIBuilder < ' ll > ,
1999+ LowerBound : i64 ,
2000+ Count : i64 ,
2001+ ) -> & ' ll Metadata ;
2002+
2003+ pub ( crate ) fn LLVMDIBuilderGetOrCreateArray < ' ll > (
2004+ Builder : & DIBuilder < ' ll > ,
2005+ Data : * const Option < & ' ll Metadata > ,
2006+ NumElements : size_t ,
2007+ ) -> & ' ll Metadata ;
2008+
2009+ pub ( crate ) fn LLVMDIBuilderCreateExpression < ' ll > (
2010+ Builder : & DIBuilder < ' ll > ,
2011+ Addr : * const u64 ,
2012+ Length : size_t ,
2013+ ) -> & ' ll Metadata ;
2014+
2015+ pub ( crate ) fn LLVMDIBuilderInsertDeclareRecordAtEnd < ' ll > (
2016+ Builder : & DIBuilder < ' ll > ,
2017+ Storage : & ' ll Value ,
2018+ VarInfo : & ' ll Metadata ,
2019+ Expr : & ' ll Metadata ,
2020+ DebugLoc : & ' ll Metadata ,
2021+ Block : & ' ll BasicBlock ,
2022+ ) -> & ' ll DbgRecord ;
2023+
2024+ pub ( crate ) fn LLVMDIBuilderCreateAutoVariable < ' ll > (
2025+ Builder : & DIBuilder < ' ll > ,
2026+ Scope : & ' ll Metadata ,
2027+ Name : * const c_uchar , // See "PTR_LEN_STR".
2028+ NameLen : size_t ,
2029+ File : & ' ll Metadata ,
2030+ LineNo : c_uint ,
2031+ Ty : & ' ll Metadata ,
2032+ AlwaysPreserve : llvm:: Bool , // "If true, this descriptor will survive optimizations."
2033+ Flags : DIFlags ,
2034+ AlignInBits : u32 ,
2035+ ) -> & ' ll Metadata ;
2036+
2037+ pub ( crate ) fn LLVMDIBuilderCreateParameterVariable < ' ll > (
2038+ Builder : & DIBuilder < ' ll > ,
2039+ Scope : & ' ll Metadata ,
2040+ Name : * const c_uchar , // See "PTR_LEN_STR".
2041+ NameLen : size_t ,
2042+ ArgNo : c_uint ,
2043+ File : & ' ll Metadata ,
2044+ LineNo : c_uint ,
2045+ Ty : & ' ll Metadata ,
2046+ AlwaysPreserve : llvm:: Bool , // "If true, this descriptor will survive optimizations."
2047+ Flags : DIFlags ,
2048+ ) -> & ' ll Metadata ;
19952049}
19962050
19972051#[ link( name = "llvm-wrapper" , kind = "static" ) ]
@@ -2358,43 +2412,6 @@ unsafe extern "C" {
23582412 AlignInBits : u32 ,
23592413 ) -> & ' a DIGlobalVariableExpression ;
23602414
2361- pub ( crate ) fn LLVMRustDIBuilderCreateVariable < ' a > (
2362- Builder : & DIBuilder < ' a > ,
2363- Tag : c_uint ,
2364- Scope : & ' a DIDescriptor ,
2365- Name : * const c_char ,
2366- NameLen : size_t ,
2367- File : & ' a DIFile ,
2368- LineNo : c_uint ,
2369- Ty : & ' a DIType ,
2370- AlwaysPreserve : bool ,
2371- Flags : DIFlags ,
2372- ArgNo : c_uint ,
2373- AlignInBits : u32 ,
2374- ) -> & ' a DIVariable ;
2375-
2376- pub ( crate ) fn LLVMRustDIBuilderGetOrCreateSubrange < ' a > (
2377- Builder : & DIBuilder < ' a > ,
2378- Lo : i64 ,
2379- Count : i64 ,
2380- ) -> & ' a DISubrange ;
2381-
2382- pub ( crate ) fn LLVMRustDIBuilderGetOrCreateArray < ' a > (
2383- Builder : & DIBuilder < ' a > ,
2384- Ptr : * const Option < & ' a DIDescriptor > ,
2385- Count : c_uint ,
2386- ) -> & ' a DIArray ;
2387-
2388- pub ( crate ) fn LLVMRustDIBuilderInsertDeclareAtEnd < ' a > (
2389- Builder : & DIBuilder < ' a > ,
2390- Val : & ' a Value ,
2391- VarInfo : & ' a DIVariable ,
2392- AddrOps : * const u64 ,
2393- AddrOpsCount : c_uint ,
2394- DL : & ' a DILocation ,
2395- InsertAtEnd : & ' a BasicBlock ,
2396- ) ;
2397-
23982415 pub ( crate ) fn LLVMRustDIBuilderCreateEnumerator < ' a > (
23992416 Builder : & DIBuilder < ' a > ,
24002417 Name : * const c_char ,
0 commit comments