[llvm-commits] [llvm] r160408 - /llvm/trunk/docs/LangRef.html

Nuno Lopes nunoplopes at sapo.pt
Wed Jul 18 08:30:37 PDT 2012


Quoting Duncan Sands <baldrick at free.fr>:

> Hi Nuno,
>
>> Apparently it's possible to do an 'invoke asm'.
>
> asm's are nounwind though, right?

I have no clue. There's only one test doing 'invoke asm' on LLVM tree  
(test/CodeGen/Generic/2007-12-17-InvokeAsm.ll). However, CodeGen  
creates an edge to the unwind BB in the selection DAG for inline ASM.
I guess you could call a function from inline assembly that may  
unwind. I'm not sure LLVM supports that, though.  But if not, it  
probably doesn't make sense to support 'invoke asm' either..

Nuno


> Ciao, Duncan.
>
>> Update the language reference to reflect that.
>>
>> Modified:
>>      llvm/trunk/docs/LangRef.html
>>
>> Modified: llvm/trunk/docs/LangRef.html
>> URL:  
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/docs/LangRef.html?rev=160408&r1=160407&r2=160408&view=diff
>> ==============================================================================
>> --- llvm/trunk/docs/LangRef.html (original)
>> +++ llvm/trunk/docs/LangRef.html Tue Jul 17 18:51:33 2012
>> @@ -2867,8 +2867,9 @@
>>   </pre>
>>
>>   <p>Inline assembler expressions may <b>only</b> be used as the  
>> callee operand of
>> -   a <a href="#i_call"><tt>call</tt> instruction</a>.  Thus, typically we
>> -   have:</p>
>> +   a <a href="#i_call"><tt>call</tt></a> or an
>> +   <a href="#i_invoke"><tt>invoke</tt></a> instruction.
>> +   Thus, typically we have:</p>
>>
>>   <pre class="doc_code">
>>   %X = call i32 asm "<a href="#int_bswap">bswap</a> $0", "=r,r"(i32 %Y)
>>
>>



More information about the llvm-commits mailing list