You've already forked linux-packaging-mono
Imported Upstream version 5.18.0.205
Former-commit-id: 7f59f7e792705db773f1caecdaa823092f4e2927
This commit is contained in:
parent
5cd5df71cc
commit
8e12397d70
37
external/llvm/lib/Support/Windows/COM.inc
vendored
Normal file
37
external/llvm/lib/Support/Windows/COM.inc
vendored
Normal file
@ -0,0 +1,37 @@
|
||||
//==- llvm/Support/Windows/COM.inc - Windows COM Implementation -*- C++ -*-===//
|
||||
//
|
||||
// The LLVM Compiler Infrastructure
|
||||
//
|
||||
// This file is distributed under the University of Illinois Open Source
|
||||
// License. See LICENSE.TXT for details.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
//
|
||||
// This file implements the Windows portion of COM support.
|
||||
//
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
//===----------------------------------------------------------------------===//
|
||||
//=== WARNING: Implementation here must contain only Windows code.
|
||||
//===----------------------------------------------------------------------===//
|
||||
|
||||
#include <objbase.h>
|
||||
|
||||
namespace llvm {
|
||||
namespace sys {
|
||||
|
||||
InitializeCOMRAII::InitializeCOMRAII(COMThreadingMode Threading,
|
||||
bool SpeedOverMemory) {
|
||||
DWORD Coinit = 0;
|
||||
if (Threading == COMThreadingMode::SingleThreaded)
|
||||
Coinit |= COINIT_APARTMENTTHREADED;
|
||||
else
|
||||
Coinit |= COINIT_MULTITHREADED;
|
||||
if (SpeedOverMemory)
|
||||
Coinit |= COINIT_SPEED_OVER_MEMORY;
|
||||
::CoInitializeEx(nullptr, Coinit);
|
||||
}
|
||||
|
||||
InitializeCOMRAII::~InitializeCOMRAII() { ::CoUninitialize(); }
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user