Creating PHI node which contains elements from same entity got with GEP instructions doesn't allow later sink these GEP instructions on CodeGenPrepare phase.
This prevents generating offset addressing on such targets as RISC-V.
This patch tries to modify IR in order to allow sinking geps and generating addressing with offsets for arrays.
If we get the next IR
array_id1 = gep array, <const> array_id2 = gep array, <const1> ... phi_node = phi(array, arra_id1, array_id2, ...) store <value>, phi_node
Clang doesn't analyze that all instances in phi_node have the same base, so during code generation we don't need extra register and we should reuse base+offset.
This can speed up some benchmarks, so added this behaviour under the flag.