Masm32 SDK description, downloads and other helpful links
Message to All Guests
NB: Posting URL's See here: Posted URL Change
Quote from: LordAdef on June 24, 2025, 06:57:25 AMjust a quick test to confirm or disprove myths
AMD Athlon Gold 3150U with Radeon Graphics (SSE4)
396 cycles for 100 * proc aligned 16
419 cycles for 100 * proc aligned 16+3
401 cycles for 100 * proc aligned 16
400 cycles for 100 * proc aligned 16+3
409 cycles for 100 * proc aligned 16
399 cycles for 100 * proc aligned 16+3
401 cycles for 100 * proc aligned 16
418 cycles for 100 * proc aligned 16+3
397 cycles for 100 * proc aligned 16
398 cycles for 100 * proc aligned 16+3
15 bytes for proc aligned 16
19 bytes for proc aligned 16+3
Quote==== TEST #1 CALLER ==============================================================
invoke: 51.18810 call: 44.13920 jmp: 35.24660 jmp_pushing: 44.74300
invoke: 44.96600 call: 44.10660 jmp: 34.26130 jmp_pushing: 42.71250
invoke: 43.77120 call: 45.44520 jmp: 35.09800 jmp_pushing: 46.52150
invoke: 43.47780 call: 43.58000 jmp: 34.77580 jmp_pushing: 43.93240
invoke: 43.99490 call: 43.36610 jmp: 39.00610 jmp_pushing: 48.52570
invoke: 43.75280 call: 43.35760 jmp: 34.31600 jmp_pushing: 42.59190
invoke: 44.27360 call: 44.22860 jmp: 34.54470 jmp_pushing: 42.56120
invoke: 43.04470 call: 42.56870 jmp: 35.17680 jmp_pushing: 42.03310
invoke: 44.51420 call: 42.30670 jmp: 33.87610 jmp_pushing: 43.54790
invoke: 43.75550 call: 42.78820 jmp: 34.55940 jmp_pushing: 42.61780
==== TEST #2 CALLER ==============================================================
invoke: 77.59330 call: 76.54300 jmp: 68.06050 jmp_pushing: 77.61630
invoke: 78.68050 call: 76.96140 jmp: 70.91430 jmp_pushing: 77.28310
invoke: 78.42120 call: 77.09150 jmp: 68.82880 jmp_pushing: 76.40940
invoke: 92.78660 call: 77.76970 jmp: 69.18330 jmp_pushing: 77.26350
invoke: 77.11010 call: 78.56060 jmp: 69.07500 jmp_pushing: 76.06720
invoke: 78.19980 call: 77.71200 jmp: 71.99470 jmp_pushing: 77.59610
invoke: 78.02620 call: 76.29750 jmp: 68.89000 jmp_pushing: 78.36600
invoke: 78.33900 call: 76.02230 jmp: 68.66480 jmp_pushing: 77.67070
invoke: 77.91140 call: 75.95980 jmp: 69.06700 jmp_pushing: 76.11040
invoke: 78.43950 call: 77.61860 jmp: 69.92810 jmp_pushing: 76.97630
Quote from: NoCforMe on May 13, 2025, 05:44:14 AMSo I'm curious about how exactly processes work here. Does the DLL run in a separate process, or is it part of the debugee's process? Also, my understanding is that the DLL will be unloaded when the last program (process) that uses it terminates (i.e., when the reference count goes to zero); is that correct? It seems to work that way.
In any case, everything seems to be working OK. One possible snag occurs to me, though: what if there are multiple programs that are using that control? That means that the class will remain registered even after the DLL is unloaded.