diff options
| author | Chris Lattner <sabre@nondot.org> | 2006-06-20 22:34:10 +0000 |
|---|---|---|
| committer | Chris Lattner <sabre@nondot.org> | 2006-06-20 22:34:10 +0000 |
| commit | 7e742e46aca4a6b1f05561e5a902e64322ed1d6e (patch) | |
| tree | 215ae3f0a26eae6c3e5428b305e7e873f4c78335 /llvm/docs/CommandGuide/llvm2cpp.pod | |
| parent | a7bd00b4517c3aca1501a52cd39e54ccd247c8a7 (diff) | |
| download | bcm5719-llvm-7e742e46aca4a6b1f05561e5a902e64322ed1d6e.tar.gz bcm5719-llvm-7e742e46aca4a6b1f05561e5a902e64322ed1d6e.zip | |
Add some 64-bit logical ops.
Split imm16Shifted into a sext/zext form for 64-bit support.
Add some patterns for immediate formation. For example, we now compile this:
static unsigned long long Y;
void test3() {
Y = 0xF0F00F00;
}
into:
_test3:
li r2, 3840
lis r3, ha16(_Y)
xoris r2, r2, 61680
std r2, lo16(_Y)(r3)
blr
GCC produces:
_test3:
li r0,0
lis r2,ha16(_Y)
ori r0,r0,61680
sldi r0,r0,16
ori r0,r0,3840
std r0,lo16(_Y)(r2)
blr
llvm-svn: 28883
Diffstat (limited to 'llvm/docs/CommandGuide/llvm2cpp.pod')
0 files changed, 0 insertions, 0 deletions

