Skip to content

Commit e539f35

Browse files
committed
Use LLVMDIBuilderCreatePointerType
1 parent 0704914 commit e539f35

File tree

3 files changed

+15
-24
lines changed

3 files changed

+15
-24
lines changed

compiler/rustc_codegen_llvm/src/debuginfo/metadata.rs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -180,13 +180,13 @@ fn build_pointer_or_reference_di_node<'ll, 'tcx>(
180180
);
181181

182182
let di_node = unsafe {
183-
llvm::LLVMRustDIBuilderCreatePointerType(
183+
llvm::LLVMDIBuilderCreatePointerType(
184184
DIB(cx),
185185
pointee_type_di_node,
186186
data_layout.pointer_size.bits(),
187187
data_layout.pointer_align.abi.bits() as u32,
188188
0, // Ignore DWARF address space.
189-
ptr_type_debuginfo_name.as_c_char_ptr(),
189+
ptr_type_debuginfo_name.as_ptr(),
190190
ptr_type_debuginfo_name.len(),
191191
)
192192
};
@@ -238,7 +238,7 @@ fn build_pointer_or_reference_di_node<'ll, 'tcx>(
238238
// The data pointer type is a regular, thin pointer, regardless of whether this
239239
// is a slice or a trait object.
240240
let data_ptr_type_di_node = unsafe {
241-
llvm::LLVMRustDIBuilderCreatePointerType(
241+
llvm::LLVMDIBuilderCreatePointerType(
242242
DIB(cx),
243243
pointee_type_di_node,
244244
addr_field.size.bits(),
@@ -343,13 +343,13 @@ fn build_subroutine_type_di_node<'ll, 'tcx>(
343343
_ => unreachable!(),
344344
};
345345
let di_node = unsafe {
346-
llvm::LLVMRustDIBuilderCreatePointerType(
346+
llvm::LLVMDIBuilderCreatePointerType(
347347
DIB(cx),
348348
fn_di_node,
349349
size,
350350
align,
351351
0, // Ignore DWARF address space.
352-
name.as_c_char_ptr(),
352+
name.as_ptr(),
353353
name.len(),
354354
)
355355
};

compiler/rustc_codegen_llvm/src/llvm/ffi.rs

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1703,6 +1703,16 @@ unsafe extern "C" {
17031703
Encoding: c_uint, // `LLVMDWARFTypeEncoding`
17041704
Flags: DIFlags,
17051705
) -> &'ll Metadata;
1706+
1707+
pub(crate) fn LLVMDIBuilderCreatePointerType<'ll>(
1708+
Builder: &DIBuilder<'ll>,
1709+
PointeeTy: &'ll Metadata,
1710+
SizeInBits: u64,
1711+
AlignInBits: u32,
1712+
AddressSpace: c_uint,
1713+
Name: *const c_uchar,
1714+
NameLen: size_t,
1715+
) -> &'ll Metadata;
17061716
}
17071717

17081718
#[link(name = "llvm-wrapper", kind = "static")]
@@ -2045,16 +2055,6 @@ unsafe extern "C" {
20452055
Scope: Option<&'a DIScope>,
20462056
) -> &'a DIDerivedType;
20472057

2048-
pub fn LLVMRustDIBuilderCreatePointerType<'a>(
2049-
Builder: &DIBuilder<'a>,
2050-
PointeeTy: &'a DIType,
2051-
SizeInBits: u64,
2052-
AlignInBits: u32,
2053-
AddressSpace: c_uint,
2054-
Name: *const c_char,
2055-
NameLen: size_t,
2056-
) -> &'a DIDerivedType;
2057-
20582058
pub fn LLVMRustDIBuilderCreateStructType<'a>(
20592059
Builder: &DIBuilder<'a>,
20602060
Scope: Option<&'a DIDescriptor>,

compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp

Lines changed: 0 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -977,15 +977,6 @@ LLVMRustDIBuilderCreateTypedef(LLVMRustDIBuilderRef Builder,
977977
LineNo, unwrapDIPtr<DIScope>(Scope)));
978978
}
979979

980-
extern "C" LLVMMetadataRef LLVMRustDIBuilderCreatePointerType(
981-
LLVMRustDIBuilderRef Builder, LLVMMetadataRef PointeeTy,
982-
uint64_t SizeInBits, uint32_t AlignInBits, unsigned AddressSpace,
983-
const char *Name, size_t NameLen) {
984-
return wrap(Builder->createPointerType(unwrapDI<DIType>(PointeeTy),
985-
SizeInBits, AlignInBits, AddressSpace,
986-
StringRef(Name, NameLen)));
987-
}
988-
989980
extern "C" LLVMMetadataRef LLVMRustDIBuilderCreateStructType(
990981
LLVMRustDIBuilderRef Builder, LLVMMetadataRef Scope, const char *Name,
991982
size_t NameLen, LLVMMetadataRef File, unsigned LineNumber,

0 commit comments

Comments
 (0)