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
commit 5be8e0b088
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -436,10 +436,6 @@ proc opConv(c: PCtx; dest: var TFullReg, src: TFullReg, desttyp, srctyp: PType):
let destDist = (sizeof(dest.intVal) - desttyp.size) * 8 let destDist = (sizeof(dest.intVal) - desttyp.size) * 8
var value = cast[BiggestUInt](src.intVal) 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 srcDist) shr srcDist
value = (value shl destDist) shr destDist value = (value shl destDist) shr destDist
dest.intVal = cast[BiggestInt](value) dest.intVal = cast[BiggestInt](value)