fixed some label bugs - allow gcc to assign more registers