enhance FoldReinterpretLoadFromConstPtr to handle loads of up to 32 
bytes (i256).

llvm-svn: 84941
diff --git a/llvm/test/Transforms/ConstProp/loads.ll b/llvm/test/Transforms/ConstProp/loads.ll
index f3633cc..3096ed3 100644
--- a/llvm/test/Transforms/ConstProp/loads.ll
+++ b/llvm/test/Transforms/ConstProp/loads.ll
@@ -4,6 +4,7 @@
 
 @test1 = constant {{i32,i8},i32} {{i32,i8} { i32 -559038737, i8 186 }, i32 -889275714 }
 @test2 = constant double 1.0
+@test3 = constant {i64, i64} { i64 123, i64 112312312 }
 
 ; Simple load
 define i32 @test1() {
@@ -66,3 +67,13 @@
 ; @test8
 ; CHECK: ret double 0xDEADBEBA
 }
+
+
+; i128 load.
+define i128 @test9() {
+  %r = load i128* bitcast({i64, i64}* @test3 to i128*)
+  ret i128 %r
+
+; @test9
+; CHECK: ret i128 112312312
+}