Fix non-range String init calls

When the String constructor was called via invoke-direct, it is changed
to the new StringFactory which is static. That means that the args need
to be shifted by one to deal with the change from non-static to static.
However, the non-range version of the invoke-direct was not shifted
correctly causing unstarted runtime initialization to get the wrong
first_dest_reg argument.

(cherry picked from commit 788a0a157cb138c33882511ff09afacde99443b7)

Bug: 21036900
Change-Id: Ibd7a643d877514ea396d7e4ab0dea327207cb78f
1 file changed