The vectoriser uses vectorizable_mask_load_store to handle conditional loads and stores (IFN_MASK_LOAD and IFN_MASK_STORE) but uses vectorizable_load and vectorizable_store for unconditional loads and stores. vectorizable_mask_load_store shares a lot of code with the other two routines, and this split made it awkward to add support for more forms of conditional load and store. This series therefore makes vectorizable_load and vectorizable_store handle both the conditional and unconditional forms.
Series tested on aarch64-linux-gnu (with and without SVE), x86_64-linux-gnu and powerpc64-linux-gnu. Richard