lastchancename:
setup() is only ever executed once - but you can do almost whatever you want inside it... even 'looping' ! Your code could avoid the actual loop() function forever if you wanted to...!
Be warned that if you do, then then you cannot use serialEvent() as it is in the same for loop that contains the call too loop().
As loop() is a subroutine, the variable declared in loop() are reset on each call or pass through loop(); unless declared as static.