diff options
| author | Chris Lattner <sabre@nondot.org> | 2006-05-05 06:10:43 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2006-05-05 06:10:43 +0000 |
| commit | 5ac42936069a88395aa7087caec6fabd5d57e63f (patch) | |
| tree | 21836606a5a18794874653a205e5942cf4bf0501 /llvm/lib/Debugger/SourceLanguage.cpp | |
| parent | 812646aa0cd13a876912fa2bb632f1a6ed450da6 (diff) | |
| download | bcm5719-llvm-5ac42936069a88395aa7087caec6fabd5d57e63f.tar.gz bcm5719-llvm-5ac42936069a88395aa7087caec6fabd5d57e63f.zip | |
Pull and through and/or/xor. This compiles some bitfield code to:
mov EAX, DWORD PTR [ESP + 4]
mov ECX, DWORD PTR [EAX]
mov EDX, ECX
add EDX, EDX
or EDX, ECX
and EDX, -2147483648
and ECX, 2147483647
or EDX, ECX
mov DWORD PTR [EAX], EDX
ret
instead of:
sub ESP, 4
mov DWORD PTR [ESP], ESI
mov EAX, DWORD PTR [ESP + 8]
mov ECX, DWORD PTR [EAX]
mov EDX, ECX
add EDX, EDX
mov ESI, ECX
and ESI, -2147483648
and EDX, -2147483648
or EDX, ESI
and ECX, 2147483647
or EDX, ECX
mov DWORD PTR [EAX], EDX
mov ESI, DWORD PTR [ESP]
add ESP, 4
ret
llvm-svn: 28122
Diffstat (limited to 'llvm/lib/Debugger/SourceLanguage.cpp')
0 files changed, 0 insertions, 0 deletions

