Untitled Diff

Creado El diff nunca expira
82 eliminaciones
152 líneas
117 adiciones
192 líneas
; Assembly listing for method testout1:Func_0_4_3():double
; Assembly listing for method testout1:Func_0_4_3():double
; Emitting BLENDED_CODE for X64 CPU with AVX - Unix
; Emitting BLENDED_CODE for X64 CPU with AVX - Unix
; optimized code
; optimized code
; rbp based frame
; rbp based frame
; partially interruptible
; partially interruptible
; No matching PGO data
; No matching PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 0 inlinees without PGO data
; 0 inlinees with PGO data; 2 single block inlinees; 0 inlinees without PGO data
; Final local variable assignments
; Final local variable assignments
;
;
;* V00 loc0 [V00,T00] ( 0, 0 ) struct (56) zero-ref do-not-enreg[SF] ld-addr-op
; V00 loc0 [V00,T00] ( 23, 23 ) struct (56) [rbp-38H] do-not-enreg[SF] must-init ld-addr-op
;* V01 loc1 [V01 ] ( 0, 0 ) double -> zero-ref single-def
;* V01 loc1 [V01 ] ( 0, 0 ) double -> zero-ref single-def
;# V02 OutArgs [V02 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace"
;# V02 OutArgs [V02 ] ( 1, 1 ) lclBlk ( 0) [rsp+00H] "OutgoingArgSpace"
; V03 tmp1 [V03,T07] ( 2, 4 ) double -> mm0 "Inlining Arg"
; V03 tmp1 [V03,T04] ( 2, 4 ) double -> mm0 "Inlining Arg"
; V04 cse0 [V04,T08] ( 3, 3 ) double -> mm2 "CSE - aggressive"
; V04 cse0 [V04,T05] ( 3, 3 ) double -> mm2 "CSE - aggressive"
; V05 cse1 [V05,T03] ( 4, 4 ) float -> mm4 "CSE - aggressive"
; V05 cse1 [V05,T03] ( 4, 4 ) float -> mm1 "CSE - aggressive"
;* V06 cse2 [V06,T02] ( 0, 0 ) long -> zero-ref "CSE - aggressive"
;* V06 cse2 [V06,T02] ( 0, 0 ) long -> zero-ref "CSE - aggressive"
; V07 cse3 [V07,T01] ( 8, 8 ) ref -> rax "CSE - aggressive"
; V07 cse3 [V07,T01] ( 8, 8 ) ref -> rax "CSE - aggressive"
; V08 cse4 [V08,T04] ( 3, 3 ) double -> [rbp-08H] "CSE - aggressive"
; V09 cse5 [V09,T05] ( 3, 3 ) float -> [rbp-0CH] "CSE - aggressive"
; V10 cse6 [V10,T06] ( 3, 3 ) float -> [rbp-10H] "CSE - aggressive"
;
;
; Lcl frame size = 16
; Lcl frame size = 64


G_M51537_IG01: ; gcrefRegs=00000000 {}, byrefRegs=00000000 {}, byref, nogc <-- Prolog IG
G_M51537_IG01: ; gcrefRegs=00000000 {}, byrefRegs=00000000 {}, byref, nogc <-- Prolog IG
push rbp
push rbp
sub rsp, 16
sub rsp, 64
vzeroupper
vzeroupper
lea rbp, [rsp+10H]
lea rbp, [rsp+40H]
;; bbWeight=1 PerfScore 2.75
xor eax, eax
mov qword ptr [rbp-38H], rax
vxorps xmm8, xmm8
vmovdqa xmmword ptr [rbp-30H], xmm8
vmovdqa xmmword ptr [rbp-20H], xmm8
vmovdqa xmmword ptr [rbp-10H], xmm8
;; bbWeight=1 PerfScore 7.33
G_M51537_IG02: ; gcrefRegs=00000000 {}, byrefRegs=00000000 {}, byref
G_M51537_IG02: ; gcrefRegs=00000000 {}, byrefRegs=00000000 {}, byref
vmovsd xmm0, qword ptr [reloc @RWD00]
vmovsd xmm0, qword ptr [reloc @RWD00]
vmovsd qword ptr [rbp-08H], xmm0
vmovsd qword ptr [rbp-38H], xmm0
vmovss xmm1, dword ptr [reloc @RWD08]
vmovsd qword ptr [rbp-30H], xmm0
vmovss dword ptr [rbp-0CH], xmm1
vmovss xmm0, dword ptr [reloc @RWD08]
vmovss xmm2, dword ptr [reloc @RWD12]
vmovss dword ptr [rbp-28H], xmm0
vmovss dword ptr [rbp-10H], xmm2
vmovss dword ptr [rbp-24H], xmm0
vmovss dword ptr [rbp-20H], xmm0
vmovss dword ptr [rbp-1CH], xmm0
vmovsd xmm0, qword ptr [reloc @RWD00]
vmovsd qword ptr [rbp-18H], xmm0
vmovsd qword ptr [rbp-10H], xmm0
vmovss xmm0, dword ptr [reloc @RWD08]
vmovss dword ptr [rbp-08H], xmm0
vmovss dword ptr [rbp-04H], xmm0
vmovsd xmm0, qword ptr [reloc @RWD16]
vmovsd qword ptr [rbp-38H], xmm0
vmovsd xmm0, qword ptr [reloc @RWD24]
vmovsd qword ptr [rbp-30H], xmm0
vmovss xmm0, dword ptr [reloc @RWD32]
vmovss dword ptr [rbp-28H], xmm0
vmovss xmm0, dword ptr [reloc @RWD36]
vmovss dword ptr [rbp-24H], xmm0
vmovss xmm0, dword ptr [reloc @RWD40]
vmovss dword ptr [rbp-20H], xmm0
vmovss xmm0, dword ptr [reloc @RWD44]
vmovss dword ptr [rbp-1CH], xmm0
vmovsd xmm0, qword ptr [reloc @RWD48]
vmovsd qword ptr [rbp-18H], xmm0
vmovsd xmm0, qword ptr [reloc @RWD56]
vmovsd qword ptr [rbp-10H], xmm0
vmovss xmm0, dword ptr [reloc @RWD64]
vmovss dword ptr [rbp-08H], xmm0
vmovss xmm0, dword ptr [reloc @RWD68]
vmovss dword ptr [rbp-04H], xmm0
mov rdi, 0xD1FFAB1E
mov rdi, 0xD1FFAB1E
mov esi, 1
mov esi, 1
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
call CORINFO_HELP_GETSHARED_NONGCSTATIC_BASE
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov rdi, 0xD1FFAB1E
mov rdi, 0xD1FFAB1E
mov qword ptr [rax+8], rdi
mov qword ptr [rax+8], rdi
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
vmovsd xmm0, qword ptr [rbp-08H]
mov rdi, 0xD1FFAB1E
vmovsd qword ptr [rax+16], xmm0
mov qword ptr [rax+16], rdi
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov dword ptr [rax+24], 0xD1FFAB1E
mov dword ptr [rax+24], 0xD1FFAB1E
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
vmovss xmm1, dword ptr [rbp-0CH]
mov dword ptr [rax+28], 0xD1FFAB1E
vmovss dword ptr [rax+28], xmm1
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov edi, 0xD1FFAB1E
mov edi, 0xD1FFAB1E
mov dword ptr [rax+32], edi
mov dword ptr [rax+32], edi
;; bbWeight=1 PerfScore 56.50
G_M51537_IG03: ; , extend
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov edi, 0xD1FFAB1E
mov edi, 0xD1FFAB1E
mov dword ptr [rax+36], edi
mov dword ptr [rax+36], edi
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov rdi, 0xD1FFAB1E
mov rdi, 0xD1FFAB1E
mov qword ptr [rax+40], rdi
mov qword ptr [rax+40], rdi
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov rdi, 0xD1FFAB1E
mov rdi, 0xD1FFAB1E
mov qword ptr [rax+48], rdi
mov qword ptr [rax+48], rdi
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
mov dword ptr [rax+56], 0xD1FFAB1E
mov dword ptr [rax+56], 0xD1FFAB1E
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
vmovss xmm2, dword ptr [rbp-10H]
mov dword ptr [rax+60], 0xD1FFAB1E
vmovss dword ptr [rax+60], xmm2
mov rax, 0xD1FFAB1E
mov rax, 0xD1FFAB1E
; gcrRegs -[rax]
; gcrRegs -[rax]
mov rax, gword ptr [rax]
mov rax, gword ptr [rax]
; gcrRegs +[rax]
; gcrRegs +[rax]
vmovss xmm3, dword ptr [rax+56]
vmovss xmm0, dword ptr [rax+56]
vaddss xmm3, xmm3, dword ptr [reloc @RWD16]
vaddss xmm0, xmm0, dword ptr [reloc @RWD72]
vmulss xmm3, xmm3, dword ptr [reloc @RWD20]
vmulss xmm0, xmm0, dword ptr [reloc @RWD76]
vmovss xmm4, dword ptr [rax+24]
vmovss xmm1, dword ptr [rax+24]
;; bbWeight=1 PerfScore 63.50
vmulss xmm0, xmm0, xmm1
G_M51537_IG03: ; , extend
vsubss xmm2, xmm1, dword ptr [rbp-24H]
vmulss xmm3, xmm3, xmm4
vdivss xmm1, xmm1, xmm2
vsubss xmm1, xmm4, xmm1
vmulss xmm0, xmm0, xmm1
vdivss xmm1, xmm4, xmm1
vmovss xmm1, dword ptr [rax+36]
vmulss xmm1, xmm3, xmm1
vmovss xmm2, dword ptr [rax+32]
vmovss xmm3, dword ptr [rax+36]
vmulss xmm2, xmm2, dword ptr [rbp-04H]
vmulss xmm2, xmm2, dword ptr [rax+32]
vaddss xmm2, xmm3, xmm2
vaddss xmm1, xmm1, xmm2
vaddss xmm1, xmm1, xmm2
vcvtss2sd xmm1, xmm1
vaddss xmm0, xmm0, xmm1
vmovsd xmm2, qword ptr [rax+48]
vcvtss2sd xmm0, xmm0
vdivsd xmm0, xmm2, xmm0
vmovsd xmm1, qword ptr [rax+48]
vdivsd xmm1, xmm1, qword ptr [rbp-30H]
vmovsd xmm2, qword ptr [rax+8]
vmovsd xmm2, qword ptr [rax+8]
vaddsd xmm3, xmm2, qword ptr [reloc @RWD00]
vaddsd xmm3, xmm2, qword ptr [reloc @RWD24]
vmulsd xmm2, xmm2, qword ptr [rax+40]
vmulsd xmm2, xmm2, qword ptr [rax+40]
vsubsd xmm2, xmm3, xmm2
vsubsd xmm2, xmm3, xmm2
vdivsd xmm0, xmm0, xmm2
vdivsd xmm1, xmm1, xmm2
vmulsd xmm0, xmm1, xmm0
vmulsd xmm0, xmm0, xmm1
;; bbWeight=1 PerfScore 82.00
;; bbWeight=1 PerfScore 120.25
G_M51537_IG04: ; , epilog, nogc, extend
G_M51537_IG04: ; , epilog, nogc, extend
add rsp, 16
add rsp, 64
pop rbp
pop rbp