diff options
| author | Chris Lattner <sabre@nondot.org> | 2006-05-05 21:17:49 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2006-05-05 21:17:49 +0000 |
| commit | 3e3f2c63c389ba23346b7b681f43089ab37fd35d (patch) | |
| tree | 2883680571674ac85ce08c05cf53d5932ccc9fec /llvm/lib/Debugger/SourceLanguage-Unknown.cpp | |
| parent | e745c7de0e0cbe42cbdbbab869f14856f27b7ff0 (diff) | |
| download | bcm5719-llvm-3e3f2c63c389ba23346b7b681f43089ab37fd35d.tar.gz bcm5719-llvm-3e3f2c63c389ba23346b7b681f43089ab37fd35d.zip | |
More aggressively sink GEP offsets into loops. For example, before we
generated:
movl 8(%esp), %eax
movl %eax, %edx
addl $4316, %edx
cmpb $1, %cl
ja LBB1_2 #cond_false
LBB1_1: #cond_true
movl L_QuantizationTables720$non_lazy_ptr, %ecx
movl %ecx, (%edx)
movl L_QNOtoQuantTableShift720$non_lazy_ptr, %edx
movl %edx, 4460(%eax)
ret
...
Now we generate:
movl 8(%esp), %eax
cmpb $1, %cl
ja LBB1_2 #cond_false
LBB1_1: #cond_true
movl L_QuantizationTables720$non_lazy_ptr, %ecx
movl %ecx, 4316(%eax)
movl L_QNOtoQuantTableShift720$non_lazy_ptr, %ecx
movl %ecx, 4460(%eax)
ret
... which uses one fewer register.
llvm-svn: 28129
Diffstat (limited to 'llvm/lib/Debugger/SourceLanguage-Unknown.cpp')
0 files changed, 0 insertions, 0 deletions

