Skip to content

Commit 7695d89

Browse files
committed
[llgo] Fix debug to use latest DIBuilder bindings
Two recent commits to the LLVM Go bindings caused breaking changes to llgo: 1. r284707 - Moving the `AlignInBits` field from `DIBasicType` to `DIAutoVariable`. 2. r284482 - The `AlignInBits` fields going from `uint64` to `uint32`. This commit updates llgo accordingly. llvm-svn: 288768
1 parent b486c49 commit 7695d89

File tree

1 file changed

+4
-6
lines changed

1 file changed

+4
-6
lines changed

llgo/debug/debug.go

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -250,14 +250,12 @@ func (d *DIBuilder) descriptorBasic(t *types.Basic, name string) llvm.Metadata {
250250
return d.builder.CreateBasicType(llvm.DIBasicType{
251251
Name: name,
252252
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
253-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
254253
Encoding: llvm.DW_ATE_unsigned,
255254
})
256255
default:
257256
bt := llvm.DIBasicType{
258257
Name: t.String(),
259258
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
260-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
261259
}
262260
switch bi := t.Info(); {
263261
case bi&types.IsBoolean != 0:
@@ -283,7 +281,7 @@ func (d *DIBuilder) descriptorPointer(t *types.Pointer) llvm.Metadata {
283281
return d.builder.CreatePointerType(llvm.DIPointerType{
284282
Pointee: d.DIType(t.Elem()),
285283
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
286-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
284+
AlignInBits: uint32(d.sizes.Alignof(t) * 8),
287285
})
288286
}
289287

@@ -301,15 +299,15 @@ func (d *DIBuilder) descriptorStruct(t *types.Struct, name string) llvm.Metadata
301299
Name: f.Name(),
302300
Type: d.DIType(t),
303301
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
304-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
302+
AlignInBits: uint32(d.sizes.Alignof(t) * 8),
305303
OffsetInBits: uint64(offsets[i] * 8),
306304
})
307305
}
308306
// TODO(axw) file/line where struct is defined.
309307
return d.builder.CreateStructType(d.cu, llvm.DIStructType{
310308
Name: name,
311309
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
312-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
310+
AlignInBits: uint32(d.sizes.Alignof(t) * 8),
313311
Elements: members,
314312
})
315313
}
@@ -345,7 +343,7 @@ func (d *DIBuilder) descriptorNamed(t *types.Named) llvm.Metadata {
345343
func (d *DIBuilder) descriptorArray(t *types.Array, name string) llvm.Metadata {
346344
return d.builder.CreateArrayType(llvm.DIArrayType{
347345
SizeInBits: uint64(d.sizes.Sizeof(t) * 8),
348-
AlignInBits: uint64(d.sizes.Alignof(t) * 8),
346+
AlignInBits: uint32(d.sizes.Alignof(t) * 8),
349347
ElementType: d.DIType(t.Elem()),
350348
Subscripts: []llvm.DISubrange{{Count: t.Len()}},
351349
})

0 commit comments

Comments
 (0)