Created
May 18, 2016 02:01
-
-
Save AndyAyersMS/580046b927ac3be87d538463ebddf8b2 to your computer and use it in GitHub Desktop.
Inline Examples
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
; Total bytes of code 30, prolog size 1 for method NewtE:Main():int | |
; ============================================================ | |
; Assembly listing for method NewtE:Bench():bool | |
; Emitting BLENDED_CODE for X64 CPU with SSE2 | |
; optimized code | |
; rbp based frame | |
; fully interruptible | |
; Final local variable assignments | |
; | |
;* V00 loc0 [V00,T27] ( 0, 0 ) double -> zero-ref | |
; V01 loc1 [V01,T25] ( 3, 28 ) double -> mm0 | |
; V02 loc2 [V02,T26] ( 2, 24 ) double -> mm1 | |
; V03 loc3 [V03,T02] ( 24, 372 ) double -> [rbp-0x18] | |
; V04 loc4 [V04,T03] ( 11, 164 ) double -> [rbp-0x20] | |
; V05 loc5 [V05,T18] ( 3, 48 ) double -> [rbp-0x28] | |
; V06 loc6 [V06,T23] ( 3, 40 ) double -> [rbp-0x30] | |
; V07 loc7 [V07,T01] ( 4, 13 ) int -> rbx | |
; V08 loc8 [V08,T00] ( 4, 52 ) int -> r14 | |
; V09 tmp0 [V09,T05] ( 2, 64 ) double -> mm1 | |
; V10 tmp1 [V10,T06] ( 2, 64 ) double -> mm1 | |
; V11 tmp2 [V11,T07] ( 2, 64 ) double -> mm5 | |
; V12 tmp3 [V12,T08] ( 2, 64 ) double -> [rbp-0x38] | |
; V13 tmp4 [V13,T09] ( 2, 64 ) double -> mm0 | |
; V14 tmp5 [V14,T10] ( 2, 64 ) double -> mm0 | |
; V15 tmp6 [V15,T11] ( 2, 64 ) double -> mm6 | |
; V16 tmp7 [V16,T12] ( 2, 64 ) double -> [rbp-0x40] | |
; V17 tmp8 [V17,T13] ( 2, 64 ) double -> [rbp-0x48] | |
; V18 tmp9 [V18,T14] ( 2, 64 ) double -> mm0 | |
; V19 tmp10 [V19,T15] ( 2, 64 ) double -> [rbp-0x50] | |
; V20 tmp11 [V20,T16] ( 2, 64 ) double -> mm0 | |
; V21 tmp12 [V21,T17] ( 2, 64 ) double -> mm0 | |
;* V22 tmp13 [V22,T24] ( 0, 0 ) double -> zero-ref | |
;* V23 tmp14 [V23 ] ( 0, 0 ) ref -> zero-ref | |
;* V24 tmp15 [V24 ] ( 0, 0 ) ref -> zero-ref | |
;* V25 tmp16 [V25 ] ( 0, 0 ) ref -> zero-ref | |
;* V26 tmp17 [V26 ] ( 0, 0 ) ref -> zero-ref | |
;* V27 tmp18 [V27 ] ( 0, 0 ) ref -> zero-ref | |
;* V28 tmp19 [V28 ] ( 0, 0 ) ref -> zero-ref | |
;* V29 tmp20 [V29 ] ( 0, 0 ) ref -> zero-ref | |
;* V30 tmp21 [V30 ] ( 0, 0 ) ref -> zero-ref | |
;* V31 tmp22 [V31 ] ( 0, 0 ) ref -> zero-ref | |
;* V32 tmp23 [V32 ] ( 0, 0 ) ref -> zero-ref | |
;* V33 tmp24 [V33 ] ( 0, 0 ) ref -> zero-ref | |
;* V34 tmp25 [V34 ] ( 0, 0 ) ref -> zero-ref | |
;* V35 tmp26 [V35 ] ( 0, 0 ) ref -> zero-ref | |
;* V36 tmp27 [V36 ] ( 0, 0 ) ref -> zero-ref | |
;* V37 tmp28 [V37 ] ( 0, 0 ) ref -> zero-ref | |
;* V38 tmp29 [V38 ] ( 0, 0 ) ref -> zero-ref | |
;* V39 tmp30 [V39 ] ( 0, 0 ) ref -> zero-ref | |
;* V40 tmp31 [V40 ] ( 0, 0 ) ref -> zero-ref | |
;* V41 tmp32 [V41 ] ( 0, 0 ) ref -> zero-ref | |
;* V42 tmp33 [V42 ] ( 0, 0 ) ref -> zero-ref | |
;* V43 tmp34 [V43 ] ( 0, 0 ) ref -> zero-ref | |
;* V44 tmp35 [V44 ] ( 0, 0 ) ref -> zero-ref | |
;* V45 tmp36 [V45 ] ( 0, 0 ) ref -> zero-ref | |
;* V46 tmp37 [V46 ] ( 0, 0 ) ref -> zero-ref | |
;* V47 tmp38 [V47 ] ( 0, 0 ) ref -> zero-ref | |
;* V48 tmp39 [V48 ] ( 0, 0 ) ref -> zero-ref | |
;* V49 tmp40 [V49 ] ( 0, 0 ) ref -> zero-ref | |
;* V50 tmp41 [V50 ] ( 0, 0 ) ref -> zero-ref | |
;* V51 tmp42 [V51 ] ( 0, 0 ) ref -> zero-ref | |
;* V52 tmp43 [V52 ] ( 0, 0 ) ref -> zero-ref | |
;* V53 tmp44 [V53 ] ( 0, 0 ) ref -> zero-ref | |
;* V54 tmp45 [V54 ] ( 0, 0 ) ref -> zero-ref | |
;# V55 OutArgs [V55 ] ( 1, 1 ) lclBlk ( 0) [rsp+0x00] | |
; V56 cse0 [V56,T19] ( 3, 48 ) double -> [rbp-0x58] | |
; V57 cse1 [V57,T20] ( 3, 48 ) double -> [rbp-0x60] | |
; V58 cse2 [V58,T21] ( 3, 48 ) double -> [rbp-0x68] | |
; V59 cse3 [V59,T04] ( 3, 48 ) double -> [rbp-0x70] | |
; V60 cse4 [V60,T22] ( 3, 48 ) double -> [rbp-0x78] | |
; TEMP_01 double -> [rbp-0x80] | |
; | |
; Lcl frame size = 112 | |
G_M5868_IG01: | |
55 push rbp | |
4156 push r14 | |
53 push rbx | |
4883EC70 sub rsp, 112 | |
488DAC2480000000 lea rbp, [rsp+80H] | |
G_M5868_IG02: | |
BB01000000 mov ebx, 1 | |
G_M5868_IG03: | |
F20F1005FB030000 movsd xmm0, qword ptr [reloc @RWD00] | |
F20F1145E8 movsd qword ptr [rbp-18H], xmm0 | |
F20F100DF6030000 movsd xmm1, qword ptr [reloc @RWD08] | |
F20F114DE0 movsd qword ptr [rbp-20H], xmm1 | |
F20F1005F1030000 movsd xmm0, qword ptr [reloc @RWD16] | |
E814962D79 call System.Math:Log(double):double | |
F20F5905EC030000 mulsd xmm0, qword ptr [reloc @RWD24] | |
F20F114580 movsd qword ptr [rbp-80H], xmm0 | |
F20F1005E7030000 movsd xmm0, qword ptr [reloc @RWD32] | |
E8FA952D79 call System.Math:Log(double):double | |
F20F104D80 movsd xmm1, qword ptr [rbp-80H] | |
F20F5EC8 divsd xmm1, xmm0 | |
F20F580DD9030000 addsd xmm1, qword ptr [reloc @RWD40] | |
0F28C1 movaps xmm0, xmm1 | |
F20F5C05D6030000 subsd xmm0, qword ptr [reloc @RWD48] | |
41BE01000000 mov r14d, 1 | |
G_M5868_IG04: | |
F20F1045E8 movsd xmm0, qword ptr [rbp-18H] | |
E8CE952D79 call System.Math:Log(double):double | |
F20F5905C6030000 mulsd xmm0, qword ptr [reloc @RWD56] | |
F20F114580 movsd qword ptr [rbp-80H], xmm0 | |
F20F1005C1030000 movsd xmm0, qword ptr [reloc @RWD64] | |
E8B4952D79 call System.Math:Log(double):double | |
F20F104D80 movsd xmm1, qword ptr [rbp-80H] | |
F20F5EC8 divsd xmm1, xmm0 | |
F20F1045E8 movsd xmm0, qword ptr [rbp-18H] | |
F20F58C8 addsd xmm1, xmm0 | |
F20F1055E0 movsd xmm2, qword ptr [rbp-20H] | |
0F28DA movaps xmm3, xmm2 | |
F20F59DA mulsd xmm3, xmm2 | |
F20F115D88 movsd qword ptr [rbp-78H], xmm3 | |
F20F5CCB subsd xmm1, xmm3 | |
F20F102595030000 movsd xmm4, qword ptr [reloc @RWD72] | |
660F57CC xorpd xmm1, xmm4 | |
F20F102589030000 movsd xmm4, qword ptr [reloc @RWD72] | |
660F57E0 xorpd xmm4, xmm0 | |
F20F59CC mulsd xmm1, xmm4 | |
0F28E0 movaps xmm4, xmm0 | |
F20F59257E030000 mulsd xmm4, qword ptr [reloc @RWD80] | |
F20F59E0 mulsd xmm4, xmm0 | |
0F28E8 movaps xmm5, xmm0 | |
F20F59EA mulsd xmm5, xmm2 | |
F20F5CE5 subsd xmm4, xmm5 | |
F20F1145E8 movsd qword ptr [rbp-18H], xmm0 | |
0F28E8 movaps xmm5, xmm0 | |
F20F592D67030000 mulsd xmm5, qword ptr [reloc @RWD88] | |
F20F5CE5 subsd xmm4, xmm5 | |
F20F582563030000 addsd xmm4, qword ptr [reloc @RWD96] | |
F20F1165A8 movsd qword ptr [rbp-58H], xmm4 | |
0F28EC movaps xmm5, xmm4 | |
F20F1155E0 movsd qword ptr [rbp-20H], xmm2 | |
0F28F2 movaps xmm6, xmm2 | |
F20F593553030000 mulsd xmm6, qword ptr [reloc @RWD104] | |
F20F117590 movsd qword ptr [rbp-70H], xmm6 | |
F20F59EE mulsd xmm5, xmm6 | |
F20F58CD addsd xmm1, xmm5 | |
F20F114DC8 movsd qword ptr [rbp-38H], xmm1 | |
F20F100541030000 movsd xmm0, qword ptr [reloc @RWD112] | |
E804952D79 call System.Math:Log(double):double | |
F20F104DE8 movsd xmm1, qword ptr [rbp-18H] | |
F20F59C1 mulsd xmm0, xmm1 | |
F20F101533030000 movsd xmm2, qword ptr [reloc @RWD120] | |
F20F5ED0 divsd xmm2, xmm0 | |
0F28C2 movaps xmm0, xmm2 | |
F20F58052C030000 addsd xmm0, qword ptr [reloc @RWD128] | |
F20F1015EC020000 movsd xmm2, qword ptr [reloc @RWD72] | |
660F57D1 xorpd xmm2, xmm1 | |
F20F59C2 mulsd xmm0, xmm2 | |
F20F107590 movsd xmm6, qword ptr [rbp-70H] | |
F20F114DE8 movsd qword ptr [rbp-18H], xmm1 | |
0F28D1 movaps xmm2, xmm1 | |
F20F59150F030000 mulsd xmm2, qword ptr [reloc @RWD136] | |
F20F105DE0 movsd xmm3, qword ptr [rbp-20H] | |
F20F5CD3 subsd xmm2, xmm3 | |
F20F5C1506030000 subsd xmm2, qword ptr [reloc @RWD144] | |
F20F115598 movsd qword ptr [rbp-68H], xmm2 | |
0F28E2 movaps xmm4, xmm2 | |
F20F59E6 mulsd xmm4, xmm6 | |
F20F1165A0 movsd qword ptr [rbp-60H], xmm4 | |
F20F5CC4 subsd xmm0, xmm4 | |
F20F106DC8 movsd xmm5, qword ptr [rbp-38H] | |
F20F5EE8 divsd xmm5, xmm0 | |
F20F116DD8 movsd qword ptr [rbp-28H], xmm5 | |
F20F1075A8 movsd xmm6, qword ptr [rbp-58H] | |
F20F10058E020000 movsd xmm0, qword ptr [reloc @RWD72] | |
660F57C6 xorpd xmm0, xmm6 | |
G_M5868_IG05: | |
F20F1145C0 movsd qword ptr [rbp-40H], xmm0 | |
F20F1005CD020000 movsd xmm0, qword ptr [reloc @RWD152] | |
E868942D79 call System.Math:Log(double):double | |
F20F104DE8 movsd xmm1, qword ptr [rbp-18H] | |
F20F59C1 mulsd xmm0, xmm1 | |
F20F1015BF020000 movsd xmm2, qword ptr [reloc @RWD160] | |
F20F5ED0 divsd xmm2, xmm0 | |
F20F5815BB020000 addsd xmm2, qword ptr [reloc @RWD168] | |
F20F1045C0 movsd xmm0, qword ptr [rbp-40H] | |
F20F59C2 mulsd xmm0, xmm2 | |
F20F1145B8 movsd qword ptr [rbp-48H], xmm0 | |
F20F114DE8 movsd qword ptr [rbp-18H], xmm1 | |
0F28C1 movaps xmm0, xmm1 | |
E830942D79 call System.Math:Log(double):double | |
F20F5905A0020000 mulsd xmm0, qword ptr [reloc @RWD176] | |
F20F114580 movsd qword ptr [rbp-80H], xmm0 | |
F20F10059B020000 movsd xmm0, qword ptr [reloc @RWD184] | |
E816942D79 call System.Math:Log(double):double | |
F20F104D80 movsd xmm1, qword ptr [rbp-80H] | |
F20F5EC8 divsd xmm1, xmm0 | |
F20F1055E8 movsd xmm2, qword ptr [rbp-18H] | |
F20F58CA addsd xmm1, xmm2 | |
F20F105D88 movsd xmm3, qword ptr [rbp-78H] | |
0F28C1 movaps xmm0, xmm1 | |
F20F5CC3 subsd xmm0, xmm3 | |
F20F104D98 movsd xmm1, qword ptr [rbp-68H] | |
F20F59C8 mulsd xmm1, xmm0 | |
F20F1045B8 movsd xmm0, qword ptr [rbp-48H] | |
F20F58C1 addsd xmm0, xmm1 | |
F20F1145B0 movsd qword ptr [rbp-50H], xmm0 | |
F20F100561020000 movsd xmm0, qword ptr [reloc @RWD192] | |
E8D4932D79 call System.Math:Log(double):double | |
F20F1055E8 movsd xmm2, qword ptr [rbp-18H] | |
F20F59C2 mulsd xmm0, xmm2 | |
F20F100D53020000 movsd xmm1, qword ptr [reloc @RWD200] | |
F20F5EC8 divsd xmm1, xmm0 | |
0F28C1 movaps xmm0, xmm1 | |
F20F58054C020000 addsd xmm0, qword ptr [reloc @RWD208] | |
F20F100DBC010000 movsd xmm1, qword ptr [reloc @RWD72] | |
660F57CA xorpd xmm1, xmm2 | |
F20F59C1 mulsd xmm0, xmm1 | |
F20F1065A0 movsd xmm4, qword ptr [rbp-60H] | |
F20F5CC4 subsd xmm0, xmm4 | |
F20F104DB0 movsd xmm1, qword ptr [rbp-50H] | |
F20F5EC8 divsd xmm1, xmm0 | |
F20F106DD8 movsd xmm5, qword ptr [rbp-28H] | |
F20F58D5 addsd xmm2, xmm5 | |
F20F105DE0 movsd xmm3, qword ptr [rbp-20H] | |
F20F114DD0 movsd qword ptr [rbp-30H], xmm1 | |
F20F58D9 addsd xmm3, xmm1 | |
F20F115DE0 movsd qword ptr [rbp-20H], xmm3 | |
F20F1155E8 movsd qword ptr [rbp-18H], xmm2 | |
0F28C2 movaps xmm0, xmm2 | |
E869932D79 call System.Math:Log(double):double | |
F20F590501020000 mulsd xmm0, qword ptr [reloc @RWD216] | |
F20F114580 movsd qword ptr [rbp-80H], xmm0 | |
F20F1005FC010000 movsd xmm0, qword ptr [reloc @RWD224] | |
E84F932D79 call System.Math:Log(double):double | |
F20F104D80 movsd xmm1, qword ptr [rbp-80H] | |
F20F5EC8 divsd xmm1, xmm0 | |
F20F1055E8 movsd xmm2, qword ptr [rbp-18H] | |
F20F58CA addsd xmm1, xmm2 | |
F20F105DE0 movsd xmm3, qword ptr [rbp-20H] | |
0F28C3 movaps xmm0, xmm3 | |
F20F59C3 mulsd xmm0, xmm3 | |
F20F5CC8 subsd xmm1, xmm0 | |
0F28C1 movaps xmm0, xmm1 | |
0F28CA movaps xmm1, xmm2 | |
G_M5868_IG06: | |
F20F590DCF010000 mulsd xmm1, qword ptr [reloc @RWD232] | |
F20F59CA mulsd xmm1, xmm2 | |
0F28E2 movaps xmm4, xmm2 | |
F20F59E3 mulsd xmm4, xmm3 | |
F20F5CCC subsd xmm1, xmm4 | |
0F28E2 movaps xmm4, xmm2 | |
F20F5925BD010000 mulsd xmm4, qword ptr [reloc @RWD240] | |
F20F5CCC subsd xmm1, xmm4 | |
F20F580DB9010000 addsd xmm1, qword ptr [reloc @RWD248] | |
F20F106DD8 movsd xmm5, qword ptr [rbp-28H] | |
F20F1025B4010000 movsd xmm4, qword ptr [reloc @RWD256] | |
660F54EC andpd xmm5, xmm4 | |
F20F1025B0010000 movsd xmm4, qword ptr [reloc @RWD264] | |
660F2EE5 ucomisd xmm4, xmm5 | |
7653 jbe SHORT G_M5868_IG07 | |
F20F106DD0 movsd xmm5, qword ptr [rbp-30H] | |
F20F102595010000 movsd xmm4, qword ptr [reloc @RWD256] | |
660F54EC andpd xmm5, xmm4 | |
F20F102599010000 movsd xmm4, qword ptr [reloc @RWD272] | |
660F2EE5 ucomisd xmm4, xmm5 | |
7634 jbe SHORT G_M5868_IG07 | |
F20F10257B010000 movsd xmm4, qword ptr [reloc @RWD256] | |
660F54C4 andpd xmm0, xmm4 | |
F20F102587010000 movsd xmm4, qword ptr [reloc @RWD280] | |
660F2EE0 ucomisd xmm4, xmm0 | |
761A jbe SHORT G_M5868_IG07 | |
F20F100561010000 movsd xmm0, qword ptr [reloc @RWD256] | |
660F54C8 andpd xmm1, xmm0 | |
F20F100575010000 movsd xmm0, qword ptr [reloc @RWD288] | |
660F2EC1 ucomisd xmm0, xmm1 | |
7717 ja SHORT G_M5868_IG08 | |
G_M5868_IG07: | |
41FFC6 inc r14d | |
4183FE14 cmp r14d, 20 | |
F20F1155E8 movsd qword ptr [rbp-18H], xmm2 | |
F20F115DE0 movsd qword ptr [rbp-20H], xmm3 | |
0F8E98FCFFFF jle G_M5868_IG04 | |
G_M5868_IG08: | |
FFC3 inc ebx | |
81FB40420F00 cmp ebx, 0xF4240 | |
0F8E27FCFFFF jle G_M5868_IG03 | |
G_M5868_IG09: | |
B801000000 mov eax, 1 | |
G_M5868_IG10: | |
488D65F0 lea rsp, [rbp-10H] | |
5B pop rbx | |
415E pop r14 | |
5D pop rbp | |
C3 ret | |
; Total bytes of code 1020, prolog size 16 for method NewtE:Bench():bool | |
; ============================================================ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment