[PATCH] D33277: [Clang][x86][Inline Asm] - Enum support for MS syntax

Eric Christopher via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 25 12:18:57 PDT 2017


I've reverted this and Nemanja's attempt at fixing in:

echristo at athyra ~/s/l/t/clang> git svn dcommit
Committing to https://llvm.org/svn/llvm-project/cfe/trunk ...
D test/CodeGen/x86-ms-inline-asm-enum_feature.cpp
M lib/Sema/SemaStmtAsm.cpp
M test/CodeGen/ms-inline-asm.c
M test/CodeGenCXX/ms-inline-asm-return.cpp
Committed r309004

-eric

On Tue, Jul 25, 2017 at 11:07 AM Nico Weber <thakis at chromium.org> wrote:

> The test also fails on many other bots on http://lab.llvm.org:8011/console
> , a short excerpt:
>
>
> http://lab.llvm.org:8011/builders/clang-ppc64be-linux/builds/9702/steps/ninja%20check%201/logs/FAIL%3A%20Clang%3A%3Ax86-ms-inline-asm-enum_feature.cpp
>
> http://lab.llvm.org:8011/builders/clang-cmake-aarch64-lld/builds/1940/steps/ninja%20check%202/logs/FAIL%3A%20Clang%3A%3Ax86-ms-inline-asm-enum_feature.cpp
>
> http://lab.llvm.org:8011/builders/clang-cmake-aarch64-lld/builds/1940/steps/ninja%20check%202/logs/FAIL%3A%20Clang%3A%3Ax86-ms-inline-asm-enum_feature.cpp
>
> http://lab.llvm.org:8011/builders/clang-ppc64le-linux-lnt/builds/5197/steps/ninja%20check%201/logs/FAIL%3A%20Clang%3A%3Ax86-ms-inline-asm-enum_feature.cpp
>
> On Tue, Jul 25, 2017 at 1:52 PM, Kostya Serebryany via Phabricator via
> cfe-commits <cfe-commits at lists.llvm.org> wrote:
>
>> kcc added a comment.
>>
>> Hi.
>> This patch causes the msan bots to complain. Please fix or revert ASAP.
>>
>> http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux-fast/builds/6702/steps/check-clang%20msan/logs/stdio
>> Testing: 0 .. 10..
>> FAIL: Clang :: CodeGen/ms_this.cpp (2142 of 11057)
>>
>> - TEST 'Clang :: CodeGen/ms_this.cpp' FAILED ********************
>>
>> Script:
>> -------
>>
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm_build_msan/./bin/clang
>> -cc1 -internal-isystem
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm_build_msan/lib/clang/6.0.0/include
>> -nostdsysteminc -triple x86_64-pc-win32 -fasm-blocks -emit-llvm
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/test/CodeGen/ms_this.cpp
>> -o - |
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm_build_msan/./bin/FileCheck
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/test/CodeGen/ms_this.cpp
>>
>> ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>>
>> Exit Code: 2
>>
>> Command Output (stderr):
>> ------------------------
>>
>> 4713==WARNING: MemorySanitizer: use-of-uninitialized-value
>> ----------------------------------------------------------
>>
>>   #0 0x3143ba3 in (anonymous
>> namespace)::X86AsmParser::ParseIntelIdentifier(llvm::MCExpr const*&,
>> llvm::StringRef&, llvm::InlineAsmIdentifierInfo&, bool, llvm::SMLoc&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:1664:7
>>   #1 0x313f288 in (anonymous
>> namespace)::X86AsmParser::ParseIntelExpression((anonymous
>> namespace)::X86AsmParser::IntelExprStateMachine&, llvm::SMLoc&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:1440:13
>>   #2 0x31389e7 in (anonymous
>> namespace)::X86AsmParser::ParseIntelBracExpression(unsigned int,
>> llvm::SMLoc, long, bool, unsigned int)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:1555:7
>>   #3 0x31307f8 in ParseIntelOperand
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:1961:12
>>   #4 0x31307f8 in (anonymous namespace)::X86AsmParser::ParseOperand()
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:1225
>>   #5 0x3118cda in (anonymous
>> namespace)::X86AsmParser::ParseInstruction(llvm::ParseInstructionInfo&,
>> llvm::StringRef, llvm::SMLoc,
>> llvm::SmallVectorImpl<std::__1::unique_ptr<llvm::MCParsedAsmOperand,
>> std::__1::default_delete<llvm::MCParsedAsmOperand> > >&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/Target/X86/AsmParser/X86AsmParser.cpp:2510:44
>>   #6 0x4bb9a48 in (anonymous
>> namespace)::AsmParser::parseStatement((anonymous
>> namespace)::ParseStatementInfo&, llvm::MCAsmParserSemaCallback*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/MC/MCParser/AsmParser.cpp:2034:42
>>   #7 0x4ba63a3 in (anonymous
>> namespace)::AsmParser::parseMSInlineAsm(void*, std::__1::basic_string<char,
>> std::__1::char_traits<char>, std::__1::allocator<char> >&, unsigned int&,
>> unsigned int&, llvm::SmallVectorImpl<std::__1::pair<void*, bool> >&,
>> llvm::SmallVectorImpl<std::__1::basic_string<char,
>> std::__1::char_traits<char>, std::__1::allocator<char> > >&,
>> llvm::SmallVectorImpl<std::__1::basic_string<char,
>> std::__1::char_traits<char>, std::__1::allocator<char> > >&,
>> llvm::MCInstrInfo const*, llvm::MCInstPrinter const*,
>> llvm::MCAsmParserSemaCallback&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/lib/MC/MCParser/AsmParser.cpp:5343:25
>>   #8 0x82f1100 in
>> clang::Parser::ParseMicrosoftAsmStatement(clang::SourceLocation)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp:619:15
>>   #9 0x82f6310 in clang::Parser::ParseAsmStatement(bool&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmtAsm.cpp:682:12
>>   #10 0x82d15d9 in
>> clang::Parser::ParseStatementOrDeclarationAfterAttributes(llvm::SmallVector<clang::Stmt*,
>> 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*,
>> clang::Parser::ParsedAttributesWithRange&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmt.cpp:277:11
>>   #11 0x82cfff1 in
>> clang::Parser::ParseStatementOrDeclaration(llvm::SmallVector<clang::Stmt*,
>> 32u>&, clang::Parser::AllowedConstructsKind, clang::SourceLocation*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmt.cpp:110:20
>>   #12 0x82e677b in clang::Parser::ParseCompoundStatementBody(bool)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmt.cpp:1001:11
>>   #13 0x82e859f in
>> clang::Parser::ParseFunctionStatementBody(clang::Decl*,
>> clang::Parser::ParseScope&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseStmt.cpp:1967:21
>>   #14 0x811b151 in
>> clang::Parser::ParseFunctionDefinition(clang::ParsingDeclarator&,
>> clang::Parser::ParsedTemplateInfo const&,
>> clang::Parser::LateParsedAttrList*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/Parser.cpp:1214:10
>>   #15 0x8167f18 in clang::Parser::ParseDeclGroup(clang::ParsingDeclSpec&,
>> unsigned int, clang::SourceLocation*, clang::Parser::ForRangeInit*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseDecl.cpp:1953:11
>>   #16 0x8118d8c in
>> clang::Parser::ParseDeclOrFunctionDefInternal(clang::Parser::ParsedAttributesWithRange&,
>> clang::ParsingDeclSpec&, clang::AccessSpecifier)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/Parser.cpp:981:10
>>   #17 0x8117646 in
>> clang::Parser::ParseDeclarationOrFunctionDefinition(clang::Parser::ParsedAttributesWithRange&,
>> clang::ParsingDeclSpec*, clang::AccessSpecifier)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/Parser.cpp:997:12
>>   #18 0x8114428 in
>> clang::Parser::ParseExternalDeclaration(clang::Parser::ParsedAttributesWithRange&,
>> clang::ParsingDeclSpec*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/Parser.cpp:847:12
>>   #19 0x8110552 in
>> clang::Parser::ParseTopLevelDecl(clang::OpaquePtr<clang::DeclGroupRef>&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/Parser.cpp:615:12
>>   #20 0x8101168 in clang::ParseAST(clang::Sema&, bool, bool)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Parse/ParseAST.cpp:147:18
>>   #21 0x65ab84a in clang::FrontendAction::Execute()
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Frontend/FrontendAction.cpp:902:8
>>   #22 0x64e936c in
>> clang::CompilerInstance::ExecuteAction(clang::FrontendAction&)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/Frontend/CompilerInstance.cpp:980:11
>>   #23 0x6786441 in
>> clang::ExecuteCompilerInvocation(clang::CompilerInstance*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/lib/FrontendTool/ExecuteCompilerInvocation.cpp:251:25
>>   #24 0x98efea in cc1_main(llvm::ArrayRef<char const*>, char const*,
>> void*)
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/tools/driver/cc1_main.cpp:221:13
>>   #25 0x988444 in ExecuteCC1Tool
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/tools/driver/driver.cpp:306:12
>>   #26 0x988444 in main
>> /mnt/b/sanitizer-buildbot3/sanitizer-x86_64-linux-fast/build/llvm/tools/clang/tools/driver/driver.cpp:387
>>
>>
>> Repository:
>>   rL LLVM
>>
>> https://reviews.llvm.org/D33277
>>
>>
>>
>> _______________________________________________
>> 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/llvm-commits/attachments/20170725/51aa230c/attachment.html>


More information about the llvm-commits mailing list