@@ -50,15 +50,15 @@ type DIFlags* {.size: sizeof(cint).} = enum
50
50
DIFlagNoReturn = 1 shl 20
51
51
DIFlagTypePassByValue = 1 shl 22
52
52
DIFlagTypePassByReference = 1 shl 23
53
- DIFlagEnumClass = 1 shl 24 # DIFlagFixedEnum = DIFlagEnumClass, ## Deprecated.
53
+ DIFlagEnumClass = 1 shl 24 # DIFlagFixedEnum = dIFlagEnumClass ## Deprecated.
54
54
DIFlagThunk = 1 shl 25
55
55
DIFlagNonTrivial = 1 shl 26
56
56
DIFlagBigEndian = 1 shl 27
57
57
DIFlagLittleEndian = 1 shl 28
58
- # DIFlagIndirectVirtualBase = (1 shl 2) or (1 shl 5),
59
- # DIFlagAccessibility = DIFlagPrivate or DIFlagProtected or DIFlagPublic, DIFlagPtrToMemberRep = DIFlagSingleInheritance or
60
- # DIFlagMultipleInheritance or
61
- # DIFlagVirtualInheritance
58
+ # DIFlagIndirectVirtualBase = (1 shl 2) or (1 shl 5)
59
+ # DIFlagAccessibility = dIFlagPrivate or dIFlagProtected or dIFlagPublic
60
+ # DIFlagPtrToMemberRep =
61
+ # dIFlagSingleInheritance or dIFlagMultipleInheritance or dIFlagVirtualInheritance
62
62
63
63
# #
64
64
# # Source languages known by DWARF.
@@ -111,7 +111,19 @@ type DWARFSourceLanguage* {.size: sizeof(cint).} = enum
111
111
DWARFSourceLanguageFortran18
112
112
DWARFSourceLanguageAda2005
113
113
DWARFSourceLanguageAda2012
114
- DWARFSourceLanguageMojo # # Vendor extensions:
114
+ DWARFSourceLanguageHIP
115
+ DWARFSourceLanguageAssembly
116
+ DWARFSourceLanguageC_sharp
117
+ DWARFSourceLanguageMojo
118
+ DWARFSourceLanguageGLSL
119
+ DWARFSourceLanguageGLSL_ES
120
+ DWARFSourceLanguageHLSL
121
+ DWARFSourceLanguageOpenCL_CPP
122
+ DWARFSourceLanguageCPP_forOpenCL
123
+ DWARFSourceLanguageSYCL
124
+ DWARFSourceLanguageRuby
125
+ DWARFSourceLanguageMove
126
+ DWARFSourceLanguageHylo # # Vendor extensions:
115
127
DWARFSourceLanguageMipsAssembler
116
128
DWARFSourceLanguageGOOGLE_RenderScript
117
129
DWARFSourceLanguageBORLAND_Delphi
@@ -1576,84 +1588,108 @@ proc dIBuilderCreateTempGlobalVariableFwdDecl*(
1576
1588
.}
1577
1589
1578
1590
# #
1579
- # # Insert a new llvm.dbg.declare intrinsic call before the given instruction.
1591
+ # # Only use in "new debug format" (LLVMIsNewDbgInfoFormat() is true).
1592
+ # # See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
1593
+ # #
1594
+ # # The debug format can be switched later after inserting the records using
1595
+ # # LLVMSetIsNewDbgInfoFormat, if needed for legacy or transitionary reasons.
1596
+ # #
1597
+ # # Insert a Declare DbgRecord before the given instruction.
1580
1598
# # \param Builder The DIBuilder.
1581
1599
# # \param Storage The storage of the variable to declare.
1582
1600
# # \param VarInfo The variable's debug info descriptor.
1583
1601
# # \param Expr A complex location expression for the variable.
1584
1602
# # \param DebugLoc Debug info location.
1585
- # # \param Instr Instruction acting as a location for the new intrinsic .
1603
+ # # \param Instr Instruction acting as a location for the new record .
1586
1604
# #
1587
1605
1588
- proc dIBuilderInsertDeclareBefore * (
1606
+ proc dIBuilderInsertDeclareRecordBefore * (
1589
1607
builder: DIBuilderRef ,
1590
1608
storage: ValueRef ,
1591
1609
varInfo: MetadataRef ,
1592
1610
expr: MetadataRef ,
1593
1611
debugLoc: MetadataRef ,
1594
1612
instr: ValueRef ,
1595
- ): ValueRef {.importc : " LLVMDIBuilderInsertDeclareBefore " , dynlib : LLVMLib .}
1613
+ ): DbgRecordRef {.importc : " LLVMDIBuilderInsertDeclareRecordBefore " , dynlib : LLVMLib .}
1596
1614
1597
1615
# #
1598
- # # Insert a new llvm.dbg.declare intrinsic call at the end of the given basic
1599
- # # block. If the basic block has a terminator instruction, the intrinsic is
1600
- # # inserted before that terminator instruction.
1616
+ # # Only use in "new debug format" (LLVMIsNewDbgInfoFormat() is true).
1617
+ # # See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
1618
+ # #
1619
+ # # The debug format can be switched later after inserting the records using
1620
+ # # LLVMSetIsNewDbgInfoFormat, if needed for legacy or transitionary reasons.
1621
+ # #
1622
+ # # Insert a Declare DbgRecord at the end of the given basic block. If the basic
1623
+ # # block has a terminator instruction, the record is inserted before that
1624
+ # # terminator instruction.
1601
1625
# # \param Builder The DIBuilder.
1602
1626
# # \param Storage The storage of the variable to declare.
1603
1627
# # \param VarInfo The variable's debug info descriptor.
1604
1628
# # \param Expr A complex location expression for the variable.
1605
1629
# # \param DebugLoc Debug info location.
1606
- # # \param Block Basic block acting as a location for the new intrinsic .
1630
+ # # \param Block Basic block acting as a location for the new record .
1607
1631
# #
1608
1632
1609
- proc dIBuilderInsertDeclareAtEnd * (
1633
+ proc dIBuilderInsertDeclareRecordAtEnd * (
1610
1634
builder: DIBuilderRef ,
1611
1635
storage: ValueRef ,
1612
1636
varInfo: MetadataRef ,
1613
1637
expr: MetadataRef ,
1614
1638
debugLoc: MetadataRef ,
1615
1639
`block`: BasicBlockRef ,
1616
- ): ValueRef {.importc : " LLVMDIBuilderInsertDeclareAtEnd " , dynlib : LLVMLib .}
1640
+ ): DbgRecordRef {.importc : " LLVMDIBuilderInsertDeclareRecordAtEnd " , dynlib : LLVMLib .}
1617
1641
1618
1642
# #
1619
- # # Insert a new llvm.dbg.value intrinsic call before the given instruction.
1643
+ # # Only use in "new debug format" (LLVMIsNewDbgInfoFormat() is true).
1644
+ # # See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
1645
+ # #
1646
+ # # The debug format can be switched later after inserting the records using
1647
+ # # LLVMSetIsNewDbgInfoFormat, if needed for legacy or transitionary reasons.
1648
+ # #
1649
+ # # Insert a new debug record before the given instruction.
1620
1650
# # \param Builder The DIBuilder.
1621
1651
# # \param Val The value of the variable.
1622
1652
# # \param VarInfo The variable's debug info descriptor.
1623
1653
# # \param Expr A complex location expression for the variable.
1624
1654
# # \param DebugLoc Debug info location.
1625
- # # \param Instr Instruction acting as a location for the new intrinsic .
1655
+ # # \param Instr Instruction acting as a location for the new record .
1626
1656
# #
1627
1657
1628
- proc dIBuilderInsertDbgValueBefore * (
1658
+ proc dIBuilderInsertDbgValueRecordBefore * (
1629
1659
builder: DIBuilderRef ,
1630
1660
val: ValueRef ,
1631
1661
varInfo: MetadataRef ,
1632
1662
expr: MetadataRef ,
1633
1663
debugLoc: MetadataRef ,
1634
1664
instr: ValueRef ,
1635
- ): ValueRef {.importc : " LLVMDIBuilderInsertDbgValueBefore " , dynlib : LLVMLib .}
1665
+ ): DbgRecordRef {.importc : " LLVMDIBuilderInsertDbgValueRecordBefore " , dynlib : LLVMLib .}
1636
1666
1637
1667
# #
1638
- # # Insert a new llvm.dbg.value intrinsic call at the end of the given basic
1639
- # # block. If the basic block has a terminator instruction, the intrinsic is
1640
- # # inserted before that terminator instruction.
1668
+ # # Only use in "new debug format" (LLVMIsNewDbgInfoFormat() is true).
1669
+ # # See https://llvm.org/docs/RemoveDIsDebugInfo.html#c-api-changes
1670
+ # #
1671
+ # # The debug format can be switched later after inserting the records using
1672
+ # # LLVMSetIsNewDbgInfoFormat, if needed for legacy or transitionary reasons.
1673
+ # #
1674
+ # # Insert a new debug record at the end of the given basic block. If the
1675
+ # # basic block has a terminator instruction, the record is inserted before
1676
+ # # that terminator instruction.
1641
1677
# # \param Builder The DIBuilder.
1642
1678
# # \param Val The value of the variable.
1643
1679
# # \param VarInfo The variable's debug info descriptor.
1644
1680
# # \param Expr A complex location expression for the variable.
1645
1681
# # \param DebugLoc Debug info location.
1646
- # # \param Block Basic block acting as a location for the new intrinsic .
1682
+ # # \param Block Basic block acting as a location for the new record .
1647
1683
# #
1648
1684
1649
- proc dIBuilderInsertDbgValueAtEnd * (
1685
+ proc dIBuilderInsertDbgValueRecordAtEnd * (
1650
1686
builder: DIBuilderRef ,
1651
1687
val: ValueRef ,
1652
1688
varInfo: MetadataRef ,
1653
1689
expr: MetadataRef ,
1654
1690
debugLoc: MetadataRef ,
1655
1691
`block`: BasicBlockRef ,
1656
- ): ValueRef {.importc : " LLVMDIBuilderInsertDbgValueAtEnd " , dynlib : LLVMLib .}
1692
+ ): DbgRecordRef {.importc : " LLVMDIBuilderInsertDbgValueRecordAtEnd " , dynlib : LLVMLib .}
1657
1693
1658
1694
# #
1659
1695
# # Create a new descriptor for a local auto variable.
0 commit comments