replay a vim macro until end of buffer

Solution 1:

Personally I would do

VG:normal @x

Edit: changed register to the one you specified.

Solution 2:

You can do (in command mode)

:%normal @x

Solution 3:

make recursive macro:

qa@aq

ex:

qa0gUwj@aq

It'll UPCASE first word from current line to the end of file with single @a. But make sure "a register is empty:

let @a=""

Solution 4:

999999@x, unless you have a very large buffer...