diff options
author | Bill Wendling <isanbard@gmail.com> | 2010-06-23 23:00:16 +0000 |
---|---|---|
committer | Bill Wendling <isanbard@gmail.com> | 2010-06-23 23:00:16 +0000 |
commit | f470747a365a5edac817c27359e020fa006b7d69 (patch) | |
tree | 232bdaf7547bf175c6c574d6b10f36494637fdc4 /lldb/source/Commands/CommandObjectExpression.cpp | |
parent | 253c6bf366ba8b696c058126c4d3397e583b4244 (diff) | |
download | bcm5719-llvm-f470747a365a5edac817c27359e020fa006b7d69.tar.gz bcm5719-llvm-f470747a365a5edac817c27359e020fa006b7d69.zip |
We are missing opportunites to use ldm. Take code like this:
void t(int *cp0, int *cp1, int *dp, int fmd) {
int c0, c1, d0, d1, d2, d3;
c0 = (*cp0++ & 0xffff) | ((*cp1++ << 16) & 0xffff0000);
c1 = (*cp0++ & 0xffff) | ((*cp1++ << 16) & 0xffff0000);
/* ... */
}
It code gens into something pretty bad. But with this change (analogous to the
X86 back-end), it will use ldm and generate few instructions.
llvm-svn: 106693
Diffstat (limited to 'lldb/source/Commands/CommandObjectExpression.cpp')
0 files changed, 0 insertions, 0 deletions