fix PR3489, use bits instead of bytes.


git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63916 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/lib/Transforms/Scalar/ScalarReplAggregates.cpp b/lib/Transforms/Scalar/ScalarReplAggregates.cpp
index c1c8e03..a396dc4 100644
--- a/lib/Transforms/Scalar/ScalarReplAggregates.cpp
+++ b/lib/Transforms/Scalar/ScalarReplAggregates.cpp
@@ -1431,7 +1431,7 @@
     Value *Res = UndefValue::get(ST);
     for (unsigned i = 0, e = ST->getNumElements(); i != e; ++i) {
       Value *Elt = ConvertScalar_ExtractValue(FromVal, ST->getElementType(i),
-                                              Offset+Layout.getElementOffset(i),
+                                        Offset+Layout.getElementOffsetInBits(i),
                                               Builder);
       Res = Builder.CreateInsertValue(Res, Elt, i, "tmp");
     }
@@ -1538,7 +1538,7 @@
     for (unsigned i = 0, e = ST->getNumElements(); i != e; ++i) {
       Value *Elt = Builder.CreateExtractValue(SV, i, "tmp");
       Old = ConvertScalar_InsertValue(Elt, Old, 
-                                      Offset+Layout.getElementOffset(i),
+                                      Offset+Layout.getElementOffsetInBits(i),
                                       Builder);
     }
     return Old;