1; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32-- | \ 2; RUN: not grep addi 3; RUN: llc -verify-machineinstrs -code-model=small < %s -mtriple=ppc64-- | \ 4; RUN: not grep addi 5 6@Glob = global i64 4 7 8define ptr @test0(ptr %X, ptr %dest) nounwind { 9 %Y = getelementptr i32, ptr %X, i32 4 10 %A = load i32, ptr %Y 11 store i32 %A, ptr %dest 12 ret ptr %Y 13} 14 15define ptr @test1(ptr %X, ptr %dest) nounwind { 16 %Y = getelementptr i32, ptr %X, i32 4 17 %A = load i32, ptr %Y 18 store i32 %A, ptr %dest 19 ret ptr %Y 20} 21 22define ptr @test2(ptr %X, ptr %dest) nounwind { 23 %Y = getelementptr i16, ptr %X, i32 4 24 %A = load i16, ptr %Y 25 %B = sext i16 %A to i32 26 store i32 %B, ptr %dest 27 ret ptr %Y 28} 29 30define ptr @test3(ptr %X, ptr %dest) nounwind { 31 %Y = getelementptr i16, ptr %X, i32 4 32 %A = load i16, ptr %Y 33 %B = zext i16 %A to i32 34 store i32 %B, ptr %dest 35 ret ptr %Y 36} 37 38define ptr @test3a(ptr %X, ptr %dest) nounwind { 39 %Y = getelementptr i16, ptr %X, i32 4 40 %A = load i16, ptr %Y 41 %B = sext i16 %A to i64 42 store i64 %B, ptr %dest 43 ret ptr %Y 44} 45 46define ptr @test4(ptr %X, ptr %dest) nounwind { 47 %Y = getelementptr i64, ptr %X, i32 4 48 %A = load i64, ptr %Y 49 store i64 %A, ptr %dest 50 ret ptr %Y 51} 52 53define ptr @test5(ptr %X) nounwind { 54 %Y = getelementptr i16, ptr %X, i32 4 55 store i16 7, ptr %Y 56 ret ptr %Y 57} 58 59define ptr @test6(ptr %X, i64 %A) nounwind { 60 %Y = getelementptr i64, ptr %X, i32 4 61 store i64 %A, ptr %Y 62 ret ptr %Y 63} 64 65define ptr @test7(ptr %X, i64 %A) nounwind { 66 store i64 %A, ptr @Glob 67 ret ptr @Glob 68} 69