Esempio n. 1
0
        public LLVMMetadataRef CreateCompileUnit(LLVMDWARFSourceLanguage SourceLanguage, LLVMMetadataRef FileMetadata, ReadOnlySpan <char> Producer, int IsOptimized, ReadOnlySpan <char> Flags, uint RuntimeVersion,
                                                 ReadOnlySpan <char> SplitName, LLVMDWARFEmissionKind DwarfEmissionKind, uint DWOld, int SplitDebugInlining, int DebugInfoForProfiling)
        {
            using var marshaledProducer       = new MarshaledString(Producer);
            using var marshaledFlags          = new MarshaledString(Flags);
            using var marshaledSplitNameFlags = new MarshaledString(SplitName);

            return(LLVM.DIBuilderCreateCompileUnit(this, SourceLanguage, FileMetadata, marshaledProducer, (UIntPtr)marshaledProducer.Length, IsOptimized, marshaledFlags, (UIntPtr)marshaledFlags.Length,
                                                   RuntimeVersion, marshaledSplitNameFlags, (UIntPtr)marshaledSplitNameFlags.Length, DwarfEmissionKind, DWOld, SplitDebugInlining, DebugInfoForProfiling));
        }
Esempio n. 2
0
 public Metadata CreateCompileUnit(LLVMDWARFSourceLanguage lang, Metadata fileRef, string producer,
                                   bool isOptimized, string flags, uint runtimeVer, string splitName, LLVMDWARFEmissionKind kind, uint dwoId,
                                   bool splitDebugInlining, bool debugInfoForProfiling) =>
 _builder.CreateCompileUnit(lang, fileRef, producer, isOptimized ? 1 : 0, flags, runtimeVer, splitName, kind,
                            dwoId, splitDebugInlining ? 1 : 0, debugInfoForProfiling ? 1 : 0);
Esempio n. 3
0
 public LLVMMetadataRef CreateCompileUnit(LLVMDWARFSourceLanguage SourceLanguage, LLVMMetadataRef FileMetadata, string Producer, int IsOptimized, string Flags, uint RuntimeVersion,
                                          string SplitName, LLVMDWARFEmissionKind DwarfEmissionKind, uint DWOld, int SplitDebugInlining, int DebugInfoForProfiling) => CreateCompileUnit(SourceLanguage, FileMetadata, Producer.AsSpan(), IsOptimized, Flags.AsSpan(), RuntimeVersion, SplitName.AsSpan(), DwarfEmissionKind, DWOld, SplitDebugInlining, DebugInfoForProfiling);
Esempio n. 4
0
 public static extern LLVMMetadataRef LLVMDIBuilderCreateCompileUnit(LLVMDIBuilderRef @Builder, LLVMDWARFSourceLanguage @Lang, LLVMMetadataRef @FileRef, [MarshalAs(UnmanagedType.LPStr)] string @Producer, size_t @ProducerLen, LLVMBool @isOptimized, [MarshalAs(UnmanagedType.LPStr)] string @Flags, size_t @FlagsLen, uint @RuntimeVer, [MarshalAs(UnmanagedType.LPStr)] string @SplitName, size_t @SplitNameLen, LLVMDWARFEmissionKind @Kind, uint @DWOId, LLVMBool @SplitDebugInlining, LLVMBool @DebugInfoForProfiling);