Like @ib, I would do this with ex commands 1
:argdo %y | %s/old1/new1/g | $pu | %s/old2/new2/g
, ( , ):
:argdo $mark a | %co$ | 1,'a s/old1/new1/g | 'a,$s/old2/new2/g
, s///e silent!, .
:silent! argdo $mark a | %co$ | 1,'a s/old1/new1/ge | 'a,$s/old2/new2/ge
1 ( , argdo Ex . , , argdo norm! ggyG)