1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-11-24 19:52:54 +01:00
llvm-mirror/test/LiveVar/loops.ll
Vikram S. Adve e801dabfc7 Regression tests for live-variable analysis on machine code
generated by llc.

llvm-svn: 1882
2002-03-16 21:42:33 +00:00

33 lines
741 B
LLVM

implementation
;; Test live variable analysis:
;; -- a simple nested loop
;; -- a function call with arguments and return value
int "LoopTest"(int %i, int %j)
begin
Start:
%j1 = add int 0, 0
br label %L1Header
L1Header:
%j2 = phi int [%j1, %Start], [%j3, %L2Done]
%i1 = add int 0, 0 ; %i1 = 0
br label %L2Body
L2Body:
%wl = phi int [%j, %L1Header], [%wl, %L2Body] ;; Useless PHI
%i2 = phi int [%i1, %L1Header], [%i3, %L2Body]
%i3 = add int %i2, 1
%L2Done = seteq int %i3, 10
br bool %L2Done, label %L2Done, label %L2Body
L2Done:
%j3 = add int %j2, %i3
%L1Done = seteq int %j3, 100
br bool %L1Done, label %L1Done, label %L1Header
L1Done:
%recurse = call int %LoopTest(int %j3, int %j3)
ret int %recurse
end