Obviously, a string of empty-statements (should...) generate no code at all, no matter how many repetitions there are. This is purely a syntactic construct; not a semantic one.
The only way to know what the Perl Implementors (ommmm ....) actually did, is to look for yourself at perlguts (or its v6 equivalent). But it is fair to predict that they only concerned themselves with real-world probable cases, not hypothetical ones. (There are no Whetstones to be dealt with here ...) Therefore, the mere existence of an empty <body> probably isn’t enough by itself to cause no code at all to be generated. After all, many Perl programs live-and-die by their “side effects,” that is, what happens in the conditional-block that controls a loop vs. the loop itself. Would the optimizer be smart-enough to omit a block that was altogether empty? Guess it depends on whether the author of the thing cared to test for it. Most likely, it wasn’t worth the bother.