Avoid SLP vectorization for some instructions

Is there any flag or metadata that could be used to avoid applying SLP vectorization on some instructions?

There are no such options. What do you want to do?

Thank you for your response. I am trying to make use of scalar units when the vector units are busy (consider a case that the number of vector instructions that are issued is more than the capacity of the system and the instruction queue for vector units is full). I have added scalar instruction into a vectorized loop but SLP vectorizer removes those scalar instructions from the loop. Now I am looking for a way to disable slp vectorization on the loop and re-enable it for the rest of the code. I am wondering if there is any way to do that.

I don’t quite understand how SLP can remove them. It can vectorize them, yes, but not remove. If they gets vectorized, this is known problem. It requires to teach SLP about loop vectorizer and tune cost model to correctly handle pipeline.