[llvm-commits] [llvm-gcc-4.2] r104042 - /llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Dale Johannesen dalej at apple.com
Tue May 18 12:02:52 PDT 2010


Author: johannes
Date: Tue May 18 14:02:52 2010
New Revision: 104042

URL: http://llvm.org/viewvc/llvm-project?rev=104042&view=rev
Log:
Mark reads from register variables as sideeffect.  The
point of this is to create an order dependency when there
are multiple uses of the same register; the scheduler could
screw them up (see testcase, which is next checkin). 7993104.


Modified:
    llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp

Modified: llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp?rev=104042&r1=104041&r2=104042&view=diff
==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp Tue May 18 14:02:52 2010
@@ -4200,7 +4200,7 @@
   int RegNum = decode_reg_name(Name);
   Name = LLVM_GET_REG_NAME(Name, RegNum);
 
-  InlineAsm *IA = InlineAsm::get(FTy, "", "={"+std::string(Name)+"}", false);
+  InlineAsm *IA = InlineAsm::get(FTy, "", "={"+std::string(Name)+"}", true);
   CallInst *Call = Builder.CreateCall(IA);
   Call->setDoesNotThrow();
   return Call;





More information about the llvm-commits mailing list