Diff
checker
텍스트
텍스트
이미지
문서
Excel
폴더
Legal
Enterprise
데스크톱
요금제
로그인
데스크톱 앱 다운로드
텍스트 비교
두 텍스트 파일의 차이점을 찾아보세요
도구
기록
실시간 편집
공백 변경 숨기기
변경 없는 행 숨기기
줄바꿈 비활성화
레이아웃
나란히 보기
합쳐 보기
비교 단위
스마트
단어
글자
텍스트 스타일
모양 변경
구문 강조
언어 선택
제외
텍스트 변환
첫 변경으로
수정
Diffchecker Desktop
가장 안전하게 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
비교하기