69 lines · plain
1; RUN: llc -verify-machineinstrs < %s -mtriple=ppc32-- | \2; RUN: not grep addi3; RUN: llc -verify-machineinstrs -code-model=small < %s -mtriple=ppc64-- | \4; RUN: not grep addi5 6@Glob = global i64 47 8define ptr @test0(ptr %X, ptr %dest) nounwind {9 %Y = getelementptr i32, ptr %X, i32 410 %A = load i32, ptr %Y11 store i32 %A, ptr %dest12 ret ptr %Y13}14 15define ptr @test1(ptr %X, ptr %dest) nounwind {16 %Y = getelementptr i32, ptr %X, i32 417 %A = load i32, ptr %Y18 store i32 %A, ptr %dest19 ret ptr %Y20}21 22define ptr @test2(ptr %X, ptr %dest) nounwind {23 %Y = getelementptr i16, ptr %X, i32 424 %A = load i16, ptr %Y25 %B = sext i16 %A to i3226 store i32 %B, ptr %dest27 ret ptr %Y28}29 30define ptr @test3(ptr %X, ptr %dest) nounwind {31 %Y = getelementptr i16, ptr %X, i32 432 %A = load i16, ptr %Y33 %B = zext i16 %A to i3234 store i32 %B, ptr %dest35 ret ptr %Y36}37 38define ptr @test3a(ptr %X, ptr %dest) nounwind {39 %Y = getelementptr i16, ptr %X, i32 440 %A = load i16, ptr %Y41 %B = sext i16 %A to i6442 store i64 %B, ptr %dest43 ret ptr %Y44}45 46define ptr @test4(ptr %X, ptr %dest) nounwind {47 %Y = getelementptr i64, ptr %X, i32 448 %A = load i64, ptr %Y49 store i64 %A, ptr %dest50 ret ptr %Y51}52 53define ptr @test5(ptr %X) nounwind {54 %Y = getelementptr i16, ptr %X, i32 455 store i16 7, ptr %Y56 ret ptr %Y57}58 59define ptr @test6(ptr %X, i64 %A) nounwind {60 %Y = getelementptr i64, ptr %X, i32 461 store i64 %A, ptr %Y62 ret ptr %Y63}64 65define ptr @test7(ptr %X, i64 %A) nounwind {66 store i64 %A, ptr @Glob67 ret ptr @Glob68}69