Diff
checker
文本
文本
图像
文档
Excel
文件夹
Legal
Enterprise
桌面版
定价
登录
下载 Diffchecker 桌面版
比较文本
查找两个文本文件之间的差异
工具
历史
实时编辑器
隐藏空白更改
折叠未更改行
关闭换行
视图
拆分
统一
比对精度
智能
单词
字符
文本样式
更改外观
语法高亮
选择语法
忽略
文本转换
转到第一个差异
编辑输入
Diffchecker Desktop
运行Diffchecker最安全的方式。获取Diffchecker桌面应用:您的差异永远不会离开您的电脑!
获取桌面版
Untitled diff
创建于
4年前
差异永不过期
清除
导出
分享
解释
43 删除
行
总计
删除
字符
总计
删除
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
122 行
全部复制
59 添加
行
总计
添加
字符
总计
添加
要继续使用此功能,请升级到
Diff
checker
Pro
查看价格
138 行
全部复制
.text
.text
.file ""
.file ""
.globl foo # -- Begin function foo
.globl foo # -- Begin function foo
.p2align 4, 0x90
.p2align 4, 0x90
.type foo,@function
.type foo,@function
foo: # @foo
foo: # @foo
.cfi_startproc
.cfi_startproc
# %bb.0: # %entry
# %bb.0: # %entry
pushq %rbp
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
pushq %rbx
pushq %rbx
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
pushq %rax
pushq %rax
.cfi_def_cfa_offset 32
.cfi_def_cfa_offset 32
.cfi_offset %rbx, -24
.cfi_offset %rbx, -24
.cfi_offset %rbp, -16
.cfi_offset %rbp, -16
movl $1, %eax
movl $1, %eax
cmpl $1, %edi
cmpl $1, %edi
je .LBB0_3
je .LBB0_3
# %bb.1: # %lor.lhs.false
# %bb.1: # %lor.lhs.false
movl %edi, %ebx
movl %edi, %ebx
testl %edi, %edi
testl %edi, %edi
je .LBB0_3
je .LBB0_3
# %bb.2: # %if.else
# %bb.2: # %if.else
leal -1(%rbx), %edi
leal -1(%rbx), %edi
callq foo
callq foo
movl %eax, %ebp
movl %eax, %ebp
addl $-2, %ebx
addl $-2, %ebx
movl %ebx, %edi
movl %ebx, %edi
callq foo
callq foo
addl %ebp, %eax
addl %ebp, %eax
.LBB0_3: # %return
.LBB0_3: # %return
addq $8, %rsp
addq $8, %rsp
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
popq %rbx
popq %rbx
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
popq %rbp
popq %rbp
.cfi_def_cfa_offset 8
.cfi_def_cfa_offset 8
retq
retq
.Lfunc_end0:
.Lfunc_end0:
.size foo, .Lfunc_end0-foo
.size foo, .Lfunc_end0-foo
.cfi_endproc
.cfi_endproc
# -- End function
# -- End function
.globl main # -- Begin function main
.globl main # -- Begin function main
.p2align 4, 0x90
.p2align 4, 0x90
.type main,@function
.type main,@function
main: # @main
main: # @main
.cfi_startproc
.cfi_startproc
# %bb.0: # %entry
# %bb.0: # %entry
pushq %rbp
pushq %rbp
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
复制
已复制
复制
已复制
pushq %r1
4
pushq %r1
5
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
复制
已复制
复制
已复制
pushq %
rbx
pushq %
r14
.cfi_def_cfa_offset 32
.cfi_def_cfa_offset 32
复制
已复制
复制
已复制
.cfi_offset %rbx, -32
pushq %r13
.cfi_offset %r14, -24
.cfi_def_cfa_offset 40
pushq %r12
.cfi_def_cfa_offset 48
pushq %rbx
.cfi_def_cfa_offset 56
pushq %rax
.cfi_def_cfa_offset 64
.cfi_offset %rbx, -56
.cfi_offset %r12, -48
.cfi_offset %r13, -40
.cfi_offset %r14, -32
.cfi_offset %r15, -24
.cfi_offset %rbp, -16
.cfi_offset %rbp, -16
复制
已复制
复制
已复制
movl $50000, %r1
4
d # imm = 0xC350
xorl %r13d, %r13d
xorl %ebx, %ebx
movl $50000, %r1
5
d # imm = 0xC350
movl $9999, %
ebp
# imm = 0x270F
movl $9999, %
r14d
# imm = 0x270F
.p2align 4, 0x90
.p2align 4, 0x90
.LBB1_1: # %while.cond
.LBB1_1: # %while.cond
# =>This Inner Loop Header: Depth=1
# =>This Inner Loop Header: Depth=1
复制
已复制
复制
已复制
movl %
ebp
, %eax
movl %
r14d
, %eax
cltd
cltd
复制
已复制
复制
已复制
idivl %
r14d
idivl %
r15d
movl %edx, %r12d
movl %r13d, 4(%rsp) # 4-byte Spill
movslq %edx, %rdi
movslq %edx, %rdi
复制
已复制
复制
已复制
imulq $1717986919, %rdi, %
rcx
# imm = 0x66666667
imulq $1717986919, %rdi, %
rbp
# imm = 0x66666667
movq %
rcx
, %r
d
x
movq %
rbp
, %r
b
x
shrq $63, %r
d
x
shrq $63, %r
b
x
sarq $33, %
rcx
sarq $33, %
rbp
addl %edx
, %ecx
leal (%rbx,%rbp)
, %ecx
leal (%rcx,%rcx,4), %ecx
leal (%rcx,%rcx,4), %ecx
subl %ecx, %edi
subl %ecx, %edi
复制
已复制
复制
已复制
movl %eax, %
ebp
movl %eax, %
r14d
# kill: def $edi killed $edi killed $rdi
# kill: def $edi killed $edi killed $rdi
callq foo
callq foo
复制
已复制
复制
已复制
cmpl $1
, %r1
4
d
movl %eax
, %r1
3
d
jne .LBB1_3
addl 4(%rsp), %r13d
#
4-byte Folded Reload
# %bb.2:
#
in Loop: Header=BB1_1 Depth=1
cmpl $1
, %
r15d
movl $3
, %
ecx
je
.LBB1_
2
jmp
.LBB1_
4
# %bb.
3: # %if.end
.p2align 4, 0x90
.LBB1_
3: # %if.end
# in Loop: Header=BB1_1 Depth=1
imull %eax, %ebp
xorl %ecx, %ecx
.LBB1_4: # %cleanup
# in Loop: Header=BB1_1 Depth=1
addl %eax, %ebx
testl %ecx, %ecx
jne .LBB1_6
# %bb.5: # %cleanup.cont
# in Loop: Header=BB1_1 Depth=1
# in Loop: Header=BB1_1 Depth=1
复制
已复制
复制
已复制
addl $-1, %r1
4
d
addl %ebx, %ebp
leal (%rbp,%rbp,4), %eax
subl %eax, %r12d
movl %r12d, %edi
callq foo
imull %eax, %r14d
addl $-1, %r1
5
d
jmp .LBB1_1
jmp .LBB1_1
复制
已复制
复制
已复制
.LBB1_
6
: # %
while.end
.LBB1_
2
: # %
if.then
movl $.L.str, %edi
movl $.L.str, %edi
复制
已复制
复制
已复制
movl %
ebx
, %esi
movl %
r13d
, %esi
xorl %eax, %eax
xorl %eax, %eax
callq printf
callq printf
xorl %eax, %eax
xorl %eax, %eax
复制
已复制
复制
已复制
addq $8, %rsp
.cfi_def_cfa_offset 56
popq %rbx
popq %rbx
复制
已复制
复制
已复制
.cfi_def_cfa_offset 48
popq %r12
.cfi_def_cfa_offset 40
popq %r13
.cfi_def_cfa_offset 32
popq %r14
.cfi_def_cfa_offset 24
.cfi_def_cfa_offset 24
复制
已复制
复制
已复制
popq %r1
4
popq %r1
5
.cfi_def_cfa_offset 16
.cfi_def_cfa_offset 16
popq %rbp
popq %rbp
.cfi_def_cfa_offset 8
.cfi_def_cfa_offset 8
retq
retq
.Lfunc_end1:
.Lfunc_end1:
.size main, .Lfunc_end1-main
.size main, .Lfunc_end1-main
.cfi_endproc
.cfi_endproc
# -- End function
# -- End function
.type .L.str,@object # @.str
.type .L.str,@object # @.str
.section .rodata.str1.1,"aMS",@progbits,1
.section .rodata.str1.1,"aMS",@progbits,1
.L.str:
.L.str:
.asciz "%d\n"
.asciz "%d\n"
.size .L.str, 4
.size .L.str, 4
.ident "clang version 14.0.0 (https://github.com/llvm/llvm-project edff0070a126d9a27263958dbb22133f4ed6526e)"
.ident "clang version 14.0.0 (https://github.com/llvm/llvm-project edff0070a126d9a27263958dbb22133f4ed6526e)"
.section ".note.GNU-stack","",@progbits
.section ".note.GNU-stack","",@progbits
已保存差异
原始文本
打开文件
.text .file "" .globl foo # -- Begin function foo .p2align 4, 0x90 .type foo,@function foo: # @foo .cfi_startproc # %bb.0: # %entry pushq %rbp .cfi_def_cfa_offset 16 pushq %rbx .cfi_def_cfa_offset 24 pushq %rax .cfi_def_cfa_offset 32 .cfi_offset %rbx, -24 .cfi_offset %rbp, -16 movl $1, %eax cmpl $1, %edi je .LBB0_3 # %bb.1: # %lor.lhs.false movl %edi, %ebx testl %edi, %edi je .LBB0_3 # %bb.2: # %if.else leal -1(%rbx), %edi callq foo movl %eax, %ebp addl $-2, %ebx movl %ebx, %edi callq foo addl %ebp, %eax .LBB0_3: # %return addq $8, %rsp .cfi_def_cfa_offset 24 popq %rbx .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .Lfunc_end0: .size foo, .Lfunc_end0-foo .cfi_endproc # -- End function .globl main # -- Begin function main .p2align 4, 0x90 .type main,@function main: # @main .cfi_startproc # %bb.0: # %entry pushq %rbp .cfi_def_cfa_offset 16 pushq %r14 .cfi_def_cfa_offset 24 pushq %rbx .cfi_def_cfa_offset 32 .cfi_offset %rbx, -32 .cfi_offset %r14, -24 .cfi_offset %rbp, -16 movl $50000, %r14d # imm = 0xC350 xorl %ebx, %ebx movl $9999, %ebp # imm = 0x270F .p2align 4, 0x90 .LBB1_1: # %while.cond # =>This Inner Loop Header: Depth=1 movl %ebp, %eax cltd idivl %r14d movslq %edx, %rdi imulq $1717986919, %rdi, %rcx # imm = 0x66666667 movq %rcx, %rdx shrq $63, %rdx sarq $33, %rcx addl %edx, %ecx leal (%rcx,%rcx,4), %ecx subl %ecx, %edi movl %eax, %ebp # kill: def $edi killed $edi killed $rdi callq foo cmpl $1, %r14d jne .LBB1_3 # %bb.2: # in Loop: Header=BB1_1 Depth=1 movl $3, %ecx jmp .LBB1_4 .p2align 4, 0x90 .LBB1_3: # %if.end # in Loop: Header=BB1_1 Depth=1 imull %eax, %ebp xorl %ecx, %ecx .LBB1_4: # %cleanup # in Loop: Header=BB1_1 Depth=1 addl %eax, %ebx testl %ecx, %ecx jne .LBB1_6 # %bb.5: # %cleanup.cont # in Loop: Header=BB1_1 Depth=1 addl $-1, %r14d jmp .LBB1_1 .LBB1_6: # %while.end movl $.L.str, %edi movl %ebx, %esi xorl %eax, %eax callq printf xorl %eax, %eax popq %rbx .cfi_def_cfa_offset 24 popq %r14 .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .Lfunc_end1: .size main, .Lfunc_end1-main .cfi_endproc # -- End function .type .L.str,@object # @.str .section .rodata.str1.1,"aMS",@progbits,1 .L.str: .asciz "%d\n" .size .L.str, 4 .ident "clang version 14.0.0 (https://github.com/llvm/llvm-project edff0070a126d9a27263958dbb22133f4ed6526e)" .section ".note.GNU-stack","",@progbits
更改后文本
打开文件
.text .file "" .globl foo # -- Begin function foo .p2align 4, 0x90 .type foo,@function foo: # @foo .cfi_startproc # %bb.0: # %entry pushq %rbp .cfi_def_cfa_offset 16 pushq %rbx .cfi_def_cfa_offset 24 pushq %rax .cfi_def_cfa_offset 32 .cfi_offset %rbx, -24 .cfi_offset %rbp, -16 movl $1, %eax cmpl $1, %edi je .LBB0_3 # %bb.1: # %lor.lhs.false movl %edi, %ebx testl %edi, %edi je .LBB0_3 # %bb.2: # %if.else leal -1(%rbx), %edi callq foo movl %eax, %ebp addl $-2, %ebx movl %ebx, %edi callq foo addl %ebp, %eax .LBB0_3: # %return addq $8, %rsp .cfi_def_cfa_offset 24 popq %rbx .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .Lfunc_end0: .size foo, .Lfunc_end0-foo .cfi_endproc # -- End function .globl main # -- Begin function main .p2align 4, 0x90 .type main,@function main: # @main .cfi_startproc # %bb.0: # %entry pushq %rbp .cfi_def_cfa_offset 16 pushq %r15 .cfi_def_cfa_offset 24 pushq %r14 .cfi_def_cfa_offset 32 pushq %r13 .cfi_def_cfa_offset 40 pushq %r12 .cfi_def_cfa_offset 48 pushq %rbx .cfi_def_cfa_offset 56 pushq %rax .cfi_def_cfa_offset 64 .cfi_offset %rbx, -56 .cfi_offset %r12, -48 .cfi_offset %r13, -40 .cfi_offset %r14, -32 .cfi_offset %r15, -24 .cfi_offset %rbp, -16 xorl %r13d, %r13d movl $50000, %r15d # imm = 0xC350 movl $9999, %r14d # imm = 0x270F .p2align 4, 0x90 .LBB1_1: # %while.cond # =>This Inner Loop Header: Depth=1 movl %r14d, %eax cltd idivl %r15d movl %edx, %r12d movl %r13d, 4(%rsp) # 4-byte Spill movslq %edx, %rdi imulq $1717986919, %rdi, %rbp # imm = 0x66666667 movq %rbp, %rbx shrq $63, %rbx sarq $33, %rbp leal (%rbx,%rbp), %ecx leal (%rcx,%rcx,4), %ecx subl %ecx, %edi movl %eax, %r14d # kill: def $edi killed $edi killed $rdi callq foo movl %eax, %r13d addl 4(%rsp), %r13d # 4-byte Folded Reload cmpl $1, %r15d je .LBB1_2 # %bb.3: # %if.end # in Loop: Header=BB1_1 Depth=1 addl %ebx, %ebp leal (%rbp,%rbp,4), %eax subl %eax, %r12d movl %r12d, %edi callq foo imull %eax, %r14d addl $-1, %r15d jmp .LBB1_1 .LBB1_2: # %if.then movl $.L.str, %edi movl %r13d, %esi xorl %eax, %eax callq printf xorl %eax, %eax addq $8, %rsp .cfi_def_cfa_offset 56 popq %rbx .cfi_def_cfa_offset 48 popq %r12 .cfi_def_cfa_offset 40 popq %r13 .cfi_def_cfa_offset 32 popq %r14 .cfi_def_cfa_offset 24 popq %r15 .cfi_def_cfa_offset 16 popq %rbp .cfi_def_cfa_offset 8 retq .Lfunc_end1: .size main, .Lfunc_end1-main .cfi_endproc # -- End function .type .L.str,@object # @.str .section .rodata.str1.1,"aMS",@progbits,1 .L.str: .asciz "%d\n" .size .L.str, 4 .ident "clang version 14.0.0 (https://github.com/llvm/llvm-project edff0070a126d9a27263958dbb22133f4ed6526e)" .section ".note.GNU-stack","",@progbits
查找差异