Diff
checker
Testo
Testo
Immagini
Documenti
Excel
Cartelle
Legal
Enterprise
Applicazione per desktop
Prezzi
Accedi
Scarica Diffchecker Desktop
Confronta il testo
Trova la differenza tra due file di testo
Strumenti
Cronologia
Editor live
Comprimi invariate
Senza a capo
Layout
Diviso
Unificato
Livello di dettaglio
Intelligente
Parola
Carattere
Evidenziazione sintassi
Scegli sintassi
Ignora
Trasforma testo
Vai alla prima modifica
Modifica input
Diffchecker Desktop
Il modo più sicuro per usare Diffchecker. Ottieni l'app Diffchecker Desktop: i tuoi diff non lasciano mai il tuo computer!
Ottieni Desktop
Assembler output of string parameters without and with const (modify content)
Creato
10 anni fa
Il diff non scade mai
Eliminare
Esporta
Condividere
Spiegare
14 rimozioni
Linee
Totale
Rimosso
Caratteri
Totale
Rimosso
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
39 linee
Copia tutti
20 aggiunte
Linee
Totale
Aggiunto
Caratteri
Totale
Aggiunto
Per continuare a utilizzare questa funzione, aggiorna a
Diff
checker
Pro
Visualizza prezzi
43 linee
Copia tutti
Copia
Copiato
Copia
Copiato
P$CONSTPARAMETERSTR_$$_
BYVALUE
$ANSISTRING:
.globl
P$CONSTPARAMETERSTR_$$_
BYREFERENCE$ANSISTRING
P$CONSTPARAMETERSTR_$$_BYREFERENCE
$ANSISTRING:
# Temps allocated between ebp-44 and ebp-4
# Temps allocated between ebp-44 and ebp-4
Copia
Copiato
Copia
Copiato
# [
16
] begin
# [
24
] begin
pushl %ebp
pushl %ebp
movl %esp,%ebp
movl %esp,%ebp
leal -44(%esp),%esp
leal -44(%esp),%esp
Copia
Copiato
Copia
Copiato
# Var V located
at ebp-4, size=OS_32
pushl %ebx
movl %eax,
-4(%ebp)
# Var V located
in register ebx
call fpc_ansistr_incr_ref
# Var S located
at ebp-4, size=OS_32
movl %eax,
%ebx
# [27] end;
movl $0,
-4(%ebp)
movl $1,%eax
movl $1,%eax
leal -40(%ebp),%edx
leal -40(%ebp),%edx
leal -16(%ebp),%ecx
leal -16(%ebp),%ecx
call fpc_pushexceptaddr
call fpc_pushexceptaddr
call fpc_setjmp
call fpc_setjmp
pushl %eax
pushl %eax
testl %eax,%eax
testl %eax,%eax
Copia
Copiato
Copia
Copiato
jne .
Lj7
jne .
Lj11
# [
17] V
:= V + 'x';
# [
25] S
:= V + 'x';
pushl $0
pushl $0
Copia
Copiato
Copia
Copiato
movl
-4(
%eb
p)
,%edx
movl
%eb
x
,%edx
leal -4(%ebp),%eax
leal -4(%ebp),%eax
movl $.Ld1,%ecx
movl $.Ld1,%ecx
call fpc_ansistr_concat
call fpc_ansistr_concat
Copia
Copiato
Copia
Copiato
# [
18
] DoIt(
V
);
# [
26
] DoIt(
S
);
movl -4(%ebp),%eax
movl -4(%ebp),%eax
call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING
call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING
Copia
Copiato
Copia
Copiato
.
Lj7
:
.
Lj11
:
call fpc_popaddrstack
call fpc_popaddrstack
Copia
Copiato
Copia
Copiato
# [19] end;
leal -4(%ebp),%eax
leal -4(%ebp),%eax
call fpc_ansistr_decr_ref
call fpc_ansistr_decr_ref
popl %eax
popl %eax
testl %eax,%eax
testl %eax,%eax
Copia
Copiato
Copia
Copiato
je .
Lj8
je .
Lj12
call fpc_reraise
call fpc_reraise
Copia
Copiato
Copia
Copiato
.
Lj8:
.
Lj12:
popl %ebx
movl %ebp,%esp
movl %ebp,%esp
popl %ebp
popl %ebp
ret
ret
Diff salvati
Testo originale
Apri file
P$CONSTPARAMETERSTR_$$_BYVALUE$ANSISTRING: # Temps allocated between ebp-44 and ebp-4 # [16] begin pushl %ebp movl %esp,%ebp 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 .Lj7 # [17] V := V + 'x'; pushl $0 movl -4(%ebp),%edx leal -4(%ebp),%eax movl $.Ld1,%ecx call fpc_ansistr_concat # [18] DoIt(V); movl -4(%ebp),%eax call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING .Lj7: call fpc_popaddrstack # [19] end; leal -4(%ebp),%eax call fpc_ansistr_decr_ref popl %eax testl %eax,%eax je .Lj8 call fpc_reraise .Lj8: movl %ebp,%esp popl %ebp ret
Testo modificato
Apri file
.globl P$CONSTPARAMETERSTR_$$_BYREFERENCE$ANSISTRING P$CONSTPARAMETERSTR_$$_BYREFERENCE$ANSISTRING: # Temps allocated between ebp-44 and ebp-4 # [24] begin pushl %ebp movl %esp,%ebp leal -44(%esp),%esp pushl %ebx # Var V located in register ebx # Var S located at ebp-4, size=OS_32 movl %eax,%ebx # [27] end; movl $0,-4(%ebp) movl $1,%eax leal -40(%ebp),%edx leal -16(%ebp),%ecx call fpc_pushexceptaddr call fpc_setjmp pushl %eax testl %eax,%eax jne .Lj11 # [25] S := V + 'x'; pushl $0 movl %ebx,%edx leal -4(%ebp),%eax movl $.Ld1,%ecx call fpc_ansistr_concat # [26] DoIt(S); movl -4(%ebp),%eax call P$CONSTPARAMETERSTR_$$_DOIT$ANSISTRING .Lj11: call fpc_popaddrstack leal -4(%ebp),%eax call fpc_ansistr_decr_ref popl %eax testl %eax,%eax je .Lj12 call fpc_reraise .Lj12: popl %ebx movl %ebp,%esp popl %ebp ret
Trovare la differenza