Automated Data-Flow Optimization for Digital Signal Processors