compiler: consistently pass layout and alignment to createAlloc

This commit is contained in:
Nia Waldvogel
2026-07-08 13:03:00 -04:00
committed by Ron Evans
parent cf5bed8227
commit cd4e479dd5
11 changed files with 22 additions and 21 deletions
+3 -2
View File
@@ -508,8 +508,9 @@ func (b *builder) createDefer(instr *ssa.Defer) {
// This may be hit a variable number of times, so use a heap allocation.
size := b.targetData.TypeAllocSize(deferredCallType)
sizeValue := llvm.ConstInt(b.uintptrType, size, false)
nilPtr := llvm.ConstNull(b.dataPtrType)
alloca = b.createAlloc(sizeValue, nilPtr, 0, "defer.alloc.call")
layoutValue := b.createObjectLayout(deferredCallType, instr.Pos())
align := b.targetData.ABITypeAlignment(deferredCallType)
alloca = b.createAlloc(sizeValue, layoutValue, align, "defer.alloc.call")
}
if b.NeedsStackObjects {
b.trackPointer(alloca)