diff options
author | Chris Lattner <sabre@nondot.org> | 2006-03-07 04:42:59 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2006-03-07 04:42:59 +0000 |
commit | 5a63c47fb5fd610a98a3425f06a683833c30693b (patch) | |
tree | 090f73c78d20924973b5b214d074149ed84e76d1 /lib/Target/PowerPC/README.txt | |
parent | 784236d7782b4ad57f7f3371bb67a95369241faa (diff) | |
download | llvm-5a63c47fb5fd610a98a3425f06a683833c30693b.tar.gz llvm-5a63c47fb5fd610a98a3425f06a683833c30693b.tar.bz2 llvm-5a63c47fb5fd610a98a3425f06a683833c30693b.tar.xz |
add a note
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26585 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/README.txt')
-rw-r--r-- | lib/Target/PowerPC/README.txt | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/README.txt b/lib/Target/PowerPC/README.txt index 050f614291..8fad506f5c 100644 --- a/lib/Target/PowerPC/README.txt +++ b/lib/Target/PowerPC/README.txt @@ -452,3 +452,17 @@ _test: srwi r3, r2, 24 blr +===-------------------------------------------------------------------------=== + +On the G5, logical CR operations are more expensive in their three +address form: ops that read/write the same register are half as expensive as +those that read from two registers that are different from their destination. + +We should model this with two separate instructions. The isel should generate +the "two address" form of the instructions. When the register allocator +detects that it needs to insert a copy due to the two-addresness of the CR +logical op, it will invoke PPCInstrInfo::convertToThreeAddress. At this point +we can convert to the "three address" instruction, to save code space. + +This only matters when we start generating cr logical ops. + |