r246534 - [modules] When emitting line tables, only emit filenames that are actually referenced by the entries that we emit.
Yaron Keren via cfe-commits
cfe-commits at lists.llvm.org
Tue Sep 1 01:08:21 PDT 2015
Hi Richard,
Since yesterday I see several clang test failures which *may* be related to
the series of patches of modules you comitted. These are:
Clang :: Modules/cxx-templates.cpp
Clang :: Modules/submodules-merge-defs.cpp
Clang :: PCH/cxx-key-functions.cpp
Clang :: PCH/cxx-templates.cpp
(failing as of r246534)
You can see these failing on clang-x64-ninja-win7 bot but you did not get
e-mail since it was masked by other test failing before them:
http://lab.llvm.org:8011/builders/clang-x64-ninja-win7/builds/4522
or on Takumi bot:
http://bb.pgr.jp/builders/ninja-clang-i686-msc18-R/builds/2923
The bots do not seem to printout details, so here is debug stack dump with
symbols for the three tests failing. The fourth one prints huge AST.
Could you have a look?
FAIL: Clang :: Modules/cxx-templates.cpp (4128 of 23311)
******************** TEST 'Clang :: Modules/cxx-templates.cpp' FAILED
********************
Script:
--
rm -rf
C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
not C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1
-internal-isystem C:\llvm-clean\msvc\RELWITHDEB
INFO\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x objective-c++
-fmodules -fimplicit-module-maps -fno-modules-error-recov
ery
-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
-I C:\
llvm-clean\tools\clang\test\Modules/Inputs
C:\llvm-clean\tools\clang\test\Modules\cxx-templates.cpp -std=c++11 -ast
-dump-lookups | C:/llvm-clean/msvc/RELWITHDEBINFO/bin\FileCheck.EXE
C:\llvm-clean\tools\clang\test\Modul
es\cxx-templates.cpp --check-prefix=CHECK-GLOBAL
not C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1
-internal-isystem C:\llvm-clean\msvc\RELWITHDEB
INFO\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x objective-c++
-fmodules -fimplicit-module-maps -fno-modules-error-recov
ery
-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
-I C:\
llvm-clean\tools\clang\test\Modules/Inputs
C:\llvm-clean\tools\clang\test\Modules\cxx-templates.cpp -std=c++11 -ast
-dump-lookups -ast-dump-filter N |
C:/llvm-clean/msvc/RELWITHDEBINFO/bin\FileCheck.EXE C:\llvm-clean\too
ls\clang\test\Modules\cxx-templates.cpp --check-prefix=CHECK-NAMESPACE-N
not C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1
-internal-isystem C:\llvm-clean\msvc\RELWITHDEB
INFO\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x objective-c++
-fmodules -fimplicit-module-maps -fno-modules-error-recov
ery
-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
-I C:\
llvm-clean\tools\clang\test\Modules/Inputs
C:\llvm-clean\tools\clang\test\Modules\cxx-templates.cpp -std=c++11 -ast
-dump -ast-dump-filter SomeTemplate |
C:/llvm-clean/msvc/RELWITHDEBINFO/bin\FileCheck.EXE C:\llvm-clean\
tools\clang\test\Modules\cxx-templates.cpp --check-prefix=CHECK-DUMP
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x objective-c++
-fmodules -fimplicit-module-maps -fno-modules-error-recovery
-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
-I C:\llvm
-clean\tools\clang\test\Modules/Inputs
C:\llvm-clean\tools\clang\test\Modules\cxx-templates.cpp -verify -std=c++11
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x objective-c++
-fmodules -fimplicit-module-maps -fno-modules-error-recovery
-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp
-I C:\llvm
-clean\tools\clang\test\Modules/Inputs
C:\llvm-clean\tools\clang\test\Modules\cxx-templates.cpp -verify -std=c++11
-DEARLY_IMPORT
--
Exit Code: 2
Command Output (stdout):
--
Command 0: "rm" "-rf"
"C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-templates.cpp.tmp"
Command 0 Result: 0
Command 0 Output:
Command 0 Stderr:
Command 1: "not" "C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE"
"-cc1" "-internal-isystem" "C:\llvm-c
lean\msvc\RELWITHDEBINFO\bin\..\lib\clang\3.8.0\include"
"-nostdsysteminc" "-x" "objective-c++" "-fmodules" "-fimplicit-module
-maps" "-fno-modules-error-recovery"
"-fmodules-cache-path=C:\llvm-clean\msvc\tools\clang\test\Modules\Output\cxx-t
emplates.cpp.tmp" "-I" "C:\llvm-clean\tools\clang\test\Modules/Inputs"
"C:\llvm-clean\tools\clang\test\M
odules\cxx-templates.cpp" "-std=c++11" "-ast-dump-lookups"
Command 1 Result: 1
Command 1 Output:
Command 1 Stderr:
0x0000000140F97571 (0x000000000358BCC0 0x000000000358B969
0x000000000358B920 0x0000000005F6E52F), llvm::OnDiskChainedHashTable
<clang::serialization::reader::ASTDeclContextNameLookupTrait>::find_hashed()
+ 0x41 bytes(s), c:\llvm-clean\include
\llvm\support\ondiskhashtable.h, line 330 + 0x4 byte(s)
0x0000000140F96C42 (0x0000000005F6E52F 0x00000000027FB198
0x00000000027C3D08 0x00000000027C4B20), clang::serialization::MultiO
nDiskHashTable<clang::serialization::reader::ASTDeclContextNameLookupTrait>::find()
+ 0x272 bytes(s), c:\llvm-clean
\tools\clang\lib\serialization\multiondiskhashtable.h, line 228
0x0000000140F6A104 (0x000000000358BD90 0x0000000004188190
0x0000000002512773 0x000000000358BD90), clang::ASTReader::FindExtern
alVisibleDeclsByName() + 0x1D4 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astreader.cpp, line 6379 + 0x3
3 byte(s)
0x000000014180D523 (0x00000000027C3D08 0x000000000358BDE9
0x0000000002512773 0x0000000000000000), clang::DeclContext::lookup()
+ 0x213 bytes(s), c:\llvm-clean\tools\clang\lib\ast\declbase.cpp, line
1395 + 0x19 byte(s)
0x0000000140F68C12 (0x000000000358C130 0x0000000000AF9BB8
0x0000000004198CE8 0x0000000004197FA0), clang::ASTReader::CompleteRe
declChain() + 0x312 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astreader.cpp, line 5989
0x00000001404D55E5 (0x0000000000000000 0x0000000004198CE8
0x0000000000000000 0x000000000358C180), clang::Redeclarable<clang::F
unctionDecl>::DeclLink::getNext() + 0xC5 bytes(s),
c:\llvm-clean\tools\clang\include\clang\ast\redeclarable.h, line
74 + 0x4D byte(s)
0x0000000141043943 (0x0000000004198750 0x0000000140FC8849
0x0000000000000003 0x000000000358C1C8), clang::ASTDeclWriter::VisitR
edeclarable<clang::FunctionDecl>() + 0x43 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriterdecl.cpp,
line 1555
0x0000000141048BCC (0x00004F6B0F91720A 0x0000000004198CE8
0x00000000041A2BD0 0x000000000358C218), clang::ASTDeclWriter::VisitF
unctionDecl() + 0x2C bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriterdecl.cpp, line 477
0x0000000141047116 (0x0000000140FE1B38 0x000000000358C2D0
0x000000000358C218 0x0000000004198CE8), clang::ASTDeclWriter::VisitC
XXMethodDecl() + 0x26 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriterdecl.cpp, line 1154
0x0000000141046B45 (0x00000000041A2BD0 0x000000000358C2D0
0x0000000004198D28 0x0000000000000000), clang::ASTDeclWriter::Visit(
) + 0x15 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriterdecl.cpp, line 263
0x000000014104D750 (0x0000000000000003 0x000000000270EAC0
0x000000000270E420 0x000000000270EAC0), clang::ASTWriter::WriteDecl(
) + 0x1E0 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriterdecl.cpp, line 2134
0x0000000140FD81D7 (0x000000000270E338 0x000000000280B920
0x000000000280B920 0x0000000000000000), clang::ASTWriter::WriteASTCo
re() + 0x2A57 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriter.cpp, line 4422
0x0000000140FD5735 (0x000000000270E320 0x000000000358F740
0x0000000142872250 0x0000000141AADE2A), clang::ASTWriter::WriteAST()
+ 0xB5 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astwriter.cpp, line 4079
0x0000000140FB26BA (0x00000001428732F0 0x0000000000000003
0x0000000000000000 0x0000000140EDD970), clang::PCHGenerator::HandleT
ranslationUnit() + 0xAA bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\generatepch.cpp, line 53
0x000000014084447F (0x0000000000000003 0x000000000275B920
0x00000000027CD9C0 0x0000000000000000), clang::MultiplexConsumer::Ha
ndleTranslationUnit() + 0x2AF bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\multiplexconsumer.cpp, line 295
0x0000000140ED7995 (0x0000000000ABCD00 0x0000000000000000
0x0000000000ABCDB0 0x0000000000000000), clang::ParseAST() + 0x255 by
tes(s), c:\llvm-clean\tools\clang\lib\parse\parseast.cpp, line 171
0x0000000140807A63 (0x0000000000ABCDB0 0x0000000000000000
0x0000000000000000 0x0000000143A0E150), clang::ASTFrontendAction::Ex
ecuteAction() + 0xE3 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\frontendaction.cpp, line 540
0x00000001408078D8 (0x0000000000000000 0x0000000000ABD070
0x0000000000ABD070 0x0000000000000000), clang::FrontendAction::Execu
te() + 0x68 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\frontendaction.cpp, line 444
0x00000001407CF750 (0x0000000000000000 0x0000000141B251F2
0x0000000000000000 0x0000000000000000), clang::CompilerInstance::Exe
cuteAction() + 0x2F0 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\compilerinstance.cpp, line 831
0x0000000141C3E645 (0x0000000000000000 0x000000000358F940
0x0000000000000000 0x00000000027CBAB0), llvm::CrashRecoveryContext::
RunSafely() + 0x75 bytes(s),
c:\llvm-clean\lib\support\crashrecoverycontext.cpp, line 329
0x0000000141C3E6BF (0x0000000000000000 0x0000000000000000
0x00000000027CBAB0 0x0000000000000000), RunSafelyOnThread_Dispatch()
+ 0x1F bytes(s), c:\llvm-clean\lib\support\crashrecoverycontext.cpp,
line 376 + 0x19 byte(s)
0x000000014031C1CD (0x0000000000000000 0x0000000141B17255
0x0000000000000000 0x0000000000000000), ThreadCallback() + 0xD bytes
(s), c:\llvm-clean\lib\support\threading.cpp, line 83
0x0000000141B0F675 (0x0000000000000003 0x00000000027CBAB0
0x0000000000000000 0x0000000000000000), _callthreadstartex() + 0x25
bytes(s), f:\dd\vctools\crt\crtw32\startup\threadex.c, line 376 + 0x17
byte(s)
0x0000000141B0F8C7 (0x00000000027CBAB0 0x0000000000000000
0x0000000000000000 0x0000000000000000), _threadstartex() + 0xE7 byte
s(s), f:\dd\vctools\crt\crtw32\startup\threadex.c, line 359
0x0000000077A15A4D (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), BaseThreadInitThunk() + 0xD
bytes(s)
0x0000000077B4B831 (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), RtlUserThreadStart() + 0x21
bytes(s)
1>CUSTOMBUILD : error : [C:\llvm-clean\msvc\check-all.vcxproj]
Command 2: "C:/llvm-clean/msvc/RELWITHDEBINFO/bin\FileCheck.EXE"
"C:\llvm-clean\tools\clang\test\Modules
\cxx-templates.cpp" "--check-prefix=CHECK-GLOBAL"
Command 2 Result: 2
Command 2 Output:
Command 2 Stderr:
1>CUSTOMBUILD : FileCheck error : '-' is empty.
[C:\llvm-clean\msvc\check-all.vcxproj]
--
********************
FAIL: Clang :: Modules/submodules-merge-defs.cpp (4278 of 23311)
******************** TEST 'Clang :: Modules/submodules-merge-defs.cpp'
FAILED ********************
Script:
--
rm -rf
C:\llvm-clean\msvc\tools\clang\test\Modules\Output\submodules-merge-defs.cpp.tmp
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp -fmodules
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\
test\Modules/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modules-error-recovery -DTEXTUAL
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp -fmodules
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\
test\Modules/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modules-error-recovery
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp -fmodules
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\
test\Modules/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modules-error-recovery -fmodules-local-submodule-visibility
-DTEXTUAL
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp -fmodules
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\
test\Modules/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modules-error-recovery -fmodules-local-submodule-visibility
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\test\Modul
es/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modul
es-error-recovery -fmodules-local-submodule-visibility -DTEXTUAL
-DEARLY_INDIRECT_INCLUDE -fno-modules-hide-internal-linkage
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -std=c++11
-fmodules-cache-path=C:\llvm-clean\msvc\tools\cla
ng\test\Modules\Output\submodules-merge-defs.cpp.tmp -fmodules
-fimplicit-module-maps -I C:\llvm-clean\tools\clang\
test\Modules/Inputs/submodules-merge-defs
C:\llvm-clean\tools\clang\test\Modules\submodules-merge-defs.cpp -verify
-fno-modules-error-recovery -fmodules-local-submodule-visibility
-fmodule-feature use_defs_twice -DIMPORT_USE_2
--
Exit Code: 3221225477
Command Output (stdout):
--
Command 0: "rm" "-rf"
"C:\llvm-clean\msvc\tools\clang\test\Modules\Output\submodules-merge-defs.cpp.tmp"
Command 0 Result: 0
Command 0 Output:
Command 0 Stderr:
Command 1: "C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE" "-cc1"
"-internal-isystem" "C:\llvm-clean\m
svc\RELWITHDEBINFO\bin\..\lib\clang\3.8.0\include" "-nostdsysteminc"
"-x" "c++" "-std=c++11" "-fmodules-cache-path=C:\my\ceemp
le\llvm-clean\msvc\tools\clang\test\Modules\Output\submodules-merge-defs.cpp.tmp"
"-fmodules" "-fimplicit-module-maps" "-I" "C
:\llvm-clean\tools\clang\test\Modules/Inputs/submodules-merge-defs"
"C:\llvm-clean\tools\clang\test\Modu
les\submodules-merge-defs.cpp" "-verify" "-fno-modules-error-recovery"
"-DTEXTUAL"
Command 1 Result: 3221225477
Command 1 Output:
Command 1 Stderr:
0x00000001419D7571 (0x00000000033EF3C0 0x00000000033EF069
0x00000000033EF020 0x00000000B2269F88), llvm::OnDiskChainedHashTable
<clang::serialization::reader::ASTDeclContextNameLookupTrait>::find_hashed()
+ 0x41 bytes(s), c:\llvm-clean\include
\llvm\support\ondiskhashtable.h, line 330 + 0x4 byte(s)
0x00000001419D6C42 (0x00000000B2269F88 0x0000000003560510
0x0000000003538EC8 0x0000000003539CE0), clang::serialization::MultiO
nDiskHashTable<clang::serialization::reader::ASTDeclContextNameLookupTrait>::find()
+ 0x272 bytes(s), c:\llvm-clean
\tools\clang\lib\serialization\multiondiskhashtable.h, line 228
0x00000001419AA104 (0x00000000033EF4B0 0x0000000002660750
0x0000000003505100 0x00000000033EF4B0), clang::ASTReader::FindExtern
alVisibleDeclsByName() + 0x1D4 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astreader.cpp, line 6379 + 0x3
3 byte(s)
0x000000014224D523 (0x0000000003538EC8 0x00000000033EF4D1
0x0000000003505100 0x0000000142481310), clang::DeclContext::lookup()
+ 0x213 bytes(s), c:\llvm-clean\tools\clang\lib\ast\declbase.cpp, line
1395 + 0x19 byte(s)
0x0000000141B96CD0 (0x00000000026BA400 0x00000000026ADDD0
0x0000000000000000 0x00000000000039A0), clang::Sema::ActOnStartNames
paceDef() + 0xB0 bytes(s),
c:\llvm-clean\tools\clang\lib\sema\semadeclcxx.cpp, line 7215
0x000000014198B873 (0x00000000026BA3F0 0x00000000026BA8A0
0x0000000000000000 0x0000000000000000), clang::Parser::ParseNamespac
e() + 0x1473 bytes(s),
c:\llvm-clean\tools\clang\lib\parse\parsedeclcxx.cpp, line 189
0x000000014193293C (0x00000000026BA700 0x00000000026BA7B0
0x00000000033EFA70 0x00000000026BA3F0), clang::Parser::ParseDeclarat
ion() + 0x1FC bytes(s),
c:\llvm-clean\tools\clang\lib\parse\parsedecl.cpp, line 1479
0x000000014191B358 (0x0000000000000000 0x00000000033EFB00
0x00000000033EFAC0 0x0000000000000000), clang::Parser::ParseExternal
Declaration() + 0x488 bytes(s),
c:\llvm-clean\tools\clang\lib\parse\parser.cpp, line 742 + 0x13 byte(s)
0x000000014191D738 (0x0000000000000003 0x000000000351FA60
0x0000000000000000 0x00000000026BA3F0), clang::Parser::ParseTopLevel
Decl() + 0xF8 bytes(s), c:\llvm-clean\tools\clang\lib\parse\parser.cpp,
line 593
0x000000014191793E (0x0000000000B6B300 0x0000000000000000
0x0000000000B6B310 0x0000000000000000), clang::ParseAST() + 0x1FE by
tes(s), c:\llvm-clean\tools\clang\lib\parse\parseast.cpp, line 161 +
0x10 byte(s)
0x0000000141247A63 (0x0000000000B6B310 0x0000000000000000
0x0000000000000000 0x000000014444E150), clang::ASTFrontendAction::Ex
ecuteAction() + 0xE3 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\frontendaction.cpp, line 540
0x00000001412478D8 (0x0000000000000000 0x0000000000B6B5D0
0x0000000000B6B5D0 0x0000000000000000), clang::FrontendAction::Execu
te() + 0x68 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\frontendaction.cpp, line 444
0x000000014120F750 (0x0000000000000000 0x00000001425651F2
0x0000000000000000 0x0000000000000000), clang::CompilerInstance::Exe
cuteAction() + 0x2F0 bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\compilerinstance.cpp, line 831
0x000000014267E645 (0x0000000000000000 0x00000000033EFCE0
0x0000000000000000 0x00000000026AB580), llvm::CrashRecoveryContext::
RunSafely() + 0x75 bytes(s),
c:\llvm-clean\lib\support\crashrecoverycontext.cpp, line 329
0x000000014267E6BF (0x0000000000000000 0x0000000000000000
0x00000000026AB580 0x0000000000000000), RunSafelyOnThread_Dispatch()
+ 0x1F bytes(s), c:\llvm-clean\lib\support\crashrecoverycontext.cpp,
line 376 + 0x19 byte(s)
0x0000000140D5C1CD (0x0000000000000000 0x0000000142557255
0x0000000000000000 0x0000000000000000), ThreadCallback() + 0xD bytes
(s), c:\llvm-clean\lib\support\threading.cpp, line 83
0x000000014254F675 (0x0000000000000003 0x00000000026AB580
0x0000000000000000 0x0000000000000000), _callthreadstartex() + 0x25
bytes(s), f:\dd\vctools\crt\crtw32\startup\threadex.c, line 376 + 0x17
byte(s)
0x000000014254F8C7 (0x00000000026AB580 0x0000000000000000
0x0000000000000000 0x0000000000000000), _threadstartex() + 0xE7 byte
s(s), f:\dd\vctools\crt\crtw32\startup\threadex.c, line 359
0x0000000077A15A4D (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), BaseThreadInitThunk() + 0xD
bytes(s)
0x0000000077B4B831 (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), RtlUserThreadStart() + 0x21
bytes(s)
--
********************
FAIL: Clang :: PCH/cxx-key-functions.cpp (4553 of 23311)
******************** TEST 'Clang :: PCH/cxx-key-functions.cpp' FAILED
********************
Script:
--
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -include
C:\llvm-clean\tools\clang\test\PCH\cxx-key-function
s.cpp -emit-llvm-only
C:\llvm-clean\tools\clang\test\PCH\cxx-key-functions.cpp
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -x c++ -emit-pch
C:\llvm-clean\tools\clang\test\PCH\cxx-key-functio
ns.cpp -o
C:\llvm-clean\msvc\tools\clang\test\PCH\Output\cxx-key-functions.cpp.tmp
C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE -cc1 -internal-isystem
C:\llvm-clean\msvc\RELWITHDEBINFO
\bin\..\lib\clang\3.8.0\include -nostdsysteminc -include-pch
C:\llvm-clean\msvc\tools\clang\test\PCH\Output\cxx-key
-functions.cpp.tmp -emit-llvm-only
C:\llvm-clean\tools\clang\test\PCH\cxx-key-functions.cpp
--
Exit Code: 2147483651
Command Output (stdout):
--
Command 0: "C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE" "-cc1"
"-internal-isystem" "C:\llvm-clean\m
svc\RELWITHDEBINFO\bin\..\lib\clang\3.8.0\include" "-nostdsysteminc"
"-x" "c++" "-include" "C:\llvm-clean\tools\cla
ng\test\PCH\cxx-key-functions.cpp" "-emit-llvm-only"
"C:\llvm-clean\tools\clang\test\PCH\cxx-key-functions.cpp"
Command 0 Result: 0
Command 0 Output:
Command 0 Stderr:
Command 1: "C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE" "-cc1"
"-internal-isystem" "C:\llvm-clean\m
svc\RELWITHDEBINFO\bin\..\lib\clang\3.8.0\include" "-nostdsysteminc"
"-x" "c++" "-emit-pch" "C:\llvm-clean\tools\cl
ang\test\PCH\cxx-key-functions.cpp" "-o"
"C:\llvm-clean\msvc\tools\clang\test\PCH\Output\cxx-key-functions.cpp.tmp"
Command 1 Result: 0
Command 1 Output:
Command 1 Stderr:
Command 2: "C:/llvm-clean/msvc/RELWITHDEBINFO/bin/clang.EXE" "-cc1"
"-internal-isystem" "C:\llvm-clean\m
svc\RELWITHDEBINFO\bin\..\lib\clang\3.8.0\include" "-nostdsysteminc"
"-include-pch" "C:\llvm-clean\msvc\tools\clang
\test\PCH\Output\cxx-key-functions.cpp.tmp" "-emit-llvm-only"
"C:\llvm-clean\tools\clang\test\PCH\cxx-key-functions
.cpp"
Command 2 Result: 2147483651
Command 2 Output:
Command 2 Stderr:
0x00000001426DFB40 (0x0000000000D4BC30 0x0000000000D35D00
0x000000000250AE48 0x0000000000000001), operator delete() + 0xA0 byt
es(s), f:\dd\vctools\crt\crtw32\misc\dbgdel.cpp, line 52 + 0x71 byte(s)
0x0000000141B82BC1 (0x000000000250AE40 0x000000000250B9E0
0x000000000252CC00 0x0000000000000001), clang::serialization::MultiO
nDiskHashTable<clang::serialization::reader::ASTDeclContextNameLookupTrait>::clear()
+ 0xA1 bytes(s), c:\llvm-clean
\tools\clang\lib\serialization\multiondiskhashtable.h, line 107
0x0000000141B53C62 (0x000000000250AE40 0x0000000000D94B98
0x0000000002502C70 0x0000000142703132), clang::serialization::MultiO
nDiskHashTable<clang::serialization::reader::ASTDeclContextNameLookupTrait>::~MultiOnDiskHashTable<clang::serialization::reade
r::ASTDeclContextNameLookupTrait>() + 0x12 bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\multiondiskhashtab
le.h, line 172 + 0x12 byte(s)
0x0000000141B53B78 (0x0000000000D96540 0x0000000000D52030
0x0000000000D93BA0 0x00000001426EDD11), llvm::DenseMap<clang::DeclCo
ntext const *
__ptr64,clang::serialization::reader::DeclContextLookupTable,llvm::DenseMapInfo<clang::DeclContext
const * __ptr
64>,llvm::detail::DenseMapPair<clang::DeclContext const *
__ptr64,clang::serialization::reader::DeclContextLookupTable> >::~De
nseMap<clang::DeclContext const *
__ptr64,clang::serialization::reader::DeclContextLookupTable,llvm::DenseMapInfo<clang::DeclC
ontext const * __ptr64>,llvm::detail::DenseMapPair<clang::DeclContext
cons?() + 0x48 bytes(s), c:\llvm-clean\includ
e\llvm\adt\densemap.h, line 574 + 0x3C byte(s)
0x0000000141B5473A (0x0000000000D35E60 0x0000000000000001
0x0000000000D35D00 0x0000000000000001), clang::ASTReader::~ASTReader
() + 0x60A bytes(s),
c:\llvm-clean\tools\clang\lib\serialization\astreader.cpp, line 8408 +
0x597 byte(s)
0x0000000141B58704 (0x0000000000D93BA0 0x0000000000D35D00
0x0000000000D35D00 0x0000000000D52030), clang::ASTReader::`scalar de
leting destructor'() + 0x14 bytes(s)
0x00000001413BE06F (0x0000000000000001 0x0000000000D52030
0x0000000000D52000 0x0000000000D93390), clang::CompilerInstance::~Co
mpilerInstance() + 0x12F bytes(s),
c:\llvm-clean\tools\clang\lib\frontend\compilerinstance.cpp, line 64 + 0xF0
byte
(s)
0x00000001413BEFC4 (0x0000000000D35D00 0x0000000000D35E60
0x0000000000D53C10 0x0000000000000001), clang::CompilerInstance::`sc
alar deleting destructor'() + 0x14 bytes(s)
0x000000013FCAD2E1 (0x0000000000AFE8F0 0x0000000000AFE888
0x0000000000000000 0x0000000000AFE8F0), cc1_main() + 0x471 bytes(s),
c:\llvm-clean\tools\clang\tools\driver\cc1_main.cpp, line 139 + 0x99
byte(s)
0x000000013FCA4894 (0x0000000000000009 0x0000000000D4FF3B
0x0000000000AFE900 0x0000000000000000), ExecuteCC1Tool() + 0x94 byte
s(s), c:\llvm-clean\tools\clang\tools\driver\driver.cpp, line 387
0x000000013FCA90BB (0x0000000000000001 0x0000000000000000
0x0000000000000000 0x0000000000000000), main() + 0x59B bytes(s), c:\
llvm-clean\tools\clang\tools\driver\driver.cpp, line 443 + 0x7F byte(s)
0x00000001426E508C (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), __tmainCRTStartup() + 0xEC b
ytes(s), f:\dd\vctools\crt\crtw32\startup\crt0.c, line 255 + 0x19 byte(s)
0x00000001426E51CE (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), mainCRTStartup() + 0xE bytes
(s), f:\dd\vctools\crt\crtw32\startup\crt0.c, line 165
0x0000000077A15A4D (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), BaseThreadInitThunk() + 0xD
bytes(s)
0x0000000077B4B831 (0x0000000000000000 0x0000000000000000
0x0000000000000000 0x0000000000000000), RtlUserThreadStart() + 0x21
bytes(s)
2015-09-01 10:41 GMT+03:00 Richard Smith via cfe-commits <
cfe-commits at lists.llvm.org>:
> Author: rsmith
> Date: Tue Sep 1 02:41:55 2015
> New Revision: 246534
>
> URL: http://llvm.org/viewvc/llvm-project?rev=246534&view=rev
> Log:
> [modules] When emitting line tables, only emit filenames that are actually
> referenced by the entries that we emit.
>
> Modified:
> cfe/trunk/lib/Serialization/ASTReader.cpp
> cfe/trunk/lib/Serialization/ASTWriter.cpp
>
> Modified: cfe/trunk/lib/Serialization/ASTReader.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Serialization/ASTReader.cpp?rev=246534&r1=246533&r2=246534&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/Serialization/ASTReader.cpp (original)
> +++ cfe/trunk/lib/Serialization/ASTReader.cpp Tue Sep 1 02:41:55 2015
> @@ -1058,11 +1058,12 @@ bool ASTReader::ParseLineTable(ModuleFil
>
> // Parse the file names
> std::map<int, int> FileIDs;
> - for (int I = 0, N = Record[Idx++]; I != N; ++I) {
> + for (unsigned I = 0; Record[Idx]; ++I) {
> // Extract the file name
> auto Filename = ReadPath(F, Record, Idx);
> FileIDs[I] = LineTable.getLineTableFilenameID(Filename);
> }
> + ++Idx;
>
> // Parse the line entries
> std::vector<LineEntry> Entries;
> @@ -1074,7 +1075,7 @@ bool ASTReader::ParseLineTable(ModuleFil
>
> // Extract the line entries
> unsigned NumEntries = Record[Idx++];
> - assert(NumEntries && "Numentries is 00000");
> + assert(NumEntries && "no line entries for file ID");
> Entries.clear();
> Entries.reserve(NumEntries);
> for (unsigned I = 0; I != NumEntries; ++I) {
>
> Modified: cfe/trunk/lib/Serialization/ASTWriter.cpp
> URL:
> http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Serialization/ASTWriter.cpp?rev=246534&r1=246533&r2=246534&view=diff
>
> ==============================================================================
> --- cfe/trunk/lib/Serialization/ASTWriter.cpp (original)
> +++ cfe/trunk/lib/Serialization/ASTWriter.cpp Tue Sep 1 02:41:55 2015
> @@ -1981,10 +1981,19 @@ void ASTWriter::WriteSourceManagerBlock(
> LineTableInfo &LineTable = SourceMgr.getLineTable();
>
> Record.clear();
> - // Emit the file names.
> - Record.push_back(LineTable.getNumFilenames());
> - for (unsigned I = 0, N = LineTable.getNumFilenames(); I != N; ++I)
> - AddPath(LineTable.getFilename(I), Record);
> +
> + // Emit the needed file names.
> + llvm::DenseMap<int, int> FilenameMap;
> + for (const auto &L : LineTable) {
> + if (L.first.ID < 0)
> + continue;
> + for (auto &LE : L.second) {
> + if (FilenameMap.insert(std::make_pair(LE.FilenameID,
> + FilenameMap.size())).second)
> + AddPath(LineTable.getFilename(LE.FilenameID), Record);
> + }
> + }
> + Record.push_back(0);
>
> // Emit the line entries
> for (LineTableInfo::iterator L = LineTable.begin(), LEnd =
> LineTable.end();
> @@ -2003,11 +2012,12 @@ void ASTWriter::WriteSourceManagerBlock(
> LE != LEEnd; ++LE) {
> Record.push_back(LE->FileOffset);
> Record.push_back(LE->LineNo);
> - Record.push_back(LE->FilenameID);
> + Record.push_back(FilenameMap[LE->FilenameID]);
> Record.push_back((unsigned)LE->FileKind);
> Record.push_back(LE->IncludeOffset);
> }
> }
> +
> Stream.EmitRecord(SOURCE_MANAGER_LINE_TABLE, Record);
> }
> }
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at lists.llvm.org
> http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20150901/86dc3a02/attachment-0001.html>
More information about the cfe-commits
mailing list