add a crazy idea
authorChris Lattner <sabre@nondot.org>
Fri, 20 Apr 2007 20:18:43 +0000 (20:18 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 20 Apr 2007 20:18:43 +0000 (20:18 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36273 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/ARM/README.txt

index 417f4a30c31192942220d712f337717cbd9ae1bb..a75007cd4f896741b50fb3f338e688df43407453 100644 (file)
@@ -17,6 +17,18 @@ Reimplement 'select' in terms of 'SEL'.
 
 //===---------------------------------------------------------------------===//
 
+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.