[llvm-dev] [llvm-bugs] clang-cl randomly does not finish when invoked with showIncludes command line switch when building EPICS

Reid Kleckner via llvm-dev llvm-dev at lists.llvm.org
Wed Apr 27 11:02:58 PDT 2016


>From the stack traces, it sounds like clang-cl got blocked writing to
stdout because msvc_depends.pl wasn't reading from the pipe. The first
stack trace shows the driver clang-cl process waiting on the child -cc1
invocation, and the second one shows a blocking write syscall. I don't
think there's any action for us to take here.

If your build system uses configure and make, you might have better luck
using the clang driver instead. It can also generate MSVC compatible object
files.

On Tue, Apr 26, 2016 at 9:13 AM, Hill, Jeff via llvm-bugs <
llvm-bugs at lists.llvm.org> wrote:

> Hi,
>
> I decided to try clang-cl with our EPICS code base on windows, but wasn't
> successful due to random hangs in clang-cl showIncludes occurring during
> the auto-generation of gnu make dependency include files phase in our build
> system. I have to control C the build leaving various clang zombie detritus
> processes still running. I tried to grab some stack traces, see below, but
> unfortunately there are no symbols with them. I also attached some of the
> log from our build that shows what command line switches were used with
> clang when it is invoked by our pearl dependencies generation script.
>
> Thanks for having a look. Unfortunately I don't have time to look into
> clang further on windows at this time.
>
> Jeff Hill
>
> C:\hill\epicsInBazaar\newFieldType-3-merge>clang-cl -v
> clang version 3.8.0 (branches/release_38)
> Target: i686-pc-windows-msvc
> Thread model: posix
> InstalledDir: C:\Program Files (x86)\LLVM\bin
>
> >       ntdll.dll!_NtWaitForSingleObject at 12 ()  Unknown
>         KernelBase.dll!_WaitForSingleObjectEx at 12 ()     Unknown
>         kernel32.dll!_WaitForSingleObjectExImplementation at 12 () Unknown
>         kernel32.dll!_WaitForSingleObject at 8 ()  Unknown
>         clang-cl.exe!0164509f() Unknown
>         [Frames below may be incorrect and/or missing, no symbols loaded
> for clang-cl.exe]
>         clang-cl.exe!01643959() Unknown
>         clang-cl.exe!01ba927b() Unknown
>         clang-cl.exe!01ad6f87() Unknown
>         clang-cl.exe!01ad732d() Unknown
>         clang-cl.exe!01acd3a2() Unknown
>         clang-cl.exe!00363c93() Unknown
>         ntdll.dll!_bsearch ()   Unknown
>         gdi32.dll!_NtGdiGetStockObject at 4 ()     Unknown
>         ntdll.dll!_bsearch ()   Unknown
>         ntdll.dll!_bsearch ()   Unknown
>
> >       ntdll.dll!_NtWriteFile at 36 ()    Unknown
>         KernelBase.dll!_WriteFile at 20 () Unknown
>         kernel32.dll!_WriteFileImplementation at 20 ()     Unknown
>         clang-cl.exe!02fb0abc() Unknown
>         [Frames below may be incorrect and/or missing, no symbols loaded
> for clang-cl.exe]
>         ntdll.dll!_NtWriteFile at 36 ()    Unknown
>         KernelBase.dll!_WriteFile at 20 () Unknown
>         kernel32.dll!_WriteFileImplementation at 20 ()     Unknown
>
> perl C:/hill/epicsInBazaar/newFieldType-3-merge/bin/win32-x86/
> msvc_depends.pl
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer/timer.cpp
> clang-cl               -EHsc -GR -nologo -D__STDC__=0
> -D_CRT_SECURE_NO_DEPRECATE  -
> D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS   -Ox    -W3 -w44355
>      -MD -DEPICS_BUILD_DLL -DEPICS_CALL_DLL -TP  -I. -I../O.Common
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsInBazaa
> r/newFieldType-3-merge/src/libCom/osi/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/compiler/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsInBazaar/newFieldTy
> pe-3-merge/src/libCom/osi/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/os/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/bucketLib -IC:
> /hill/epicsInBazaar/newFieldType-3-merge/src/libCom/ring
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/calc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cvtFast
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/l
> ibCom/cppStd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cxxTemplates
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/dbmf
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/ellLib
> -IC:/hill/epicsInBazaar/ne
> wFieldType-3-merge/src/libCom/env
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/error
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/fdmgr
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/freeList -IC:/hill
> /epicsInBazaar/newFieldType-3-merge/src/libCom/gpHash
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh/Lua
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/l
> ibCom/log -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/macLib
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/misc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi
> -IC:/hill/epicsInBazaar/newFieldType-3
> -merge/src/libCom/taskwd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/yajl
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/BaseString
> -IC:/hill/epicsIn
> Bazaar/newFieldType-3-merge/src/libCom/pointer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3-merg
> e/include/epics -IC:/hill/epicsInBazaar/newFieldType-3-merge/include
>   > timer.d
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer/timer.cpp
> perl C:/hill/epicsInBazaar/newFieldType-3-merge/bin/win32-x86/
> msvc_depends.pl
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer/epicsTimer.cpp
> clang-cl               -EHsc -GR -nologo -D__STDC__=0
> -D_CRT_SECURE_NO_DEPRECA
> TE  -D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS   -Ox    -W3
> -w44355       -MD -DEPICS_BUILD_DLL -DEPICS_CALL_DLL -TP  -I. -I../O.Common
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsIn
> Bazaar/newFieldType-3-merge/src/libCom/osi/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/compiler/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsInBazaar/newFi
> eldType-3-merge/src/libCom/osi/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/os/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/bucketLib
>  -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/ring
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/calc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cvtFast
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/
> src/libCom/cppStd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cxxTemplates
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/dbmf
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/ellLib
> -IC:/hill/epicsInBaza
> ar/newFieldType-3-merge/src/libCom/env
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/error
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/fdmgr
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/freeList -IC:
> /hill/epicsInBazaar/newFieldType-3-merge/src/libCom/gpHash
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh/Lua
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/
> src/libCom/log
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/macLib
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/misc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi
> -IC:/hill/epicsInBazaar/newFieldT
> ype-3-merge/src/libCom/taskwd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/yajl
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/BaseString
> -IC:/hill/ep
> icsInBazaar/newFieldType-3-merge/src/libCom/pointer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3
> -merge/include/epics -IC:/hill/epicsInBazaar/newFieldType-3-merge/include
>       > epicsTimer.d
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer/epicsTimer.cpp
> perl C:/hill/epicsInBazaar/newFieldType-3-merge/bin/win32-x86/
> msvc_depends.pl
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/taskwd/taskwd.c
> clang-cl               -EHsc -GR -nologo -D__STDC__=0
> -D_CRT_SECURE_NO_DEPRECATE  -
> D_CRT_NONSTDC_NO_DEPRECATE -D_SCL_SECURE_NO_WARNINGS   -Ox    -W3 -w44355
>      -MD -DEPICS_BUILD_DLL -DEPICS_CALL_DLL   -I. -I../O.Common
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsInBazaar/n
> ewFieldType-3-merge/src/libCom/osi/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/compiler/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/O.win32-x86
> -IC:/hill/epicsInBazaar/newFieldType-
> 3-merge/src/libCom/osi/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi/os/default
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/bucketLib -IC:/hi
> ll/epicsInBazaar/newFieldType-3-merge/src/libCom/ring
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/calc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cvtFast
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libC
> om/cppStd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/cxxTemplates
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/dbmf
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/ellLib
> -IC:/hill/epicsInBazaar/newFi
> eldType-3-merge/src/libCom/env
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/error
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/fdmgr
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/freeList
> -IC:/hill/ep
> icsInBazaar/newFieldType-3-merge/src/libCom/gpHash
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/iocsh/Lua
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libC
> om/log -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/macLib
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/misc
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/osi
> -IC:/hill/epicsInBazaar/newFieldType-3-me
> rge/src/libCom/taskwd
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/timer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/yajl
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/BaseString
> -IC:/hill/epicsInBaz
> aar/newFieldType-3-merge/src/libCom/pointer
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/compiler/clang
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/include/epics/os/WIN32
> -IC:/hill/epicsInBazaar/newFieldType-3-merge/i
> nclude/epics -IC:/hill/epicsInBazaar/newFieldType-3-merge/include        >
> taskwd.d
> C:/hill/epicsInBazaar/newFieldType-3-merge/src/libCom/taskwd/taskwd.c
> Terminating on signal SIGINT(2)
> mingw32-make[3]: *** Deleting file 'taskwd.d'
> Terminate batch job (Y/N)? mingw32-make[3]: unlink: taskwd.d: Permission
> denied
>
> ../../configure/RULES_ARCHS:65: recipe for target 'install.win32-x86'
> failed
> mingw32-make[2]: *** [install.win32-x86] Error 130
> ../configure/RULES_DIRS:72: recipe for target 'libCom.install' failed
> mingw32-make[1]: *** [libCom.install] Error 130
> configure/RULES_DIRS:72: recipe for target 'src.install' failed
> mingw32-make: *** [src.install] Error 130
> _______________________________________________
> llvm-bugs mailing list
> llvm-bugs at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20160427/8a95e936/attachment-0001.html>


More information about the llvm-dev mailing list