blob: 8055c5271f4a498a2465704ca6826e206a544198 [file] [log] [blame]
Duncan Sands8a3e9d22007-11-23 19:30:27 +00001; RUN: llvm-as < %s | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | not grep sub
Chris Lattnerecdbee52004-03-15 04:17:53 +00002
Duncan Sands8a3e9d22007-11-23 19:30:27 +00003declare i32 @strlen(i8*) readonly
Chris Lattnerecdbee52004-03-15 04:17:53 +00004
Duncan Sands8a3e9d22007-11-23 19:30:27 +00005declare void @use(i32)
6
7define i8 @test(i8* %P, i8* %Q) {
8 %A = load i8* %Q ; <i8> [#uses=1]
9 %X = call i32 @strlen( i8* %P ) readonly ; <i32> [#uses=1]
10 %B = load i8* %Q ; <i8> [#uses=1]
11 call void @use( i32 %X )
12 %C = sub i8 %A, %B ; <i8> [#uses=1]
13 ret i8 %C
Chris Lattnerecdbee52004-03-15 04:17:53 +000014}