Use the llvm-upgrade program to upgrade llvm assembly.
[oota-llvm.git] / test / Transforms / LICM / call_sink_const_function.ll
1 ; RUN: llvm-upgrade < %s | llvm-as | opt -basicaa -licm | llvm-dis | %prcontext sin 1 | grep Out: 
2 declare double %sin(double)
3 declare void %foo()
4
5 double %test(double %X) {
6         br label %Loop
7
8 Loop:
9         call void %foo()    ;; Unknown effects!
10
11         %A = call double %sin(double %X)   ;; Can still hoist/sink call
12         br bool true, label %Loop, label %Out
13
14 Out:
15         ret double %A
16 }