The information in this article applies to:
The information in this article is included in the documentation starting with Visual C++ 5.0. Look there for future revisions. SUMMARY
Code assembled with the Microsoft Macro Assembler (MASM) version 5.1
or 5.1a may not produce sufficient symbols for the Source Profiler to
produce reports based on functions. This is not a problem in the
Profiler; it is a limitation of the CodeView symbolic debugging
information generated by MASM 5.1 and 5.1a where PROC names are not
placed in the symbol table under certain circumstances.
MORE INFORMATION
When a PROC name is not placed in the CodeView symbol table, the
Profiler is unable to profile it by function and the PROC name will
not show up in the Profiler report. When this occurs, a valid
workaround is to place a local variable in the function so that the
symbol is properly recorded. This will add some minor code to that
function, so it is not advisable to leave the variable declaration in
the final version of the program, but it may be useful for the
profiling stage of development.
Sample CodeCompile and assemble the source modules as indicated (you must assemble with MASM 5.1 or 5.1a to demonstrate the problem). Link the resulting .OBJs with the /CO option. Profile the .EXE with /FC, /FT, or /FV and observe how asmfunc1 is missing from the Profiler output.C Module
Assembly Module
Additional query words: 1.00
Keywords : kbcode kb16bitonly TlsMisc |
Last Reviewed: October 28, 1999 © 2000 Microsoft Corporation. All rights reserved. Terms of Use. |