The default value of 3 was specified in two places. Use the actual value of the cl::init to avoid repeating it.
The generic subtarget has neither of these features. Rather than forcing HasMovrel on, it is simpler to expand dynamic vector indexing to a sequence of compare/select instructions. NFC for real subtargets.