Loops are a daily part of programming - if not, you’re probably doing something terribly wrong, or incomprehensibly right. For the rest of us, loops are these rather innocent looking pieces of code that reduce the amount of typing we have to do. Oftentimes they make it possible for us to do a wide variety of things otherwise not possible or practical.
My biggest problem with tight loops in performance-critical areas is that every time the loop iterates, the CPU blocks until it can know whether to continue with the loop or not.