Fixes a bug with __builtin_vsx_lxvdw4x on Little Endian systems

llvm-svn: 241108
diff --git a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
index e3d5fd0..f657c1f 100644
--- a/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
+++ b/llvm/lib/Target/PowerPC/PPCISelLowering.cpp
@@ -9960,7 +9960,10 @@
   case ISD::INTRINSIC_W_CHAIN: {
     MemIntrinsicSDNode *Intrin = cast<MemIntrinsicSDNode>(N);
     Chain = Intrin->getChain();
-    Base = Intrin->getBasePtr();
+    // I supppose that similarly to the store case below, this doesn't get
+    // us what we want. Get operand 2 instead.
+    //Base = Intrin->getBasePtr();
+    Base = Intrin->getOperand(2);
     MMO = Intrin->getMemOperand();
     break;
   }