Assembler output of string parameters without and with const (read only)

Created Diff never expires
35 removals
Lines
Total
Removed
Words
Total
Removed
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
33 lines
6 additions
Lines
Total
Added
Words
Total
Added
To continue using this feature, upgrade to
Diffchecker logo
Diffchecker Pro
8 lines
P$CONSTPARAMETERSTR_$$_BYVALUEREADONLY$ANSISTRING:
P$CONSTPARAMETERSTR_$$_BYREFERENCEREADONLY$ANSISTRING:
# Temps allocated between ebp-44 and ebp-4
# Var V located in register eax
# [30] begin
# [35] begin
pushl %ebp
# Var V located in register eax
movl %esp,%ebp
# [36] DoIt(V);
leal -44(%esp),%esp
# Var V located at ebp-4, size=OS_32
movl %eax,-4(%ebp)
call fpc_ansistr_incr_ref
movl $1,%eax
leal -40(%ebp),%edx
leal -16(%ebp),%ecx
call fpc_pushexceptaddr
call fpc_setjmp
pushl %eax
testl %eax,%eax
jne .Lj15
# [31] DoIt(V);
movl -4(%ebp),%eax
call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING
call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING
.Lj15:
# [37] end;
call fpc_popaddrstack
# [32] end;
leal -4(%ebp),%eax
call fpc_ansistr_decr_ref
popl %eax
testl %eax,%eax
je .Lj16
call fpc_reraise
.Lj16:
movl %ebp,%esp
popl %ebp
ret
ret