blob: 302ae604663d1e4dd6d934019f9375dc1b83ae76 [file] [log] [blame]
Reid Spencerd0e30dc2006-12-02 04:23:10 +00001; RUN: llvm-upgrade < %s | llvm-as | opt -basicaa -load-vn -gcse -instcombine | llvm-dis | not grep sub
Chris Lattnerecdbee52004-03-15 04:17:53 +00002declare int %strlen(sbyte*)
3declare void %use(int %X)
4
5sbyte %test(sbyte* %P, sbyte* %Q) {
6 %A = load sbyte* %Q
7 %X = call int %strlen(sbyte* %P)
8 %B = load sbyte* %Q ;; CSE with A.
9 call void %use(int %X) ;; make strlen not dead
10
11 %C = sub sbyte %A, %B
12 ret sbyte %C
13}