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 | 0ea70b219a8408a25eaa522cbfc7e09f6dbc9d87 (patch) | |
tree | 89ff5b2dbf4486b4f4625ce2396486fc625a55ac /lib/CodeGen/MachineFunction.cpp | |
parent | cf9be26e5d99c50b350aa8c5bf6ce6bc8322b213 (diff) |
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
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28883 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/CodeGen/MachineFunction.cpp')
0 files changed, 0 insertions, 0 deletions