Add simple pass for removing redundant vsetvli instructions within a basic block. This handles the case where the AVL register and VTYPE immediate are the same and no other instructions that change VTYPE or VL are between them.
There are going to be more opportunities for improvement in this space as we development more complex tests.
I don't think we want to use GVL as term here. It is not a standard term of the V-spec.
The spec says new value of vl (https://github.com/riscv/riscv-v-spec/blob/master/v-spec.adoc#61-vsetvlivsetvl-instructions) which is a bit verbose, so perhaps just saying the VL output will do.