Can I compute my IIR faster given limited possible input values?
Depends on the hardware running your C++ code.  If you have a slow multiply unit and fast branching, then you might be able to replace a few slower multiply-adds with faster adds or subtracts.  But on most modern GHz CPUs, the add/sub branch penalty will likely be slower than a floating-point mul-add by +-1.0.