[llvm-commits] CVS: llvm/lib/Target/ARM/README.txt

Chris Lattner sabre at nondot.org
Fri Apr 20 13:19:01 PDT 2007



Changes in directory llvm/lib/Target/ARM:

README.txt updated: 1.22 -> 1.23
---
Log message:

add a crazy idea


---
Diffs of the changes:  (+12 -0)

 README.txt |   12 ++++++++++++
 1 files changed, 12 insertions(+)


Index: llvm/lib/Target/ARM/README.txt
diff -u llvm/lib/Target/ARM/README.txt:1.22 llvm/lib/Target/ARM/README.txt:1.23
--- llvm/lib/Target/ARM/README.txt:1.22	Tue Apr 17 13:03:00 2007
+++ llvm/lib/Target/ARM/README.txt	Fri Apr 20 15:18:43 2007
@@ -17,6 +17,18 @@
 
 //===---------------------------------------------------------------------===//
 
+Crazy idea:  Consider code that uses lots of 8-bit or 16-bit values.  By the
+time regalloc happens, these values are now in a 32-bit register, usually with
+the top-bits known to be sign or zero extended.  If spilled, we should be able
+to spill these to a 8-bit or 16-bit stack slot, zero or sign extending as part
+of the reload.
+
+Doing this reduces the size of the stack frame (important for thumb etc), and
+also increases the likelihood that we will be able to reload multiple values
+from the stack with a single load.
+
+//===---------------------------------------------------------------------===//
+
 The constant island pass is in good shape.  Some cleanups might be desirable,
 but there is unlikely to be much improvement in the generated code.
 






More information about the llvm-commits mailing list