VM: no special casing for big endian machines; refs #9690 [backport] (#12364)

This commit is contained in:
Andreas Rumpf
2019-10-06 19:28:53 +02:00
committed by GitHub
parent a03d8ed4c2
commit 5be8e0b088

View File

@@ -436,12 +436,8 @@ proc opConv(c: PCtx; dest: var TFullReg, src: TFullReg, desttyp, srctyp: PType):
let destDist = (sizeof(dest.intVal) - desttyp.size) * 8
var value = cast[BiggestUInt](src.intVal)
when system.cpuEndian == bigEndian:
value = (value shr srcDist) shl srcDist
value = (value shr destDist) shl destDist
else:
value = (value shl srcDist) shr srcDist
value = (value shl destDist) shr destDist
value = (value shl srcDist) shr srcDist
value = (value shl destDist) shr destDist
dest.intVal = cast[BiggestInt](value)
of tyFloat..tyFloat64:
if dest.kind != rkFloat: