Warning: This is a severely early work in progress.
I was using AMD's profiling software, but it's quite a bloated pig. I can't imagine trying to fit it into a development cycle! This way just seems easier to me.
The idea is to have a single include file that changes the PROLOGUE/EPILOGUE to profile all/select proceedures. I would like to have cummulitive information across several runs of the same program. There will be code to display/load/save custom profiling information. I think there are still bugs in the macros - it worked on a test, but I couldn't just grab any program and include it. Anyone have some suggestions? Want to test the macros?
I will post updates as they come - this isn't on the front burner.
I was using AMD's profiling software, but it's quite a bloated pig. I can't imagine trying to fit it into a development cycle! This way just seems easier to me.
The idea is to have a single include file that changes the PROLOGUE/EPILOGUE to profile all/select proceedures. I would like to have cummulitive information across several runs of the same program. There will be code to display/load/save custom profiling information. I think there are still bugs in the macros - it worked on a test, but I couldn't just grab any program and include it. Anyone have some suggestions? Want to test the macros?
I will post updates as they come - this isn't on the front burner.
Sounds interesting BitRack, however, I'm not sure I followed exactly what it does ... I downloaded the include file, but what is the PROLOGUE/EPILOGUE of a procedure?
Sliver
Sliver
MASM uses the PROLOGUE/EPILOGUE macros like so:
MyProc PROC a:DWORD,b:DWORD
; execute PROLOGUE macro
;...
ret ; execute EPILOGUE macro
MyProc ENDP
MASM has internal default macros, but you can define your own, for special purposes.I never included an example with this code! Sorry.
Basically, code as normally but now there is a new option for PROC/ENDP called PROFILE (must be caps). To add profile code to the PROC do the following:
This is an example how - use it!
Basically, code as normally but now there is a new option for PROC/ENDP called PROFILE (must be caps). To add profile code to the PROC do the following:
testPROC PROC [b]<PROFILE>[/b] uses esi edi, abc:DWORD
...
...
testPROC ENDP
Yes, you can add features to your PROCs!
This is an example how - use it!
bitRAKE,
Are you going to create new HLA?
Are you going to create new HLA?
Information on Prologue/Epilogue:
MASM Manual: Chapter 7 (toward the bottom):
http://webster.cs.ucr.edu/Page_TechDocs/MASMDoc/ProgrammersGuide/Chap_07.htm
Early Microsoft example (see WINPRO.INC):
http://support.microsoft.com/support/kb/articles/Q77/2/56.asp
http://download.microsoft.com/download/platformsdk/sample34/1/W31/EN-US/MASMWin.exe
MASM Manual: Chapter 7 (toward the bottom):
http://webster.cs.ucr.edu/Page_TechDocs/MASMDoc/ProgrammersGuide/Chap_07.htm
Early Microsoft example (see WINPRO.INC):
http://support.microsoft.com/support/kb/articles/Q77/2/56.asp
http://download.microsoft.com/download/platformsdk/sample34/1/W31/EN-US/MASMWin.exe