Thomas David Rivers
2018-05-31 21:05:56 UTC
The doc on the BPX1PTR (ptrace) facility indicates that
an SVC 144 should be used to set a break-point, but it
very carefully then goes on to say this:
Any modification that is made to register 14 with a PT_WRITE_GPR
request is lost. This is because the SVC 144 routine uses register 14
to exit.
which is a little surprising - because there might be really good
reasons to want to change register 14 at a break-point.
I tried to change $r14 in dbx at a break-pt and sure enough, couldn't do it.
Then I tried setting $r0 to something - and that didn't work either...
(using the dbx command:
set $r0=5
for example - which got no complaints but also didn't perform the task.)
I didn't find anything in the dbx documentation that says "oh - you can't
set $r<n> (general register) values."
So - this has led me to ask a question - can you set register values in dbx
when you reach a break point? Or - is this a bug? Or - more likely - am
I not
doing something right?
And - why would register 14 be so carefully carved-out? Seems like the
SVC 144
could "return" without requiring R14, perhaps via some LOADPSW or similar
approach within the bowels of the OS...
Thoughts ??
- Thanks -
- Dave R. -
an SVC 144 should be used to set a break-point, but it
very carefully then goes on to say this:
Any modification that is made to register 14 with a PT_WRITE_GPR
request is lost. This is because the SVC 144 routine uses register 14
to exit.
which is a little surprising - because there might be really good
reasons to want to change register 14 at a break-point.
I tried to change $r14 in dbx at a break-pt and sure enough, couldn't do it.
Then I tried setting $r0 to something - and that didn't work either...
(using the dbx command:
set $r0=5
for example - which got no complaints but also didn't perform the task.)
I didn't find anything in the dbx documentation that says "oh - you can't
set $r<n> (general register) values."
So - this has led me to ask a question - can you set register values in dbx
when you reach a break point? Or - is this a bug? Or - more likely - am
I not
doing something right?
And - why would register 14 be so carefully carved-out? Seems like the
SVC 144
could "return" without requiring R14, perhaps via some LOADPSW or similar
approach within the bowels of the OS...
Thoughts ??
- Thanks -
- Dave R. -
--
***@dignus.com Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com
***@dignus.com Work: (919) 676-0847
Get your mainframe programming tools at http://www.dignus.com