* fixes and improvements in tcg8086.a_load_reg_reg for the case when the src and
  dest are subregisters of the same superregister, but of different sizes:
   o Do not emit spurious moves from a register to the same register.
   o Correctly support the case when converting from 16-bit to 32-bit int.
     Previously it didn't work correctly, because in this particular case, due
     to the way the GetNextReg scheme works, we have reg1=reg2.



git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26313 3ad0048d-3df7-0310-abae-a5850022a9f2
* generate shorter code on 8 and 16-bit CPUs in thlcg2ll.location_force_reg,
  when converting a LOC_JUMP location to a 64-bit reg location by only setting
  the low OS_INT-sized register to 0 or 1 in the false/true label parts and then
  initializing the remaining registers (obtainable via GetNextReg()) to 0 in the
  common part after the jumps.



git-svn-id: http://svn.freepascal.org/svn/fpc/trunk@26314 3ad0048d-3df7-0310-abae-a5850022a9f2