From 93305bc4620c12042b11a5e721feda7892d2f65d Mon Sep 17 00:00:00 2001 From: Chris Lattner Date: Fri, 20 Apr 2007 20:18:43 +0000 Subject: [PATCH] add a crazy idea git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@36273 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/ARM/README.txt | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/Target/ARM/README.txt b/lib/Target/ARM/README.txt index 417f4a30c31..a75007cd4f8 100644 --- a/lib/Target/ARM/README.txt +++ b/lib/Target/ARM/README.txt @@ -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. -- 2.34.1