Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Assertion failed: (reinterpret_cast<uintptr_t>(Buckets) & 0x3) == 0 && "buckets should be 4-byte aligned.", file S:\SourceCache\swift-project\llvm-project\llvm\include\llvm/Support/OnDiskHashTable.h, line 305 #7172

Open
compnerd opened this issue Aug 8, 2023 · 1 comment

Comments

@compnerd
Copy link
Member

compnerd commented Aug 8, 2023

Reproduces with
swift build -Xcc -IS:\b\1\include -Xcc -IS:\b\1\tools\clang\include -Xcc -IS:\b\1\tools\swift\include -Xcc -std=c++17

at
swiftlang/swift@85e38af

Assertion failed: (reinterpret_cast<uintptr_t>(Buckets) & 0x3) == 0 && "buckets should be 4-byte aligned.", file S:\SourceCache\swift-project\llvm-project\llvm\include\llvm/Support/OnDiskHashTable.h, line 305
Please submit a bug report (https://swift.org/contributing/#reporting-bugs) and include the crash backtrace.
Stack dump:
0.      ../include\swift/AST/ClangModuleLoader.h:19:2: current parser token 'include'
1.      ../include\swift/Basic/TaggedUnion.h:23:1: parsing namespace 'swift'
Exception Code: 0x80000003
 #0 0x00007ff6a78fea25 llvm::SmallVectorBase<unsigned __int64>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallVector.h:64:0
 #1 0x00007ff6a78fea25 llvm::SmallVectorTemplateCommon<char,void>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallVector.h:138:0
 #2 0x00007ff6a78fea25 llvm::SmallVectorTemplateBase<char,1>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallVector.h:491:0
 #3 0x00007ff6a78fea25 llvm::SmallVectorImpl<char>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallVector.h:592:0
 #4 0x00007ff6a78fea25 llvm::SmallVector<char,32>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallVector.h:1202:0
 #5 0x00007ff6a78fea25 llvm::SmallString<32>::{ctor} S:\SourceCache\swift-project\llvm-project\llvm\include\llvm\ADT\SmallString.h:29:0
 #6 0x00007ff6a78fea25 printSymbolizedStackTrace S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\Signals.cpp:181:0
 #7 0x00007ffd7c66e5f5 (C:\Windows\System32\ucrtbase.dll+0x7e5f5)
 #8 0x00007ffd7c66f601 (C:\Windows\System32\ucrtbase.dll+0x7f601)
 #9 0x00007ffd7c67106a (C:\Windows\System32\ucrtbase.dll+0x8106a)
#10 0x00007ffd7c670f5d (C:\Windows\System32\ucrtbase.dll+0x80f5d)
#11 0x00007ffd7c6711f1 (C:\Windows\System32\ucrtbase.dll+0x811f1)
#12 0x00007ff6a5d81ffb clang::ASTReader::ReadASTBlock(class clang::serialization::ModuleFile &, unsigned int) S:\SourceCache\swift-project\llvm-project\clang\lib\Serialization\ASTReader.cpp:3429:0
#13 0x00007ff6a5d7ec3d std::allocator<char>::deallocate C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\xmemory:946:0
#14 0x00007ff6a5d7ec3d std::basic_string<char,std::char_traits<char>,std::allocator<char> >::_Tidy_deallocate C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\xstring:4874:0
#15 0x00007ff6a5d7ec3d std::basic_string<char,std::char_traits<char>,std::allocator<char> >::{dtor} C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\xstring:3157:0
#16 0x00007ff6a5d7ec3d clang::ASTReader::ParseTargetOptions(class llvm::SmallVector<unsigned __int64, 64> const &, bool, class clang::ASTReaderListener &, bool) S:\SourceCache\swift-project\llvm-project\clang\lib\Serialization\ASTReader.cpp:5899:0
#17 0x00007ff6a5a4b71d clang::CompilerInstance::getDiagnostics S:\SourceCache\swift-project\llvm-project\clang\include\clang\Frontend\CompilerInstance.h:381:0
#18 0x00007ff6a5a4b71d clang::CompilerInstance::createTarget(void) S:\SourceCache\swift-project\llvm-project\clang\lib\Frontend\CompilerInstance.cpp:122:0
#19 0x00007ff6a5a4dd19 clang::DiagnosticBuilder::Clear S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1301:0
#20 0x00007ff6a5a4dd19 clang::DiagnosticBuilder::Emit S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1324:0
#21 0x00007ff6a5a4dd19 clang::DiagnosticBuilder::{dtor} S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1362:0
#22 0x00007ff6a5a4dd19 loadAPINotesFromIncludeTree S:\SourceCache\swift-project\llvm-project\clang\lib\Frontend\CompilerInstance.cpp:824:0
#23 0x00007ff6a76f18f4 clang::Preprocessor::HandleElifFamilyDirective(class clang::Token &, class clang::Token const &, enum clang::tok::PPKeywordKind) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\PPDirectives.cpp:3586:0
#24 0x00007ff6a76f3b7b clang::DiagnosticBuilder::Clear S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1301:0
#25 0x00007ff6a76f3b7b clang::DiagnosticBuilder::Emit S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1324:0
#26 0x00007ff6a76f3b7b clang::DiagnosticBuilder::{dtor} S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1362:0
#27 0x00007ff6a76f3b7b clang::Preprocessor::HandleIdentSCCSDirective(class clang::Token &) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\PPDirectives.cpp:1668:0
#28 0x00007ff6a76f02f1 clang::DiagnosticBuilder::{dtor} S:\SourceCache\swift-project\llvm-project\clang\include\clang\Basic\Diagnostic.h:1362:0
#29 0x00007ff6a76f02f1 clang::Preprocessor::HandleDefineDirective(class clang::Token &, bool) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\PPDirectives.cpp:3215:0
#30 0x00007ff6a76a3181 clang::Lexer::LexTokenInternal(class clang::Token &, bool) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\Lexer.cpp:3738:0
#31 0x00007ff6a769ef15 clang::Lexer::Create_PragmaLexer(class clang::SourceLocation, class clang::SourceLocation, class clang::SourceLocation, unsigned int, class clang::Preprocessor &) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\Lexer.cpp:204:0
#32 0x00007ff6a76aff2c clang::Token::is S:\SourceCache\swift-project\llvm-project\clang\include\clang\Lex\Token.h:97:0
#33 0x00007ff6a76aff2c clang::Preprocessor::FinishLexStringLiteral(class clang::Token &, class std::basic_string<char, struct std::char_traits<char>, class std::allocator<char>> &, char const *, bool) S:\SourceCache\swift-project\llvm-project\clang\lib\Lex\Preprocessor.cpp:1367:0
#34 0x00007ff6a5c5d2f1 std::default_delete<clang::PragmaHandler>::operator() C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\memory:3167:0
#35 0x00007ff6a5c5d2f1 std::unique_ptr<clang::PragmaHandler,std::default_delete<clang::PragmaHandler> >::{dtor} C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\memory:3278:0
#36 0x00007ff6a5c5d2f1 clang::Parser::~Parser(void) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\Parser.cpp:478:0
#37 0x00007ff6a5c67d32 clang::OpaquePtr<clang::QualType>::operator bool S:\SourceCache\swift-project\llvm-project\clang\include\clang\Sema\Ownership.h:88:0
#38 0x00007ff6a5c67d32 clang::Parser::TryAnnotateTypeOrScopeTokenAfterScopeSpec(class clang::CXXScopeSpec &, bool, enum clang::ImplicitTypenameContext) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\Parser.cpp:2065:0
#39 0x00007ff6a5cfbf71 clang::ActionResult<clang::Expr *,1>::isInvalid S:\SourceCache\swift-project\llvm-project\clang\include\clang\Sema\Ownership.h:207:0
#40 0x00007ff6a5cfbf71 clang::Parser::ParseDecltypeSpecifier(class clang::DeclSpec &) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\ParseDeclCXX.cpp:1133:0
#41 0x00007ff6a5cffa85 clang::Parser::ParseNamespace(enum clang::DeclaratorContext, class clang::SourceLocation &, class clang::SourceLocation) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\ParseDeclCXX.cpp:121:0
#42 0x00007ff6a5c865e2 clang::Parser::ParseDeclGroup(class clang::ParsingDeclSpec &, enum clang::DeclaratorContext, class clang::ParsedAttributes &, class clang::SourceLocation *, struct clang::Parser::ForRangeInit *) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\ParseDecl.cpp:2200:0
#43 0x00007ff6a5c60518 clang::Parser::ParseDeclOrFunctionDefInternal(class clang::ParsedAttributes &, class clang::ParsedAttributes &, class clang::ParsingDeclSpec &, enum clang::AccessSpecifier) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\Parser.cpp:1164:0
#44 0x00007ff6a5c65066 clang::Parser::ParseModuleImport(class clang::SourceLocation, enum clang::Sema::ModuleImportState &) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\Parser.cpp:2590:0
#45 0x00007ff6a5c69620 clang::Parser::handleUnexpectedCodeCompletionToken(void) S:\SourceCache\swift-project\llvm-project\clang\lib\Parse\Parser.cpp:2221:0
#46 0x00007ff6a5ab0dd0 std::_Tree<std::_Tmap_traits<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > >,0> >::_Check_grow_by_1 C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\xtree:1629:0
#47 0x00007ff6a5ab0dd0 std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > > >::_Try_emplace C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\map:196:0
#48 0x00007ff6a5ab0dd0 std::map<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > >,std::less<std::basic_string<char,std::char_traits<char>,std::allocator<char> > >,std::allocator<std::pair<std::basic_string<char,std::char_traits<char>,std::allocator<char> > const ,std::vector<std::basic_string<char,std::char_traits<char>,std::allocator<char> >,std::allocator<std::basic_string<char,std::char_traits<char>,std::allocator<char> > > > > > >::operator[] C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\map:174:0
#49 0x00007ff6a5ab0dd0 clang::FrontendAction::CreateWrappedASTConsumer(class clang::CompilerInstance &, class llvm::StringRef) S:\SourceCache\swift-project\llvm-project\clang\lib\Frontend\FrontendAction.cpp:211:0
#50 0x00007ff6a5ab0bbe std::default_delete<clang::PluginASTAction>::operator() C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\memory:3167:0
#51 0x00007ff6a5ab0bbe std::unique_ptr<clang::PluginASTAction,std::default_delete<clang::PluginASTAction> >::{dtor} C:\Program Files (x86)\Microsoft Visual Studio\2022\BuildTools\VC\Tools\MSVC\14.36.32532\include\memory:3278:0
#52 0x00007ff6a5ab0bbe clang::FrontendAction::CreateWrappedASTConsumer(class clang::CompilerInstance &, class llvm::StringRef) S:\SourceCache\swift-project\llvm-project\clang\lib\Frontend\FrontendAction.cpp:222:0
#53 0x00007ff6a5a41503 clang::ChainedDiagnosticConsumer::`scalar deleting dtor'(unsigned int) (S:\Library\Developer\Toolchains\unknown-Asserts-development.xctoolchain\usr\bin\swift-frontend.exe+0x39c1503)
#54 0x00007ff6a5a3ea40 clang::cas::CompileJobResultSchema::load(class llvm::cas::ObjectRef) const S:\SourceCache\swift-project\llvm-project\clang\lib\Frontend\CompileJobCacheResult.cpp:176:0
#55 0x00007ff6a78daec4 hasher_push_cv S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:457:0
#56 0x00007ff6a78daec4 llvm_blake3_hasher_update S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:550:0
#57 0x00007ff6a78db05f llvm_blake3_hasher_update S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:551:0
#58 0x00007ff6a78dabbf compress_parents_parallel S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:230:0
#59 0x00007ff6a78dabbf compress_subtree_to_parent_node S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:362:0
#60 0x00007ff6a78dabbf llvm_blake3_hasher_update S:\SourceCache\swift-project\llvm-project\llvm\lib\Support\BLAKE3\blake3.c:547:0
#61 0x00007ffd7c619363 (C:\Windows\System32\ucrtbase.dll+0x29363)
#62 0x00007ffd7d7a26ad (C:\Windows\System32\KERNEL32.DLL+0x126ad)
#63 0x00007ffd7ea2aa68 (C:\Windows\SYSTEM32\ntdll.dll+0x5aa68)
@hyp
Copy link

hyp commented Aug 8, 2023

Happens because we embed the module inside of a COFF file, which doesn't seem to align the module well :)

Workaround:

-Xcc -Xclang -Xcc -fmodule-format=raw

rintaro added a commit to rintaro/swift that referenced this issue Sep 27, 2024
* Workaround for swiftlang/llvm-project#7172
* `-D_CRT_USE_BUILTIN_OFFSETOF` to make `offsetof()` a constant
rintaro added a commit to rintaro/swift that referenced this issue Sep 27, 2024
* Workaround for swiftlang/llvm-project#7172
* `-D_CRT_USE_BUILTIN_OFFSETOF` to make `offsetof()` a constant
rintaro added a commit to rintaro/swift that referenced this issue Sep 27, 2024
* Workaround for swiftlang/llvm-project#7172
* `-D_CRT_USE_BUILTIN_OFFSETOF` to make `offsetof()` a constant
* Pass correct 'swift/shims' search path
rintaro added a commit to rintaro/swift that referenced this issue Sep 27, 2024
* Workaround for swiftlang/llvm-project#7172
* `-D_CRT_USE_BUILTIN_OFFSETOF` to make `offsetof()` a constant
* Pass correct 'swift/shims' search path
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants