DSP architectures typically provide indirect addressing modes with aut
o-increment and decrement. In addition, indexing mode is not available
, and there are usually few, if any, general-purpose registers. Hence,
it is necessary to use address registers and perform address arithmet
ic to access automatic variables. Subsuming the address arithmetic int
o auto-increment and auto-decrement modes improves the size of the gen
erated code. In this paper we present a formulation of the problem of
optimal storage assignment such that explicit instructions for address
arithmetic are minimized. We prove that for the case of a single addr
ess register the decision problem is NP-complete. We then generalize t
he problem to multiple address registers. For both cases heuristic alg
orithms are given. Our experimental results indicate an improvement of
3.