PCA$HELP.HLB  —  Frequently Asked Questions, PCA Changes Program Behavior
    Why does my program behave differently when ran with PCA?

    One of the following conditions probably exists:

    -  Uninitialized stack variables

    -  Dependence on memory above SP

    -  Assumptions about memory allocation

    Cases 1 and 2 occur because PCA comes in as a handler and uses
    the stack above the user program's stack. Consequently, the
    stack is manipulated in ways that are different than when run
    without PCA. Although this is unlikely to happen, compiler code
    generation bugs have caused this sort of behavior.

    Case 3 above occurs because PCA now lives in the process memory
    space and requests memory by means of SYS$EXPREG. PCA requests a
    large amount of memory at initialization to minimize the altering
    of memory allocation, but this still may happen.

    PCA may have a bug where it is smashing the stack or the random
    user memory. HP appreciates your input because these bugs are
    hard to track down, and because they have been known to come and
    go based on the order of modules in a linker options file.

    HP recommends that you try the following:

    -  Try GO/NOCOLLECT. If the program malfunctions, it's your LINK
       with PCA.

    -  Try a run with simple PC sampling only. PC sampling is the
       least likely mode for bugs. If your program malfunctions,
       the problem probably lies with your program. If your program
       doesn't malfunction, the problem probably lies with PCA.

    If you are still convinced that PCA is changing the behavior of
    your program:

    If you have a support contract, contact your HP support
    representative. Otherwise, contact your HP account representative
    or your authorized reseller.

    When reporting a problem, please include the following
    information:

    o  The versions of PCA and of the OpenVMS operating system being
       used.

    o  As complete a description of the problem as possible, trying
       not to overlook any details.

    o  The problem reduced to as small a size as possible.

    o  If the problem is with the collector:

       -  Does the program run GO/NOCOLLECT?

       -  Does the program run with the OpenVMS debugger?

       -  If Counters, Coverage, or Events are involved, does the
          program behave properly when breakpoints are put in the
          same locations with the OpenVMS debugger?

       -  Please supply the version of the compiler(s) used.

       -  Files needed to build the program, including build
          procedures.

    o  If the problem is with the Analyzer:

       -  The .PCA file involved

       -  The sources referenced by the .PCA file

       -  A PCA initialization file to reproduce the problem.

    o  All file should be submitted on machine-readable media
       (magnetic tape `*preferred`*, floppy diskette, or tape
       cassette).

    o  Any stack dumps the occurred, if applicable.
Close Help