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

Duncan Sands baldrick at free.fr
Sat Feb 16 13:01:54 PST 2008


Author: baldrick
Date: Sat Feb 16 15:01:53 2008
New Revision: 47222

URL: http://llvm.org/viewvc/llvm-project?rev=47222&view=rev
Log:
Remove some code originally inspired by
expand_assignment in expr.c.  I don't think
this is needed, and I suspect it's not needed
in expand_assignment either and is just ancient
code that no-one bothered or dared to remove.

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=47222&r1=47221&r2=47222&view=diff

==============================================================================
--- llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp (original)
+++ llvm-gcc-4.2/trunk/gcc/llvm-convert.cpp Sat Feb 16 15:01:53 2008
@@ -2714,17 +2714,7 @@
 
     // Non-bitfield aggregate value.
     MemRef NewLoc(LV.Ptr, Alignment, isVolatile);
-
-    // In case we are returning the contents of an object which overlaps
-    // the place the value is being stored, use a safe function when copying
-    // a value through a pointer into a structure value return block.
-    if (TREE_CODE (lhs) == RESULT_DECL && TREE_CODE (rhs) == INDIRECT_REF) {
-      MemRef Tmp = CreateTempLoc(ConvertType(TREE_TYPE(rhs)));
-      Emit(rhs, &Tmp);
-      EmitAggregateCopy(NewLoc, Tmp, TREE_TYPE(rhs));
-    } else {
-      Emit(rhs, &NewLoc);
-    }
+    Emit(rhs, &NewLoc);
 
     if (DestLoc)
       EmitAggregateCopy(*DestLoc, NewLoc, TREE_TYPE(exp));





More information about the llvm-commits mailing list