OSDN Git Service

add a note
authorChris Lattner <sabre@nondot.org>
Tue, 7 Mar 2006 04:42:59 +0000 (04:42 +0000)
committerChris Lattner <sabre@nondot.org>
Tue, 7 Mar 2006 04:42:59 +0000 (04:42 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@26585 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/README.txt

index 050f614..8fad506 100644 (file)
@@ -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.
+