@@ -64,8 +64,9 @@ use libc::{c_uint, c_ushort, uint64_t, c_int, size_t, c_char};
64
64
use libc:: { c_longlong, c_ulonglong, c_void} ;
65
65
use debuginfo:: { DIBuilderRef , DIDescriptor ,
66
66
DIFile , DILexicalBlock , DISubprogram , DIType ,
67
- DIBasicType , DIDerivedType , DICompositeType ,
68
- DIVariable , DIGlobalVariable , DIArray , DISubrange } ;
67
+ DIBasicType , DIDerivedType , DICompositeType , DIScope ,
68
+ DIVariable , DIGlobalVariable , DIArray , DISubrange ,
69
+ DITemplateTypeParameter , DIEnumerator , DINameSpace } ;
69
70
70
71
pub mod archive_ro;
71
72
pub mod diagnostic;
@@ -443,6 +444,9 @@ pub type TypeRef = *mut Type_opaque;
443
444
pub enum Value_opaque { }
444
445
pub type ValueRef = * mut Value_opaque ;
445
446
#[ allow( missing_copy_implementations) ]
447
+ pub enum Metadata_opaque { }
448
+ pub type MetadataRef = * mut Metadata_opaque ;
449
+ #[ allow( missing_copy_implementations) ]
446
450
pub enum BasicBlock_opaque { }
447
451
pub type BasicBlockRef = * mut BasicBlock_opaque ;
448
452
#[ allow( missing_copy_implementations) ]
@@ -502,18 +506,19 @@ pub type InlineAsmDiagHandler = unsafe extern "C" fn(SMDiagnosticRef, *const c_v
502
506
503
507
pub mod debuginfo {
504
508
pub use self :: DIDescriptorFlags :: * ;
505
- use super :: { ValueRef } ;
509
+ use super :: { MetadataRef } ;
506
510
507
511
#[ allow( missing_copy_implementations) ]
508
512
pub enum DIBuilder_opaque { }
509
513
pub type DIBuilderRef = * mut DIBuilder_opaque ;
510
514
511
- pub type DIDescriptor = ValueRef ;
515
+ pub type DIDescriptor = MetadataRef ;
512
516
pub type DIScope = DIDescriptor ;
513
517
pub type DILocation = DIDescriptor ;
514
518
pub type DIFile = DIScope ;
515
519
pub type DILexicalBlock = DIScope ;
516
520
pub type DISubprogram = DIScope ;
521
+ pub type DINameSpace = DIScope ;
517
522
pub type DIType = DIDescriptor ;
518
523
pub type DIBasicType = DIType ;
519
524
pub type DIDerivedType = DIType ;
@@ -522,6 +527,8 @@ pub mod debuginfo {
522
527
pub type DIGlobalVariable = DIDescriptor ;
523
528
pub type DIArray = DIDescriptor ;
524
529
pub type DISubrange = DIDescriptor ;
530
+ pub type DIEnumerator = DIDescriptor ;
531
+ pub type DITemplateTypeParameter = DIDescriptor ;
525
532
526
533
#[ derive( Copy ) ]
527
534
pub enum DIDescriptorFlags {
@@ -1779,8 +1786,8 @@ extern {
1779
1786
Flags : c_uint ,
1780
1787
isOptimized : bool ,
1781
1788
Fn : ValueRef ,
1782
- TParam : ValueRef ,
1783
- Decl : ValueRef )
1789
+ TParam : DIArray ,
1790
+ Decl : DIDescriptor )
1784
1791
-> DISubprogram ;
1785
1792
1786
1793
pub fn LLVMDIBuilderCreateBasicType ( Builder : DIBuilderRef ,
@@ -1808,7 +1815,7 @@ extern {
1808
1815
DerivedFrom : DIType ,
1809
1816
Elements : DIArray ,
1810
1817
RunTimeLang : c_uint ,
1811
- VTableHolder : ValueRef ,
1818
+ VTableHolder : DIType ,
1812
1819
UniqueId : * const c_char )
1813
1820
-> DICompositeType ;
1814
1821
@@ -1825,25 +1832,25 @@ extern {
1825
1832
-> DIDerivedType ;
1826
1833
1827
1834
pub fn LLVMDIBuilderCreateLexicalBlock ( Builder : DIBuilderRef ,
1828
- Scope : DIDescriptor ,
1835
+ Scope : DIScope ,
1829
1836
File : DIFile ,
1830
1837
Line : c_uint ,
1831
1838
Col : c_uint )
1832
1839
-> DILexicalBlock ;
1833
1840
1834
1841
pub fn LLVMDIBuilderCreateStaticVariable ( Builder : DIBuilderRef ,
1835
- Context : DIDescriptor ,
1842
+ Context : DIScope ,
1836
1843
Name : * const c_char ,
1837
1844
LinkageName : * const c_char ,
1838
1845
File : DIFile ,
1839
1846
LineNo : c_uint ,
1840
1847
Ty : DIType ,
1841
1848
isLocalToUnit : bool ,
1842
1849
Val : ValueRef ,
1843
- Decl : ValueRef )
1850
+ Decl : DIDescriptor )
1844
1851
-> DIGlobalVariable ;
1845
1852
1846
- pub fn LLVMDIBuilderCreateLocalVariable ( Builder : DIBuilderRef ,
1853
+ pub fn LLVMDIBuilderCreateVariable ( Builder : DIBuilderRef ,
1847
1854
Tag : c_uint ,
1848
1855
Scope : DIDescriptor ,
1849
1856
Name : * const c_char ,
@@ -1852,6 +1859,8 @@ extern {
1852
1859
Ty : DIType ,
1853
1860
AlwaysPreserve : bool ,
1854
1861
Flags : c_uint ,
1862
+ AddrOps : * const i64 ,
1863
+ AddrOpsCount : c_uint ,
1855
1864
ArgNo : c_uint )
1856
1865
-> DIVariable ;
1857
1866
@@ -1882,79 +1891,80 @@ extern {
1882
1891
pub fn LLVMDIBuilderInsertDeclareAtEnd ( Builder : DIBuilderRef ,
1883
1892
Val : ValueRef ,
1884
1893
VarInfo : DIVariable ,
1894
+ AddrOps : * const i64 ,
1895
+ AddrOpsCount : c_uint ,
1885
1896
InsertAtEnd : BasicBlockRef )
1886
1897
-> ValueRef ;
1887
1898
1888
1899
pub fn LLVMDIBuilderInsertDeclareBefore ( Builder : DIBuilderRef ,
1889
1900
Val : ValueRef ,
1890
1901
VarInfo : DIVariable ,
1902
+ AddrOps : * const i64 ,
1903
+ AddrOpsCount : c_uint ,
1891
1904
InsertBefore : ValueRef )
1892
1905
-> ValueRef ;
1893
1906
1894
1907
pub fn LLVMDIBuilderCreateEnumerator ( Builder : DIBuilderRef ,
1895
1908
Name : * const c_char ,
1896
1909
Val : c_ulonglong )
1897
- -> ValueRef ;
1910
+ -> DIEnumerator ;
1898
1911
1899
1912
pub fn LLVMDIBuilderCreateEnumerationType ( Builder : DIBuilderRef ,
1900
- Scope : ValueRef ,
1913
+ Scope : DIScope ,
1901
1914
Name : * const c_char ,
1902
- File : ValueRef ,
1915
+ File : DIFile ,
1903
1916
LineNumber : c_uint ,
1904
1917
SizeInBits : c_ulonglong ,
1905
1918
AlignInBits : c_ulonglong ,
1906
- Elements : ValueRef ,
1907
- ClassType : ValueRef )
1908
- -> ValueRef ;
1919
+ Elements : DIArray ,
1920
+ ClassType : DIType )
1921
+ -> DIType ;
1909
1922
1910
1923
pub fn LLVMDIBuilderCreateUnionType ( Builder : DIBuilderRef ,
1911
- Scope : ValueRef ,
1924
+ Scope : DIScope ,
1912
1925
Name : * const c_char ,
1913
- File : ValueRef ,
1926
+ File : DIFile ,
1914
1927
LineNumber : c_uint ,
1915
1928
SizeInBits : c_ulonglong ,
1916
1929
AlignInBits : c_ulonglong ,
1917
1930
Flags : c_uint ,
1918
- Elements : ValueRef ,
1931
+ Elements : DIArray ,
1919
1932
RunTimeLang : c_uint ,
1920
1933
UniqueId : * const c_char )
1921
- -> ValueRef ;
1934
+ -> DIType ;
1922
1935
1923
1936
pub fn LLVMSetUnnamedAddr ( GlobalVar : ValueRef , UnnamedAddr : Bool ) ;
1924
1937
1925
1938
pub fn LLVMDIBuilderCreateTemplateTypeParameter ( Builder : DIBuilderRef ,
1926
- Scope : ValueRef ,
1939
+ Scope : DIScope ,
1927
1940
Name : * const c_char ,
1928
- Ty : ValueRef ,
1929
- File : ValueRef ,
1941
+ Ty : DIType ,
1942
+ File : DIFile ,
1930
1943
LineNo : c_uint ,
1931
1944
ColumnNo : c_uint )
1932
- -> ValueRef ;
1933
-
1934
- pub fn LLVMDIBuilderCreateOpDeref ( IntType : TypeRef ) -> ValueRef ;
1945
+ -> DITemplateTypeParameter ;
1935
1946
1936
- pub fn LLVMDIBuilderCreateOpPlus ( IntType : TypeRef ) -> ValueRef ;
1947
+ pub fn LLVMDIBuilderCreateOpDeref ( ) -> i64 ;
1937
1948
1938
- pub fn LLVMDIBuilderCreateComplexVariable ( Builder : DIBuilderRef ,
1939
- Tag : c_uint ,
1940
- Scope : ValueRef ,
1941
- Name : * const c_char ,
1942
- File : ValueRef ,
1943
- LineNo : c_uint ,
1944
- Ty : ValueRef ,
1945
- AddrOps : * const ValueRef ,
1946
- AddrOpsCount : c_uint ,
1947
- ArgNo : c_uint )
1948
- -> ValueRef ;
1949
+ pub fn LLVMDIBuilderCreateOpPlus ( ) -> i64 ;
1949
1950
1950
1951
pub fn LLVMDIBuilderCreateNameSpace ( Builder : DIBuilderRef ,
1951
- Scope : ValueRef ,
1952
+ Scope : DIScope ,
1952
1953
Name : * const c_char ,
1953
- File : ValueRef ,
1954
+ File : DIFile ,
1954
1955
LineNo : c_uint )
1955
- -> ValueRef ;
1956
+ -> DINameSpace ;
1957
+
1958
+ pub fn LLVMDIBuilderCreateDebugLocation ( Context : ContextRef ,
1959
+ Line : c_uint ,
1960
+ Column : c_uint ,
1961
+ Scope : DIScope ,
1962
+ InlinedAt : MetadataRef )
1963
+ -> ValueRef ;
1956
1964
1957
- pub fn LLVMDICompositeTypeSetTypeArray ( CompositeType : ValueRef , TypeArray : ValueRef ) ;
1965
+ pub fn LLVMDICompositeTypeSetTypeArray ( Builder : DIBuilderRef ,
1966
+ CompositeType : DIType ,
1967
+ TypeArray : DIArray ) ;
1958
1968
pub fn LLVMWriteTypeToString ( Type : TypeRef , s : RustStringRef ) ;
1959
1969
pub fn LLVMWriteValueToString ( value_ref : ValueRef , s : RustStringRef ) ;
1960
1970
0 commit comments