[PATCH] D50832: [C-API][DIBuilder] Added DIFlags in LLVMDIBuilderCreateBasicType

whitequark via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Sun Aug 19 16:40:34 PDT 2018


This revision was not accepted when it landed; it landed in state "Needs Review".
This revision was automatically updated to reflect the committed changes.
Closed by commit rL340146: [C-API][DIBuilder] Added DIFlags in LLVMDIBuilderCreateBasicType (authored by whitequark, committed by ).
Herald added a subscriber: llvm-commits.

Changed prior to commit:
  https://reviews.llvm.org/D50832?vs=161173&id=161409#toc

Repository:
  rL LLVM

https://reviews.llvm.org/D50832

Files:
  llvm/trunk/bindings/go/llvm/dibuilder.go
  llvm/trunk/include/llvm-c/DebugInfo.h
  llvm/trunk/lib/IR/DebugInfo.cpp
  llvm/trunk/tools/llvm-c-test/debuginfo.c


Index: llvm/trunk/include/llvm-c/DebugInfo.h
===================================================================
--- llvm/trunk/include/llvm-c/DebugInfo.h
+++ llvm/trunk/include/llvm-c/DebugInfo.h
@@ -57,6 +57,8 @@
   LLVMDIFlagFixedEnum = 1 << 24,
   LLVMDIFlagThunk = 1 << 25,
   LLVMDIFlagTrivial = 1 << 26,
+  LLVMDIFlagBigEndian = 1 << 27,
+  LLVMDIFlagLittleEndian = 1 << 28,
   LLVMDIFlagIndirectVirtualBase = (1 << 2) | (1 << 5),
   LLVMDIFlagAccessibility = LLVMDIFlagPrivate | LLVMDIFlagProtected |
                             LLVMDIFlagPublic,
@@ -531,11 +533,13 @@
  * \param NameLen     Length of type name.
  * \param SizeInBits  Size of the type.
  * \param Encoding    DWARF encoding code, e.g. \c LLVMDWARFTypeEncoding_float.
+ * \param Flags       Flags to encode optional attribute like endianity
  */
 LLVMMetadataRef
 LLVMDIBuilderCreateBasicType(LLVMDIBuilderRef Builder, const char *Name,
                              size_t NameLen, uint64_t SizeInBits,
-                             LLVMDWARFTypeEncoding Encoding);
+                             LLVMDWARFTypeEncoding Encoding,
+                             LLVMDIFlags Flags);
 
 /**
  * Create debugging information entry for a pointer.
Index: llvm/trunk/lib/IR/DebugInfo.cpp
===================================================================
--- llvm/trunk/lib/IR/DebugInfo.cpp
+++ llvm/trunk/lib/IR/DebugInfo.cpp
@@ -948,9 +948,11 @@
 LLVMMetadataRef
 LLVMDIBuilderCreateBasicType(LLVMDIBuilderRef Builder, const char *Name,
                              size_t NameLen, uint64_t SizeInBits,
-                             LLVMDWARFTypeEncoding Encoding) {
+                             LLVMDWARFTypeEncoding Encoding,
+                             LLVMDIFlags Flags) {
   return wrap(unwrap(Builder)->createBasicType({Name, NameLen},
-                                               SizeInBits, Encoding));
+                                               SizeInBits, Encoding,
+                                               map_from_llvmDIFlags(Flags)));
 }
 
 LLVMMetadataRef LLVMDIBuilderCreatePointerType(
Index: llvm/trunk/tools/llvm-c-test/debuginfo.c
===================================================================
--- llvm/trunk/tools/llvm-c-test/debuginfo.c
+++ llvm/trunk/tools/llvm-c-test/debuginfo.c
@@ -68,7 +68,7 @@
                                               NULL, 0);
 
   LLVMMetadataRef Int64Ty =
-    LLVMDIBuilderCreateBasicType(DIB, "Int64", 5, 64, 0);
+    LLVMDIBuilderCreateBasicType(DIB, "Int64", 5, 64, 0, LLVMDIFlagZero);
   LLVMMetadataRef Int64TypeDef =
     LLVMDIBuilderCreateTypedef(DIB, Int64Ty, "int64_t", 7, File, 42, File);
 
Index: llvm/trunk/bindings/go/llvm/dibuilder.go
===================================================================
--- llvm/trunk/bindings/go/llvm/dibuilder.go
+++ llvm/trunk/bindings/go/llvm/dibuilder.go
@@ -299,6 +299,7 @@
 		C.size_t(len(t.Name)),
 		C.uint64_t(t.SizeInBits),
 		C.unsigned(t.Encoding),
+		C.LLVMDIFlags(0),
 	)
 	return Metadata{C: result}
 }


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D50832.161409.patch
Type: text/x-patch
Size: 3015 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20180819/5ee2968d/attachment.bin>


More information about the llvm-commits mailing list