Diff
checker
文本
文本
圖像
文檔
Excel
文件夾
Legal
Enterprise
桌面版
定價
登入
下載 Diffchecker 桌面版
比較文本
尋找兩個文字檔案之間的差異
工具
歷史
顯示
檢視
拆分
統一
即時編輯器
隱藏空白變更
摺疊未變更行
關閉換行
比對精度
智能
語法
無
變更外觀
處理
忽略
文字轉換
前往第一個差異
編輯輸入
Diffchecker Desktop
執行Diffchecker最安全的方式。取得Diffchecker桌面應用程式:您的差異永遠不會離開您的電腦!
取得桌面版
zero_init_52286
建立於
5 年前
差異永不過期
清除
匯出
分享
解釋
180 刪除
行
總計
刪除
字符
總計
刪除
要繼續使用此功能,請升級到
Diff
checker
Pro
查看價格
285 行
全部複製
166 新增
行
總計
新增
字符
總計
新增
要繼續使用此功能,請升級到
Diff
checker
Pro
查看價格
271 行
全部複製
; Assembly listing for method MiniBench.C:Test3(int):long
; Assembly listing for method MiniBench.C:Test3(int):long
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; Emitting BLENDED_CODE for X64 CPU with AVX - Windows
; optimized code
; optimized code
; rsp based frame
; rsp based frame
; partially interruptible
; partially interruptible
; No PGO data
; No PGO data
; Final local variable assignments
; Final local variable assignments
;
;
複製
已複製
複製
已複製
; V00 arg0 [V00,T0
0
] ( 27, 15.50) int -> [rsp+B0H]
; V00 arg0 [V00,T0
1
] ( 27, 15.50) int -> [rsp+B0H]
; V01 loc0 [V01,T0
2
] ( 3, 2 ) long -> r
a
x
; V01 loc0 [V01,T0
3
] ( 3, 2 ) long -> r
d
x
; V02 loc1 [V02,T0
3
] ( 3, 2 ) long ->
rdx
; V02 loc1 [V02,T0
4
] ( 3, 2 ) long ->
r8
; V03 loc2 [V03,T0
4
] ( 3, 2 ) long ->
r8
; V03 loc2 [V03,T0
5
] ( 3, 2 ) long ->
r9
; V04 loc3 [V04,T0
5
] ( 3, 2 ) long ->
r9
; V04 loc3 [V04,T0
6
] ( 3, 2 ) long ->
r10
; V05 loc4 [V05,T0
6
] ( 3, 2 ) long -> r1
0
; V05 loc4 [V05,T0
7
] ( 3, 2 ) long -> r1
1
; V06 loc5 [V06,T0
7
] ( 3, 2 ) long ->
r11
; V06 loc5 [V06,T0
8
] ( 3, 2 ) long ->
rsi
; V07 loc6 [V07,T0
8
] ( 3, 2 ) long -> r
s
i
; V07 loc6 [V07,T0
9
] ( 3, 2 ) long -> r
d
i
; V08 loc7 [V08,T
09
] ( 3, 2 ) long ->
rdi
; V08 loc7 [V08,T
10
] ( 3, 2 ) long ->
rbx
; V09 loc8 [V09,T1
0
] ( 3, 2 ) long -> rb
x
; V09 loc8 [V09,T1
1
] ( 3, 2 ) long -> rb
p
; V10 loc9 [V10,T1
1
] ( 3, 2 ) long ->
rbp
; V10 loc9 [V10,T1
2
] ( 3, 2 ) long ->
r14
; V11 loc10 [V11,T1
2
] ( 3, 2 ) long -> r1
4
; V11 loc10 [V11,T1
3
] ( 3, 2 ) long -> r1
5
; V12 loc11 [V12,T1
3
] ( 3, 2 ) long -> r1
5
; V12 loc11 [V12,T1
4
] ( 3, 2 ) long -> r1
2
; V13 loc12 [V13,T1
4
] ( 3, 2 ) long -> [rsp+60H]
; V13 loc12 [V13,T1
5
] ( 3, 2 ) long -> [rsp+60H]
; V14 loc13 [V14,T1
5
] ( 3, 2 ) long -> [rsp+58H]
; V14 loc13 [V14,T1
6
] ( 3, 2 ) long -> [rsp+58H]
; V15 loc14 [V15,T1
6
] ( 3, 2 ) long -> [rsp+50H]
; V15 loc14 [V15,T1
7
] ( 3, 2 ) long -> [rsp+50H]
; V16 loc15 [V16,T1
7
] ( 3, 2 ) long -> [rsp+48H]
; V16 loc15 [V16,T1
8
] ( 3, 2 ) long -> [rsp+48H]
; V17 loc16 [V17,T1
8
] ( 3, 2 ) long -> [rsp+40H]
; V17 loc16 [V17,T1
9
] ( 3, 2 ) long -> [rsp+40H]
; V18 loc17 [V18,
T19
] ( 3, 2 ) long -> [rsp+38H]
; V18 loc17 [V18,
T20
] ( 3, 2 ) long -> [rsp+38H]
; V19 loc18 [V19,T2
0
] ( 3, 2 ) long -> [rsp+30H]
; V19 loc18 [V19,T2
1
] ( 3, 2 ) long -> [rsp+30H]
; V20 loc19 [V20,T2
1
] ( 3, 2 ) long -> [rsp+28H]
; V20 loc19 [V20,T2
2
] ( 3, 2 ) long -> [rsp+28H]
; V21 loc20 [V21,T2
2
] ( 3, 2 ) long -> [rsp+20H]
; V21 loc20 [V21,T2
3
] ( 3, 2 ) long -> [rsp+20H]
; V22 loc21 [V22,T2
3
] ( 3, 2 ) long -> [rsp+18H]
; V22 loc21 [V22,T2
4
] ( 3, 2 ) long -> [rsp+18H]
; V23 loc22 [V23,T2
4
] ( 3, 2 ) long -> [rsp+10H]
; V23 loc22 [V23,T2
5
] ( 3, 2 ) long -> [rsp+10H]
; V24 loc23 [V24,T2
5
] ( 3, 2 ) long -> [rsp+08H]
; V24 loc23 [V24,T2
6
] ( 3, 2 ) long -> [rsp+08H]
; V25 loc24 [V25,T0
1
] ( 26, 14 ) long -> r
c
x
; V25 loc24 [V25,T0
2
] ( 26, 14 ) long -> r
a
x
;# V26 OutArgs [V26 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace"
;# V26 OutArgs [V26 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace"
複製
已複製
複製
已複製
; V27 cse0 [V27,T00] ( 26, 26 ) long -> rax "CSE - aggressive"
;
;
; Lcl frame size = 104
; Lcl frame size = 104
G_M49963_IG01:
G_M49963_IG01:
push r15
push r15
push r14
push r14
push r13
push r13
push r12
push r12
push rdi
push rdi
push rsi
push rsi
push rbp
push rbp
push rbx
push rbx
sub rsp, 104
sub rsp, 104
mov dword ptr [rsp+B0H], ecx
mov dword ptr [rsp+B0H], ecx
;; bbWeight=1 PerfScore 9.25
;; bbWeight=1 PerfScore 9.25
G_M49963_IG02:
G_M49963_IG02:
xor eax, eax
xor eax, eax
複製
已複製
複製
已複製
xor
e
dx,
edx
mov
r
dx,
rax
xor
r8
d, r8d
mov
r8
, rax
xor
r9
d, r9d
mov
r9
, rax
xor
r10
d, r10d
mov
r10
, rax
xor
r11
d, r11d
mov
r11
, rax
xor
e
si,
esi
mov
r
si,
rax
xor
e
di,
edi
mov
r
di,
rax
xor
e
bx,
ebx
mov
r
bx,
rax
xor
e
bp,
ebp
mov
r
bp,
rax
xor
r14
d, r14d
mov
r14
, rax
xor
r15
d, r15d
mov
r15
, rax
xor
r12
d, r12d
mov
r12
, rax
xor
r13
d, r13d
mov
r13
, rax
mov qword ptr [rsp+58H],
r13
mov qword ptr [rsp+58H],
rax
xor ecx, ecx
mov qword ptr [rsp+50H],
rax
mov qword ptr [rsp+50H],
rcx
mov qword ptr [rsp+48H],
rax
xor ecx, ecx
mov qword ptr [rsp+40H],
rax
mov qword ptr [rsp+48H],
rcx
mov qword ptr [rsp+38H],
rax
xor ecx, ecx
mov qword ptr [rsp+30H],
rax
mov qword ptr [rsp+40H],
rcx
mov qword ptr [rsp+28H],
rax
xor ecx, ecx
mov qword ptr [rsp+20H],
rax
mov qword ptr [rsp+38H],
rcx
mov qword ptr [rsp+18H],
rax
xor ecx, ecx
mov qword ptr [rsp+10H],
rax
mov qword ptr [rsp+30H],
rcx
mov qword ptr [rsp+08H],
rax
xor ecx, ecx
mov
ecx
, dword ptr [rsp+B0H]
mov qword ptr [rsp+28H],
rcx
cmp
ecx
, 100
xor ecx, ecx
mov qword ptr [rsp+20H],
rcx
xor ecx, ecx
mov qword ptr [rsp+18H],
rcx
xor ecx, ecx
mov qword ptr [rsp+10H],
rcx
xor ecx, ecx
mov qword ptr [rsp+08H],
rcx
xor ecx, ecx
mov
r13d
, dword ptr [rsp+B0H]
cmp
r13d
, 100
jne G_M49963_IG04
jne G_M49963_IG04
複製
已複製
複製
已複製
;; bbWeight=1 PerfScore
19.50
;; bbWeight=1 PerfScore
16.75
G_M49963_IG03:
G_M49963_IG03:
複製
已複製
複製
已複製
mov e
a
x, 1
mov e
d
x, 1
mov
edx
, 2
mov
r8d
, 2
mov r
8
d, 3
mov r
9
d, 3
mov
r9d
, 4
mov
r10d
, 4
mov r1
0
d, 5
mov r1
1
d, 5
mov
r11d
, 6
mov
esi
, 6
mov e
s
i, 7
mov e
d
i, 7
mov
edi
, 8
mov
ebx
, 8
mov eb
x
, 9
mov eb
p
, 9
mov
ebp
, 10
mov
r14d
, 10
mov r1
4
d, 11
mov r1
5
d, 11
mov r1
5
d, 12
mov r1
2
d, 12
mov qword ptr [rsp+60H], 13
mov qword ptr [rsp+60H], 13
mov qword ptr [rsp+58H], 14
mov qword ptr [rsp+58H], 14
mov qword ptr [rsp+50H], 15
mov qword ptr [rsp+50H], 15
mov qword ptr [rsp+48H], 16
mov qword ptr [rsp+48H], 16
mov qword ptr [rsp+40H], 17
mov qword ptr [rsp+40H], 17
mov qword ptr [rsp+38H], 18
mov qword ptr [rsp+38H], 18
mov qword ptr [rsp+30H], 19
mov qword ptr [rsp+30H], 19
mov qword ptr [rsp+28H], 20
mov qword ptr [rsp+28H], 20
mov qword ptr [rsp+20H], 21
mov qword ptr [rsp+20H], 21
mov qword ptr [rsp+18H], 22
mov qword ptr [rsp+18H], 22
mov qword ptr [rsp+10H], 23
mov qword ptr [rsp+10H], 23
複製
已複製
複製
已複製
mov r1
2
d, 24
mov r1
3
d, 24
mov qword ptr [rsp+08H], r1
2
mov qword ptr [rsp+08H], r1
3
mov r1
2
, qword ptr [rsp+60H]
mov r1
3
, qword ptr [rsp+60H]
;; bbWeight=0.50 PerfScore 8.12
;; bbWeight=0.50 PerfScore 8.12
G_M49963_IG04:
G_M49963_IG04:
複製
已複製
複製
已複製
cmp
r13d
, 1
cmp
ecx
, 1
jne SHORT G_M49963_IG06
jne SHORT G_M49963_IG06
;; bbWeight=1 PerfScore 1.25
;; bbWeight=1 PerfScore 1.25
G_M49963_IG05:
G_M49963_IG05:
複製
已複製
複製
已複製
mov r
c
x, r
a
x
mov r
a
x, r
d
x
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.12
;; bbWeight=0.50 PerfScore 1.12
G_M49963_IG06:
G_M49963_IG06:
複製
已複製
複製
已複製
cmp
r13d
, 2
cmp
ecx
, 2
jne SHORT G_M49963_IG07
jne SHORT G_M49963_IG07
複製
已複製
複製
已複製
mov r
c
x,
rdx
mov r
a
x,
r8
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG07:
G_M49963_IG07:
複製
已複製
複製
已複製
cmp
r13d
, 3
cmp
ecx
, 3
jne SHORT G_M49963_IG08
jne SHORT G_M49963_IG08
複製
已複製
複製
已複製
mov r
c
x,
r8
mov r
a
x,
r9
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG08:
G_M49963_IG08:
複製
已複製
複製
已複製
cmp
r13d
, 4
cmp
ecx
, 4
jne SHORT G_M49963_IG09
jne SHORT G_M49963_IG09
複製
已複製
複製
已複製
mov r
c
x,
r9
mov r
a
x,
r10
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG09:
G_M49963_IG09:
複製
已複製
複製
已複製
cmp
r13d
, 5
cmp
ecx
, 5
jne SHORT G_M49963_IG10
jne SHORT G_M49963_IG10
複製
已複製
複製
已複製
mov r
c
x, r1
0
mov r
a
x, r1
1
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG10:
G_M49963_IG10:
複製
已複製
複製
已複製
cmp
r13d
, 6
cmp
ecx
, 6
jne SHORT G_M49963_IG11
jne SHORT G_M49963_IG11
複製
已複製
複製
已複製
mov r
c
x,
r11
mov r
a
x,
rsi
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG11:
G_M49963_IG11:
複製
已複製
複製
已複製
cmp
r13d
, 7
cmp
ecx
, 7
jne SHORT G_M49963_IG12
jne SHORT G_M49963_IG12
複製
已複製
複製
已複製
mov r
c
x, r
s
i
mov r
a
x, r
d
i
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG12:
G_M49963_IG12:
複製
已複製
複製
已複製
cmp
r13d
, 8
cmp
ecx
, 8
jne SHORT G_M49963_IG13
jne SHORT G_M49963_IG13
複製
已複製
複製
已複製
mov r
c
x,
rdi
mov r
a
x,
rbx
jmp G_M49963_IG29
jmp G_M49963_IG29
;; bbWeight=0.50 PerfScore 1.75
;; bbWeight=0.50 PerfScore 1.75
G_M49963_IG13:
G_M49963_IG13:
複製
已複製
複製
已複製
cmp
r13d
, 9
cmp
ecx
, 9
jne SHORT G_M49963_IG14
jne SHORT G_M49963_IG14
複製
已複製
複製
已複製
mov r
c
x, rb
x
mov r
a
x, rb
p
已保存差異
原始文本
開啟檔案
; Assembly listing for method MiniBench.C:Test3(int):long ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T00] ( 27, 15.50) int -> [rsp+B0H] ; V01 loc0 [V01,T02] ( 3, 2 ) long -> rax ; V02 loc1 [V02,T03] ( 3, 2 ) long -> rdx ; V03 loc2 [V03,T04] ( 3, 2 ) long -> r8 ; V04 loc3 [V04,T05] ( 3, 2 ) long -> r9 ; V05 loc4 [V05,T06] ( 3, 2 ) long -> r10 ; V06 loc5 [V06,T07] ( 3, 2 ) long -> r11 ; V07 loc6 [V07,T08] ( 3, 2 ) long -> rsi ; V08 loc7 [V08,T09] ( 3, 2 ) long -> rdi ; V09 loc8 [V09,T10] ( 3, 2 ) long -> rbx ; V10 loc9 [V10,T11] ( 3, 2 ) long -> rbp ; V11 loc10 [V11,T12] ( 3, 2 ) long -> r14 ; V12 loc11 [V12,T13] ( 3, 2 ) long -> r15 ; V13 loc12 [V13,T14] ( 3, 2 ) long -> [rsp+60H] ; V14 loc13 [V14,T15] ( 3, 2 ) long -> [rsp+58H] ; V15 loc14 [V15,T16] ( 3, 2 ) long -> [rsp+50H] ; V16 loc15 [V16,T17] ( 3, 2 ) long -> [rsp+48H] ; V17 loc16 [V17,T18] ( 3, 2 ) long -> [rsp+40H] ; V18 loc17 [V18,T19] ( 3, 2 ) long -> [rsp+38H] ; V19 loc18 [V19,T20] ( 3, 2 ) long -> [rsp+30H] ; V20 loc19 [V20,T21] ( 3, 2 ) long -> [rsp+28H] ; V21 loc20 [V21,T22] ( 3, 2 ) long -> [rsp+20H] ; V22 loc21 [V22,T23] ( 3, 2 ) long -> [rsp+18H] ; V23 loc22 [V23,T24] ( 3, 2 ) long -> [rsp+10H] ; V24 loc23 [V24,T25] ( 3, 2 ) long -> [rsp+08H] ; V25 loc24 [V25,T01] ( 26, 14 ) long -> rcx ;# V26 OutArgs [V26 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace" ; ; Lcl frame size = 104 G_M49963_IG01: push r15 push r14 push r13 push r12 push rdi push rsi push rbp push rbx sub rsp, 104 mov dword ptr [rsp+B0H], ecx ;; bbWeight=1 PerfScore 9.25 G_M49963_IG02: xor eax, eax xor edx, edx xor r8d, r8d xor r9d, r9d xor r10d, r10d xor r11d, r11d xor esi, esi xor edi, edi xor ebx, ebx xor ebp, ebp xor r14d, r14d xor r15d, r15d xor r12d, r12d xor r13d, r13d mov qword ptr [rsp+58H], r13 xor ecx, ecx mov qword ptr [rsp+50H], rcx xor ecx, ecx mov qword ptr [rsp+48H], rcx xor ecx, ecx mov qword ptr [rsp+40H], rcx xor ecx, ecx mov qword ptr [rsp+38H], rcx xor ecx, ecx mov qword ptr [rsp+30H], rcx xor ecx, ecx mov qword ptr [rsp+28H], rcx xor ecx, ecx mov qword ptr [rsp+20H], rcx xor ecx, ecx mov qword ptr [rsp+18H], rcx xor ecx, ecx mov qword ptr [rsp+10H], rcx xor ecx, ecx mov qword ptr [rsp+08H], rcx xor ecx, ecx mov r13d, dword ptr [rsp+B0H] cmp r13d, 100 jne G_M49963_IG04 ;; bbWeight=1 PerfScore 19.50 G_M49963_IG03: mov eax, 1 mov edx, 2 mov r8d, 3 mov r9d, 4 mov r10d, 5 mov r11d, 6 mov esi, 7 mov edi, 8 mov ebx, 9 mov ebp, 10 mov r14d, 11 mov r15d, 12 mov qword ptr [rsp+60H], 13 mov qword ptr [rsp+58H], 14 mov qword ptr [rsp+50H], 15 mov qword ptr [rsp+48H], 16 mov qword ptr [rsp+40H], 17 mov qword ptr [rsp+38H], 18 mov qword ptr [rsp+30H], 19 mov qword ptr [rsp+28H], 20 mov qword ptr [rsp+20H], 21 mov qword ptr [rsp+18H], 22 mov qword ptr [rsp+10H], 23 mov r12d, 24 mov qword ptr [rsp+08H], r12 mov r12, qword ptr [rsp+60H] ;; bbWeight=0.50 PerfScore 8.12 G_M49963_IG04: cmp r13d, 1 jne SHORT G_M49963_IG06 ;; bbWeight=1 PerfScore 1.25 G_M49963_IG05: mov rcx, rax jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.12 G_M49963_IG06: cmp r13d, 2 jne SHORT G_M49963_IG07 mov rcx, rdx jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG07: cmp r13d, 3 jne SHORT G_M49963_IG08 mov rcx, r8 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG08: cmp r13d, 4 jne SHORT G_M49963_IG09 mov rcx, r9 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG09: cmp r13d, 5 jne SHORT G_M49963_IG10 mov rcx, r10 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG10: cmp r13d, 6 jne SHORT G_M49963_IG11 mov rcx, r11 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG11: cmp r13d, 7 jne SHORT G_M49963_IG12 mov rcx, rsi jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG12: cmp r13d, 8 jne SHORT G_M49963_IG13 mov rcx, rdi jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG13: cmp r13d, 9 jne SHORT G_M49963_IG14 mov rcx, rbx jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG14: cmp r13d, 10 jne SHORT G_M49963_IG15 mov rcx, rbp jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG15: cmp r13d, 11 jne SHORT G_M49963_IG16 mov rcx, r14 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG16: cmp r13d, 12 jne SHORT G_M49963_IG17 mov rcx, r15 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG17: cmp r13d, 13 jne SHORT G_M49963_IG18 mov rcx, r12 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG18: cmp r13d, 14 jne SHORT G_M49963_IG19 mov rax, qword ptr [rsp+58H] mov rcx, rax jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.25 G_M49963_IG19: cmp r13d, 15 jne SHORT G_M49963_IG20 mov rcx, qword ptr [rsp+50H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG20: cmp r13d, 16 jne SHORT G_M49963_IG21 mov rcx, qword ptr [rsp+48H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG21: cmp r13d, 17 jne SHORT G_M49963_IG22 mov rcx, qword ptr [rsp+40H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG22: cmp r13d, 18 jne SHORT G_M49963_IG23 mov rcx, qword ptr [rsp+38H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG23: cmp r13d, 19 jne SHORT G_M49963_IG24 mov rcx, qword ptr [rsp+30H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG24: cmp r13d, 20 jne SHORT G_M49963_IG25 mov rcx, qword ptr [rsp+28H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG25: cmp r13d, 21 jne SHORT G_M49963_IG26 mov rcx, qword ptr [rsp+20H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG26: cmp r13d, 22 jne SHORT G_M49963_IG27 mov rcx, qword ptr [rsp+18H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG27: cmp r13d, 23 jne SHORT G_M49963_IG28 mov rcx, qword ptr [rsp+10H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG28: cmp r13d, 24 jne SHORT G_M49963_IG29 mov rcx, qword ptr [rsp+08H] ;; bbWeight=0.50 PerfScore 1.12 G_M49963_IG29: mov rax, rcx ;; bbWeight=1 PerfScore 0.25 G_M49963_IG30: add rsp, 104 pop rbx pop rbp pop rsi pop rdi pop r12 pop r13 pop r14 pop r15 ret ;; bbWeight=1 PerfScore 5.25 ; Total bytes of code 684, prolog size 16, PerfScore 156.65, instruction count 182, allocated bytes for code 684 (MethodHash=41553cd4) for method MiniBench.C:Test3(int):long ; ============================================================
更改後文本
開啟檔案
; Assembly listing for method MiniBench.C:Test3(int):long ; Emitting BLENDED_CODE for X64 CPU with AVX - Windows ; optimized code ; rsp based frame ; partially interruptible ; No PGO data ; Final local variable assignments ; ; V00 arg0 [V00,T01] ( 27, 15.50) int -> [rsp+B0H] ; V01 loc0 [V01,T03] ( 3, 2 ) long -> rdx ; V02 loc1 [V02,T04] ( 3, 2 ) long -> r8 ; V03 loc2 [V03,T05] ( 3, 2 ) long -> r9 ; V04 loc3 [V04,T06] ( 3, 2 ) long -> r10 ; V05 loc4 [V05,T07] ( 3, 2 ) long -> r11 ; V06 loc5 [V06,T08] ( 3, 2 ) long -> rsi ; V07 loc6 [V07,T09] ( 3, 2 ) long -> rdi ; V08 loc7 [V08,T10] ( 3, 2 ) long -> rbx ; V09 loc8 [V09,T11] ( 3, 2 ) long -> rbp ; V10 loc9 [V10,T12] ( 3, 2 ) long -> r14 ; V11 loc10 [V11,T13] ( 3, 2 ) long -> r15 ; V12 loc11 [V12,T14] ( 3, 2 ) long -> r12 ; V13 loc12 [V13,T15] ( 3, 2 ) long -> [rsp+60H] ; V14 loc13 [V14,T16] ( 3, 2 ) long -> [rsp+58H] ; V15 loc14 [V15,T17] ( 3, 2 ) long -> [rsp+50H] ; V16 loc15 [V16,T18] ( 3, 2 ) long -> [rsp+48H] ; V17 loc16 [V17,T19] ( 3, 2 ) long -> [rsp+40H] ; V18 loc17 [V18,T20] ( 3, 2 ) long -> [rsp+38H] ; V19 loc18 [V19,T21] ( 3, 2 ) long -> [rsp+30H] ; V20 loc19 [V20,T22] ( 3, 2 ) long -> [rsp+28H] ; V21 loc20 [V21,T23] ( 3, 2 ) long -> [rsp+20H] ; V22 loc21 [V22,T24] ( 3, 2 ) long -> [rsp+18H] ; V23 loc22 [V23,T25] ( 3, 2 ) long -> [rsp+10H] ; V24 loc23 [V24,T26] ( 3, 2 ) long -> [rsp+08H] ; V25 loc24 [V25,T02] ( 26, 14 ) long -> rax ;# V26 OutArgs [V26 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace" ; V27 cse0 [V27,T00] ( 26, 26 ) long -> rax "CSE - aggressive" ; ; Lcl frame size = 104 G_M49963_IG01: push r15 push r14 push r13 push r12 push rdi push rsi push rbp push rbx sub rsp, 104 mov dword ptr [rsp+B0H], ecx ;; bbWeight=1 PerfScore 9.25 G_M49963_IG02: xor eax, eax mov rdx, rax mov r8, rax mov r9, rax mov r10, rax mov r11, rax mov rsi, rax mov rdi, rax mov rbx, rax mov rbp, rax mov r14, rax mov r15, rax mov r12, rax mov r13, rax mov qword ptr [rsp+58H], rax mov qword ptr [rsp+50H], rax mov qword ptr [rsp+48H], rax mov qword ptr [rsp+40H], rax mov qword ptr [rsp+38H], rax mov qword ptr [rsp+30H], rax mov qword ptr [rsp+28H], rax mov qword ptr [rsp+20H], rax mov qword ptr [rsp+18H], rax mov qword ptr [rsp+10H], rax mov qword ptr [rsp+08H], rax mov ecx, dword ptr [rsp+B0H] cmp ecx, 100 jne G_M49963_IG04 ;; bbWeight=1 PerfScore 16.75 G_M49963_IG03: mov edx, 1 mov r8d, 2 mov r9d, 3 mov r10d, 4 mov r11d, 5 mov esi, 6 mov edi, 7 mov ebx, 8 mov ebp, 9 mov r14d, 10 mov r15d, 11 mov r12d, 12 mov qword ptr [rsp+60H], 13 mov qword ptr [rsp+58H], 14 mov qword ptr [rsp+50H], 15 mov qword ptr [rsp+48H], 16 mov qword ptr [rsp+40H], 17 mov qword ptr [rsp+38H], 18 mov qword ptr [rsp+30H], 19 mov qword ptr [rsp+28H], 20 mov qword ptr [rsp+20H], 21 mov qword ptr [rsp+18H], 22 mov qword ptr [rsp+10H], 23 mov r13d, 24 mov qword ptr [rsp+08H], r13 mov r13, qword ptr [rsp+60H] ;; bbWeight=0.50 PerfScore 8.12 G_M49963_IG04: cmp ecx, 1 jne SHORT G_M49963_IG06 ;; bbWeight=1 PerfScore 1.25 G_M49963_IG05: mov rax, rdx jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.12 G_M49963_IG06: cmp ecx, 2 jne SHORT G_M49963_IG07 mov rax, r8 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG07: cmp ecx, 3 jne SHORT G_M49963_IG08 mov rax, r9 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG08: cmp ecx, 4 jne SHORT G_M49963_IG09 mov rax, r10 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG09: cmp ecx, 5 jne SHORT G_M49963_IG10 mov rax, r11 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG10: cmp ecx, 6 jne SHORT G_M49963_IG11 mov rax, rsi jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG11: cmp ecx, 7 jne SHORT G_M49963_IG12 mov rax, rdi jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG12: cmp ecx, 8 jne SHORT G_M49963_IG13 mov rax, rbx jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG13: cmp ecx, 9 jne SHORT G_M49963_IG14 mov rax, rbp jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG14: cmp ecx, 10 jne SHORT G_M49963_IG15 mov rax, r14 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG15: cmp ecx, 11 jne SHORT G_M49963_IG16 mov rax, r15 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG16: cmp ecx, 12 jne SHORT G_M49963_IG17 mov rax, r12 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG17: cmp ecx, 13 jne SHORT G_M49963_IG18 mov rax, r13 jmp G_M49963_IG29 ;; bbWeight=0.50 PerfScore 1.75 G_M49963_IG18: cmp ecx, 14 jne SHORT G_M49963_IG19 mov rax, qword ptr [rsp+58H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG19: cmp ecx, 15 jne SHORT G_M49963_IG20 mov rax, qword ptr [rsp+50H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG20: cmp ecx, 16 jne SHORT G_M49963_IG21 mov rax, qword ptr [rsp+48H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG21: cmp ecx, 17 jne SHORT G_M49963_IG22 mov rax, qword ptr [rsp+40H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG22: cmp ecx, 18 jne SHORT G_M49963_IG23 mov rax, qword ptr [rsp+38H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG23: cmp ecx, 19 jne SHORT G_M49963_IG24 mov rax, qword ptr [rsp+30H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG24: cmp ecx, 20 jne SHORT G_M49963_IG25 mov rax, qword ptr [rsp+28H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG25: cmp ecx, 21 jne SHORT G_M49963_IG26 mov rax, qword ptr [rsp+20H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG26: cmp ecx, 22 jne SHORT G_M49963_IG27 mov rax, qword ptr [rsp+18H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG27: cmp ecx, 23 jne SHORT G_M49963_IG28 mov rax, qword ptr [rsp+10H] jmp SHORT G_M49963_IG29 ;; bbWeight=0.50 PerfScore 2.12 G_M49963_IG28: cmp ecx, 24 jne SHORT G_M49963_IG29 mov rax, qword ptr [rsp+08H] ;; bbWeight=0.50 PerfScore 1.12 G_M49963_IG29: add rsp, 104 pop rbx pop rbp pop rsi pop rdi pop r12 pop r13 pop r14 pop r15 ret ;; bbWeight=1 PerfScore 5.25 ; Total bytes of code 633, prolog size 16, PerfScore 148.43, instruction count 169, allocated bytes for code 633 (MethodHash=41553cd4) for method MiniBench.C:Test3(int):long ; ============================================================
尋找差異