> It avoids a branch instruction. For the first case, the path via "x = > a" is "test -> jump -> set -> jump" (where "set" is th "x = > a"-instruction). This becomes "set -> test -> jump". So one jump > less.
Thank you very much for the detailed explanation. However, I have a doubt here. IMO, the path via "x=a" should be "test->set->jump". And it becomes "set->test->jump". The other path is "test->jump". It becomes "set->test". So the trade-off is for the latter case. Are these right? Best wishes Eric