How to pass list for O1,O2 and O3 separately

I believe they’re executed in the order that you see there. However, I don’t know of a way to disable arbitrary passes short of patching them out of llvm/lib/Passes/PassBuilderPipelines.cpp (or clang/lib/CodeGen/BackendUtil.cpp if they’re specific to Clang’s pipeline), which might cause problems with passes that run after the now-missing one.