summaryrefslogtreecommitdiffstats
path: root/llvm/lib/Bytecode
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-11-08 01:03:21 +0000
committerChris Lattner <sabre@nondot.org>2006-11-08 01:03:21 +0000
commitbf3b57f221d1d73551101f72b2c0a2c9867d2e9a (patch)
tree14206382e7899c41bab14f30e352f8f4356feb94 /llvm/lib/Bytecode
parent800596d60e48e55f806e225adde4c905f3296b32 (diff)
downloadbcm5719-llvm-bf3b57f221d1d73551101f72b2c0a2c9867d2e9a.tar.gz
bcm5719-llvm-bf3b57f221d1d73551101f72b2c0a2c9867d2e9a.zip
optimize single MBB loops better. In particular, produce:
LBB1_57: #bb207.i movl 72(%esp), %ecx movb (%ecx,%eax), %cl movl 80(%esp), %edx movb %cl, 1(%edx,%eax) incl %eax cmpl $143, %eax jne LBB1_57 #bb207.i jmp LBB1_64 #cond_next255.i intead of: LBB1_57: #bb207.i movl 72(%esp), %ecx movb (%ecx,%eax), %cl movl 80(%esp), %edx movb %cl, 1(%edx,%eax) incl %eax cmpl $143, %eax je LBB1_64 #cond_next255.i jmp LBB1_57 #bb207.i This eliminates a branch per iteration of the loop. This hurted PPC particularly, because the extra branch meant another dispatch group for each iteration of the loop. llvm-svn: 31530
Diffstat (limited to 'llvm/lib/Bytecode')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud