<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40"><head><meta http-equiv=Content-Type content="text/html; charset=koi8-r"><meta name=Generator content="Microsoft Word 14 (filtered medium)"><style><!--
/* Font Definitions */
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
        {font-family:Tahoma;
        panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
p
        {mso-style-priority:99;
        mso-margin-top-alt:auto;
        margin-right:0in;
        mso-margin-bottom-alt:auto;
        margin-left:0in;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]--></head><body lang=EN-US link=blue vlink=purple><div class=WordSection1><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'>Ah, I see. Should be fixed in r196854. I modified the test to always pass a target that has an external assembler. Please let me know if it is still causing you a problem.<o:p></o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><p class=MsoNormal><span style='font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D'><o:p> </o:p></span></p><div style='border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in 4.0pt'><div><div style='border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in'><p class=MsoNormal><b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'>From:</span></b><span style='font-size:10.0pt;font-family:"Tahoma","sans-serif"'> Reid Kleckner [mailto:rnk@google.com] <br><b>Sent:</b> Monday, December 09, 2013 4:04 PM<br><b>To:</b> Timur Iskhodzhanov<br><b>Cc:</b> David Peixotto; cfe-commits<br><b>Subject:</b> Re: r196606 - Add option to use temporary file for assembling with clang<o:p></o:p></span></p></div></div><p class=MsoNormal><o:p> </o:p></p><div><p class=MsoNormal>This is still happening for me.  The win32 target doesn't support an external assembler.  We emit a diagnostic and then hit an assertion somewhere downstream.<o:p></o:p></p></div><div><p class=MsoNormal style='margin-bottom:12.0pt'><o:p> </o:p></p><div><p class=MsoNormal>On Mon, Dec 9, 2013 at 10:22 AM, Timur Iskhodzhanov <<a href="mailto:timurrrr@google.com" target="_blank">timurrrr@google.com</a>> wrote:<o:p></o:p></p><p>This happens on my private bot running check-all.<o:p></o:p></p><p>Reid, can you please help David?<o:p></o:p></p><div><p class=MsoNormal>09 дек. 2013 г. 22:02 пользователь "David Peixotto" <<a href="mailto:dpeixott@codeaurora.org" target="_blank">dpeixott@codeaurora.org</a>> написал:<o:p></o:p></p><div><div><blockquote style='border:none;border-left:solid #CCCCCC 1.0pt;padding:0in 0in 0in 6.0pt;margin-left:4.8pt;margin-right:0in'><p class=MsoNormal><o:p> </o:p></p><p class=MsoNormal style='margin-bottom:12.0pt'>Hi Timur,<br><br>Where do you see this failure? I am not getting a notification from the build bot and I do not see the failure locally. What is the process for debugging a failure like this?<br><br>-David<br><br>> -----Original Message-----<br>> From: Timur Iskhodzhanov [mailto:<a href="mailto:timurrrr@google.com" target="_blank">timurrrr@google.com</a>]<br>> Sent: Monday, December 09, 2013 3:00 AM<br>> To: David Peixotto<br>> Cc: cfe-commits<br>> Subject: Re: r196606 - Add option to use temporary file for assembling<br>> with clang<br>><br>> FYI<br>><br>> I see this test failure after your change:<br>> Command 2: "llvm/build/bin/./clang.EXE" "-no-integrated-as"<br>> "-via-file-asm" "llvm\tools\clang\test\Driver\via-file-asm.c" "-###"<br>> Command 2 Result: 3<br>><br>> Looks like an assertion failure?<br>><br>> 2013/12/7 David Peixotto <<a href="mailto:dpeixott@codeaurora.org" target="_blank">dpeixott@codeaurora.org</a>>:<br>> > Author: dpeixott<br>> > Date: Fri Dec  6 14:27:33 2013<br>> > New Revision: 196606<br>> ><br>> > URL: <a href="http://llvm.org/viewvc/llvm-project?rev=196606&view=rev" target="_blank">http://llvm.org/viewvc/llvm-project?rev=196606&view=rev</a><br>> > Log:<br>> > Add option to use temporary file for assembling with clang<br>> ><br>> > This commit adds the flag '-via-file-asm' to the clang driver. The<br>> > purpose of this flag is to have a way to test that clang can consume<br>> > the assembly code that it outputs. When passed this flag, clang will<br>> > generate a temporary file that contains the assembly output from the<br>> > compile step. This assembly file will then be consumed by either the<br>> > integrated assembler or the external assembler. To test that the<br>> > integrated assembler can consume its own output compile with:<br>> ><br>> >   $ clang -integrated-assembler -via-file-asm<br>> ><br>> > Without the '-via-file-asm' flag, clang would directly create the<br>> > object file when using the integrated assembler. With the flag it will<br>> > first create the temporary assembly file and then read that file and<br>> > assemble it with the integrated assembler.<br>> ><br>> > The flow is similar to -save-temps, except that it only effects the<br>> > assembly input and the temporary file is not saved.<br>> ><br>> > Added:<br>> >     cfe/trunk/test/Driver/via-file-asm.c<br>> > Modified:<br>> >     cfe/trunk/include/clang/Driver/Options.td<br>> >     cfe/trunk/lib/Driver/Driver.cpp<br>> ><br>> > Modified: cfe/trunk/include/clang/Driver/Options.td<br>> > URL:<br>> > <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Opt" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang/Driver/Opt</a><br>> > <a href="http://ions.td?rev=196606&r1=196605&r2=196606&view=diff" target="_blank">ions.td?rev=196606&r1=196605&r2=196606&view=diff</a><br>> > ======================================================================<br>> > ========<br>> > --- cfe/trunk/include/clang/Driver/Options.td (original)<br>> > +++ cfe/trunk/include/clang/Driver/Options.td Fri Dec  6 14:27:33 2013<br>> > @@ -1230,6 +1230,8 @@ def rtlib_EQ : Joined<["-", "--"], "rtli  def r<br>> > : Flag<["-"], "r">;  def save_temps : Flag<["-", "--"], "save-temps">,<br>> > Flags<[DriverOption]>,<br>> >    HelpText<"Save intermediate compilation results">;<br>> > +def via_file_asm : Flag<["-", "--"], "via-file-asm">,<br>> > +Flags<[DriverOption]>,<br>> > +  HelpText<"Write assembly to file for input to assemble jobs">;<br>> >  def sectalign : MultiArg<["-"], "sectalign", 3>;  def sectcreate :<br>> > MultiArg<["-"], "sectcreate", 3>;  def sectobjectsymbols :<br>> > MultiArg<["-"], "sectobjectsymbols", 2>;<br>> ><br>> > Modified: cfe/trunk/lib/Driver/Driver.cpp<br>> > URL:<br>> > <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?re" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/lib/Driver/Driver.cpp?re</a><br>> > v=196606&r1=196605&r2=196606&view=diff<br>> > ======================================================================<br>> > ========<br>> > --- cfe/trunk/lib/Driver/Driver.cpp (original)<br>> > +++ cfe/trunk/lib/Driver/Driver.cpp Fri Dec  6 14:27:33 2013<br>> > @@ -1456,6 +1456,7 @@ static const Tool *SelectToolForJob(Comp<br>> ><br>> >    if (TC->useIntegratedAs() &&<br>> >        !C.getArgs().hasArg(options::OPT_save_temps) &&<br>> > +      !C.getArgs().hasArg(options::OPT_via_file_asm) &&<br>> >        !C.getArgs().hasArg(options::OPT__SLASH_FA) &&<br>> >        !C.getArgs().hasArg(options::OPT__SLASH_Fa) &&<br>> >        isa<AssembleJobAction>(JA) &&<br>> ><br>> > Added: cfe/trunk/test/Driver/via-file-asm.c<br>> > URL:<br>> > <a href="http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/via-file-asm" target="_blank">http://llvm.org/viewvc/llvm-project/cfe/trunk/test/Driver/via-file-asm</a><br>> > .c?rev=196606&view=auto<br>> > ======================================================================<br>> > ========<br>> > --- cfe/trunk/test/Driver/via-file-asm.c (added)<br>> > +++ cfe/trunk/test/Driver/via-file-asm.c Fri Dec  6 14:27:33 2013<br>> > @@ -0,0 +1,14 @@<br>> > +// Should save and read back the assembly from a file // RUN: %clang<br>> > +-integrated-as -via-file-asm %s -### 2>&1 | FileCheck %s // CHECK:<br>> > +"-cc1"<br>> > +// CHECK: "-o" "[[TMP:[^"]*]]"<br>> > +// CHECK: -cc1as<br>> > +// CHECK: [[TMP]]<br>> > +<br>> > +// Should not force using the integrated assembler // RUN: %clang<br>> > +-no-integrated-as -via-file-asm %s -### 2>&1 | FileCheck<br>> > +--check-prefix=NO_IAS %s // NO_IAS-NOT: "-cc1as"<br>> > +<br>> > +// Test arm target specifically for the same behavior // RUN: %clang<br>> > +-target arm -integrated-as -via-file-asm %s -### 2>&1 | FileCheck %s<br>> > +// RUN: %clang -target arm -no-integrated-as -via-file-asm %s -###<br>> > +2>&1 | FileCheck --check-prefix=NO_IAS %s<br>> ><br>> ><br>> > _______________________________________________<br>> > cfe-commits mailing list<br>> > <a href="mailto:cfe-commits@cs.uiuc.edu" target="_blank">cfe-commits@cs.uiuc.edu</a><br>> > <a href="http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits" target="_blank">http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits</a><o:p></o:p></p></blockquote></div></div></div></div><p class=MsoNormal><o:p> </o:p></p></div></div></div></body></html>