Expansion to 64-bit during longword calculations
Original Reporter info from Mantis: Yury
-
Reporter name: Yuriy Sydorov
Original Reporter info from Mantis: Yury
- Reporter name: Yuriy Sydorov
Description:
Longword subtraction causes expansion to 64-bit:
procedure proc;
var
a, b: longword;
begin
a:=a - b;
end;
Asm code:
# [9] begin
subl $4,%esp
# Var a located in register eax
# Var b located in register edx
movl %ebx,(%esp)
# [10] a:=a - b;
movl $0,%ecx
movl $0,%ebx
subl %edx,%eax
sbbl %ebx,%ecx
# [11] end;
movl (%esp),%ebx
addl $4,%esp
ret
IMO it is not needed to do such expansion.
Mantis conversion info:
- Mantis ID: 11297
- Version: 2.3.1