blob: 792c271d0c0857d65cdebda3088b8923134bc582 [file] [log] [blame]
Dan Gohmanc8054d92009-09-09 00:09:15 +00001; RUN: llc < %s -mtriple=powerpc64-apple-darwin | grep extsw | count 2
Evan Cheng7f6b7882006-07-07 21:36:24 +00002
Tanya Lattner8bf97c22008-03-25 04:26:08 +00003@lens = external global i8* ; <i8**> [#uses=1]
4@vals = external global i32* ; <i32**> [#uses=1]
Evan Cheng7f6b7882006-07-07 21:36:24 +00005
Tanya Lattner8bf97c22008-03-25 04:26:08 +00006define i32 @test(i32 %i) {
David Blaikiea79ac142015-02-27 21:17:42 +00007 %tmp = load i8*, i8** @lens ; <i8*> [#uses=1]
David Blaikie79e6c742015-02-27 19:29:02 +00008 %tmp1 = getelementptr i8, i8* %tmp, i32 %i ; <i8*> [#uses=1]
David Blaikiea79ac142015-02-27 21:17:42 +00009 %tmp.upgrd.1 = load i8, i8* %tmp1 ; <i8> [#uses=1]
Tanya Lattner8bf97c22008-03-25 04:26:08 +000010 %tmp2 = zext i8 %tmp.upgrd.1 to i32 ; <i32> [#uses=1]
David Blaikiea79ac142015-02-27 21:17:42 +000011 %tmp3 = load i32*, i32** @vals ; <i32*> [#uses=1]
Tanya Lattner8bf97c22008-03-25 04:26:08 +000012 %tmp5 = sub i32 1, %tmp2 ; <i32> [#uses=1]
David Blaikie79e6c742015-02-27 19:29:02 +000013 %tmp6 = getelementptr i32, i32* %tmp3, i32 %tmp5 ; <i32*> [#uses=1]
David Blaikiea79ac142015-02-27 21:17:42 +000014 %tmp7 = load i32, i32* %tmp6 ; <i32> [#uses=1]
Tanya Lattner8bf97c22008-03-25 04:26:08 +000015 ret i32 %tmp7
Evan Cheng7f6b7882006-07-07 21:36:24 +000016}
Tanya Lattner8bf97c22008-03-25 04:26:08 +000017