[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::decladebug

Title:Digital Ladebug debugger
Moderator:TLE::LUCIA
Created:Fri Feb 28 1992
Last Modified:Fri Jun 06 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:969
Total number of notes:3959

936.0. "Illegal instruction with conditional breakpoint" by CXXC::MJHANS (Matthew Hanselman, DEC C/C++) Fri Apr 25 1997 13:50

    Another bug that I unfortunately cannot narrow down to a clean case.  I
    can reproduce it at will while debugging the V6.0 C++ compiler.
    
    Using ladebug 4.0-35 while debugging a C++ program:
    
    Setting a breakpoint via 'stop at "filename":line-number if condition'
    causes ladebug to trap an "Illegal instruction".
    
    Reproducable program can be found as
    /usr/users/mjhans/ladebug/exxalphaosf/bl36/exe/exx.debugging_non_shared
    
    To reproduce, run ladebug on the executable & set a breakpoint at
    "me.cxx":403.  Run the executable on any source file you have, e.g.
    "run tmp.cxx".  Print out "rout->source_corresp.name", and note the
    address of name's pointer.  Quit ladebug, restart, and set the
    breakpoint by 
    
    	stop at "me.cxx":403 if rout->source_corresp.name == <address>
    
    Run the same as before, and ladebug will die.
    
    cosf% ladebug exx.debugging_non_shared
    Welcome to the Ladebug Debugger Version 4.0-35
    ------------------ 
    object file name: exx.debugging_non_shared 
    Reading symbolic information ...done
    (ladebug) stop at "me.cxx":403 if rout->source_corresp.name == 0x141d0818
    [#1: stop at "me.cxx":403 if rout->source_corresp.name==337446936 ]
    (ladebug) run tmp.cxx
    inst fault=opdec pid=16163 <ladebug> pc=0x152df150 ps=0x8 inst=0x141f3e78
    
    Ladebug Debugger Version 4.0-35 caught signal "Illegal instruction" (4).
    This is an unexpected condition and may indicate the presence of a defect.
    If you wish to report this, please include the stack trace that follows.
    Diagnostic stack trace ...
    0x152df154
    Unhandled Ladebug exception.  Recovering...
    (ladebug) quit
    
    Ladebug Debugger Version 4.0-35 caught signal "Segmentation fault" (11).
    This is an unexpected condition and may indicate the presence of a defect.
    If you wish to report this, please include the stack trace that follows.
    Diagnostic stack trace ...
    0x125e258c
    0x125e111c
    0x12596260
    0x12595f48
    0x124e76d4
    0x124e7b20
    0x124a4f6c
    0x12416f60
    0x12384ba8
    0x1223c548
    0x1224b398
    0x12223424
    0x12227970
    0x12217bac
    0x12214d7c
    end of diagnostic stack trace.
    Fatal error: Segmentation fault
    
    								- Matt
T.RTitleUserPersonal
Name
DateLines
936.1Will be in release after nextTLE::MERRITTSteve Merritt, Ladebug TeamMon Apr 28 1997 17:3020
Thanks for the report.  I was able to recreate the problem and have 
tracked down the bug.  Unfortunately, this fix will not make it in 
time to be in the upcoming release.

-Steve



Welcome to the Ladebug Debugger Version 4.0-36
------------------
object file name:
/usr/users/mjhans/ladebug/exxalphaosf/bl36/exe/exx.debugging_non_shared
Reading symbolic information ...done
(ladebug) stop at "me.cxx":403 if rout->source_corresp.name == 0x141d4d48
[#1: stop at "me.cxx":403 if rout->source_corresp.name==337464648 ]
(ladebug) run /usr/users/merritt/code_examples/src/simple/dyn-exmpl.C
[1] stopped at [void walk_scope_routines(a_scope_ptr):403 0x1253116c]
    403         walk_routine(*rout);
(ladebug) p rout->source_corresp.name
0x141d4d48="__nw__XUl"