From db3546a9adfd216c5b3ec4ada9a0f5a723600a69 Mon Sep 17 00:00:00 2001 From: ZhouGuangyuan Date: Fri, 27 Feb 2026 00:49:34 +0800 Subject: [PATCH] Value: add DLLStorageClass accessors --- ir.go | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/ir.go b/ir.go index 37a1034..17e10a5 100644 --- a/ir.go +++ b/ir.go @@ -71,6 +71,7 @@ type ( AtomicOrdering C.LLVMAtomicOrdering TypeKind C.LLVMTypeKind Linkage C.LLVMLinkage + DLLStorageClass C.LLVMDLLStorageClass Visibility C.LLVMVisibility CallConv C.LLVMCallConv ComdatSelectionKind C.LLVMComdatSelectionKind @@ -252,6 +253,16 @@ const ( TokenTypeKind TypeKind = C.LLVMTokenTypeKind ) +//------------------------------------------------------------------------- +// llvm.DLLStorageClass +//------------------------------------------------------------------------- + +const ( + DefaultStorageClass DLLStorageClass = C.LLVMDefaultStorageClass + DLLImportStorageClass DLLStorageClass = C.LLVMDLLImportStorageClass + DLLExportStorageClass DLLStorageClass = C.LLVMDLLExportStorageClass +) + //------------------------------------------------------------------------- // llvm.Linkage //------------------------------------------------------------------------- @@ -975,7 +986,13 @@ func (v Value) GlobalParent() (m Module) { m.C = C.LLVMGetGlobalParent(v.C); ret func (v Value) IsDeclaration() bool { return C.LLVMIsDeclaration(v.C) != 0 } func (v Value) Linkage() Linkage { return Linkage(C.LLVMGetLinkage(v.C)) } func (v Value) SetLinkage(l Linkage) { C.LLVMSetLinkage(v.C, C.LLVMLinkage(l)) } -func (v Value) Section() string { return C.GoString(C.LLVMGetSection(v.C)) } +func (v Value) DLLStorageClass() DLLStorageClass { + return DLLStorageClass(C.LLVMGetDLLStorageClass(v.C)) +} +func (v Value) SetDLLStorageClass(c DLLStorageClass) { + C.LLVMSetDLLStorageClass(v.C, C.LLVMDLLStorageClass(c)) +} +func (v Value) Section() string { return C.GoString(C.LLVMGetSection(v.C)) } func (v Value) SetSection(str string) { cstr := C.CString(str) defer C.free(unsafe.Pointer(cstr))