Does this version look better?
In terms of clarity, yes. Only one thing:
+ if (/* If we already have a loop struct for the original loop, don't + allocate a new one. */ + !orig_loop_has_loop_struct
Don't really like the formatting with this comment. I'd pull it in front of the if statement, and change it to
/* Allocate a loop structure for the original loop unless we already had one. */ Ok with that change. Bernd