ITEM: BA0345L
gprof and MICRO FOCUS COBOL
Question:
I am using MICRO FOCUS COBOL v3.1.59 PRN=6a.1a.10.10. Will this version
of COBOL:
1) Support the use of the -pg compiler?
2) Will the COBOL compiler directive "profile" profile my "C" programs?
3) I want to get the gmon.out file, why do i get mon.out?
4) When I compile my "C" programs with the -pg option and link with
COBOL I lose the detail "C" statistics, how can I prevent this?
Response:
1) MICRO FOCUS does not support the -pg compiler option. MICRO FOCUS
only supports the -p option as described in the System Reference
Manual in Appendix B page 13.
2) NO. The COBOL compiler directive "profile" is ONLY for COBOL
programs, it cannot provide statistics for "C" routines.
3) You get the mon.out file for two reasons. First COBOL is setup to
only support the -p option (minimum profiling, ie mon.out) and not
-pg (maximum profiling ie gmon.out). Second COBOL uses the startup
module crt0.o instead of gcrt0.o (required for gmon.out). It must
be pointed out MICRO FOCUS WILL NOT SUPPORT anyone who uses the
gcrt0.o startup routine.
4) The only way to retain the "C" detail is as follows:
a. Compile all "C" programs with the -pg option
b. Make a copy of the file "liblist" located in the directory
/usr/lib/cobol/coblib to someplace like /usr/tmp/mylist.
NEVER MODIFY THE LIBLIST FILE IN /USR/LIB/COBOL/COBLIB.
c. Edit the "mylist" file and change the line that reads
i/lib/crt0.o to read i/lib/gcrt0.o.
d. Set the variable LIBLIST=/usr/tmp/mylist
e. When building a new rts32 or compiling you own executable
use the COBOL compiler flag -g as described in the System
Reference manual Appendix B page 7.
If you follow steps a through e, when you execute the program a gmon.out
will be produced. You then use the gprof command to process the
gmon.out file and produce the statistical report, which will
contain the detail for the "C" programs.
One again steps b through e should ONLY be used for testing
and performance tuning. NEVER use this method for installing
production programs, as MICRO FOCUS WILL NOT SUPPORT anyone who
uses the gcrt0.o startup module.
Support Line: gprof and MICRO FOCUS COBOL ITEM: BA0345L
Dated: October 1995 Category: N/A
This HTML file was generated 99/06/24~13:30:24
Comments or suggestions?
Contact us