Changes in directory llvm/lib/Target/PowerPC:
README.txt updated: 1.103 -> 1.104 --- Log message: add a note from viterbi --- Diffs of the changes: (+29 -0) README.txt | 29 +++++++++++++++++++++++++++++ 1 files changed, 29 insertions(+) Index: llvm/lib/Target/PowerPC/README.txt diff -u llvm/lib/Target/PowerPC/README.txt:1.103 llvm/lib/Target/PowerPC/README.txt:1.104 --- llvm/lib/Target/PowerPC/README.txt:1.103 Fri Oct 27 17:02:19 2006 +++ llvm/lib/Target/PowerPC/README.txt Tue Nov 7 12:30:21 2006 @@ -11,6 +11,35 @@ ===-------------------------------------------------------------------------=== +We compile the hottest inner loop of viterbi to: + + li r6, 0 + b LBB1_84 ;bb432.i +LBB1_83: ;bb420.i + lbzx r8, r5, r7 + addi r6, r7, 1 + stbx r8, r4, r7 +LBB1_84: ;bb432.i + mr r7, r6 + cmplwi cr0, r7, 143 + bne cr0, LBB1_83 ;bb420.i + +The CBE manages to produce: + + li r0, 143 + mtctr r0 +loop: + lbzx r2, r2, r11 + stbx r0, r2, r9 + addi r2, r2, 1 + bdz later + b loop + +This could be much better (bdnz instead of bdz) but it still beats us. If we +produced this with bdnz, the loop would be a single dispatch group. + +===-------------------------------------------------------------------------=== + Compile: void foo(int *P) { _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits