summaryrefslogtreecommitdiff
path: root/lib/Target/PowerPC/README.txt
diff options
context:
space:
mode:
authorChris Lattner <sabre@nondot.org>2006-03-07 04:42:59 +0000
committerChris Lattner <sabre@nondot.org>2006-03-07 04:42:59 +0000
commit5a63c47fb5fd610a98a3425f06a683833c30693b (patch)
tree090f73c78d20924973b5b214d074149ed84e76d1 /lib/Target/PowerPC/README.txt
parent784236d7782b4ad57f7f3371bb67a95369241faa (diff)
downloadllvm-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.txt14
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.
+