Operating System - OpenVMS
1753705 Members
4853 Online
108799 Solutions
New Discussion

Debugger jumping around (Pascal)

 
stephenbrayshaw
Advisor

Debugger jumping around (Pascal)

When using the debugger it jumps around in the code. For example it will jump back and forth between an if statement & the previous line before finally moving on. 

In the past the fix has been to turn off all optimizations for the build but even with that it is still jumping around. 

It is IA64 OpenVMS 8.4 Pascal 6.1 compile is:

PASCAL -
/CHECK=ALL -
/DEBUG=ALL -
/GRANULARITY=QUADWORD -
/LIST=LIS:'FILENAME' -
/OBJECT=OBJ:'FILENAME' -
/NOOPTIMIZE -
/TERMINAL=(FILE_NAME) -
/USAGE=(ALL,NOPERFORMANCE) -
'FILESPEC'

Any ideas on how to stop it jumping round?

2 REPLIES 2
abrsvc
Respected Contributor

Re: Debugger jumping around (Pascal)

One of the benefits of IA64 design (Alpha too) is the ability to execute instructions out of order.  The compilers are smart enough to create efficient code which will look like lines executing out of order.  This only means that instructions are executing that are linked to certain lines.  Look at the machine code generated and you will see this in action.  Even with optimization turned off, there will still be some of this interleaving happening. 

The bottom line:  this is normal.

Dan

H.Becker
Honored Contributor

Re: Debugger jumping around (Pascal)

As far as I can see - with a small test programm - this works as expected: /DEBUG with /OPTIMIZE results in jumping and with /NOOPTIMIZE there is no jumping. Tested with HP Pascal I64 V6.1-119 on OpenVMS I64 V8.4.

I would check the compiler listings and linker map how the source module was compiled and whether the expected object module was linked into the image.