@@ -106,7 +106,8 @@ void llvm::get_thread_name(SmallVectorImpl<char> &Name) {
106106 Name.clear ();
107107}
108108
109- static HMODULE LoadSystemModuleSecure (LPCWSTR lpModuleName) {
109+ namespace llvm ::sys::windows {
110+ HMODULE loadSystemModuleSecure (LPCWSTR lpModuleName) {
110111 // Ensure we load indeed a module from system32 path.
111112 // As per GetModuleHandle documentation:
112113 // "If lpModuleName does not include a path and there is more than one loaded
@@ -126,26 +127,26 @@ static HMODULE LoadSystemModuleSecure(LPCWSTR lpModuleName) {
126127 } while (Size > Buf.size ());
127128
128129 Buf.truncate (Size);
129- Buf.push_back (TEXT ( ' \\ ' ) );
130+ Buf.push_back (L ' \\ ' );
130131 Buf.append (lpModuleName, lpModuleName + std::wcslen (lpModuleName));
131132 Buf.push_back (0 );
132133
133134 return ::GetModuleHandleW (Buf.data ());
134135}
136+ } // namespace llvm::sys::windows
135137
136138SetThreadPriorityResult llvm::set_thread_priority (ThreadPriority Priority) {
137- HMODULE kernelMod = LoadSystemModuleSecure ( TEXT ( " kernel32.dll" ) );
138- if (kernelMod ) {
139+ HMODULE kernelM = llvm::sys::windows::loadSystemModuleSecure ( L " kernel32.dll" );
140+ if (kernelM ) {
139141 // SetThreadInformation is only available on Windows 8 and later. Since we
140142 // still support compilation on Windows 7, we load the function dynamically.
141143 typedef BOOL (WINAPI * SetThreadInformation_t)(
142144 HANDLE hThread, THREAD_INFORMATION_CLASS ThreadInformationClass,
143145 _In_reads_bytes_ (ThreadInformationSize) PVOID ThreadInformation,
144146 ULONG ThreadInformationSize);
145147 static const auto pfnSetThreadInformation =
146- (SetThreadInformation_t)::GetProcAddress (kernelMod ,
148+ (SetThreadInformation_t)::GetProcAddress (kernelM ,
147149 " SetThreadInformation" );
148-
149150 if (pfnSetThreadInformation) {
150151 auto setThreadInformation = [](ULONG ControlMaskAndStateMask) {
151152 THREAD_POWER_THROTTLING_STATE state{};
0 commit comments