diff options
Diffstat (limited to 'src/zig_llvm.cpp')
| -rw-r--r-- | src/zig_llvm.cpp | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/zig_llvm.cpp b/src/zig_llvm.cpp index b5edb336a5..7134df6a9c 100644 --- a/src/zig_llvm.cpp +++ b/src/zig_llvm.cpp @@ -594,8 +594,16 @@ ZigLLVMDIType *ZigLLVMCreateDebugArrayType(ZigLLVMDIBuilder *dibuilder, uint64_t return reinterpret_cast<ZigLLVMDIType*>(di_type); } -ZigLLVMDIEnumerator *ZigLLVMCreateDebugEnumerator(ZigLLVMDIBuilder *dibuilder, const char *name, int64_t val) { - DIEnumerator *di_enumerator = reinterpret_cast<DIBuilder*>(dibuilder)->createEnumerator(name, val); +ZigLLVMDIEnumerator *ZigLLVMCreateDebugEnumerator(ZigLLVMDIBuilder *dibuilder, const char *name, uint64_t val, bool isUnsigned) { + DIEnumerator *di_enumerator = reinterpret_cast<DIBuilder*>(dibuilder)->createEnumerator(name, val, isUnsigned); + return reinterpret_cast<ZigLLVMDIEnumerator*>(di_enumerator); +} + +ZigLLVMDIEnumerator *ZigLLVMCreateDebugEnumeratorOfArbitraryPrecision(ZigLLVMDIBuilder *dibuilder, + const char *name, unsigned NumWords, const uint64_t Words[], unsigned int bits, bool isUnsigned) +{ + DIEnumerator *di_enumerator = reinterpret_cast<DIBuilder*>(dibuilder)->createEnumerator(name, + APSInt(APInt(bits, makeArrayRef(Words, NumWords)), isUnsigned)); return reinterpret_cast<ZigLLVMDIEnumerator*>(di_enumerator); } |
