[clang] Fix TemplateInstantiator crash transforming loop hint argument (#172289)
A generic lambda inside a generic function is (currently) instantiated twice. Thus the argument expression of a loop hint inside such a lambda may still be value dependent after the first instantiation and we must protect against this in `TransformLoopHintAttr`. We also fix a bug in this function where the special handling of an unroll(0|1) hint could be applied to *other* loop hints, if they receive an argument 1 after instantiation.