This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFC][PATCH][PR 18376] gdb: Add process record and replay support for s390.


Marcin KoÃ?cielnicki <koriakin at 0x04 dot net> wrote:

> I have added pseudo-support for TBEGIN (just to let it abort and fallback),
> as well as PPA and ETND (on the off-chance someone uses them).

Excellent.

> I have also found three missing break statements and fixed those.

Huh, I didn't find those :-)  I found a small number of issues (mostly
cosmetic) ... review will follow shortly.

> The second patch implements single-stepping over a MVCLE+JO pair (as well
> as other partial-execution instructions that can write memory).   I haven't
> limitted it to record-only - AFAICT it doesn't cause any problems without
> record (in fact, it should decrease context switches for large transfers),
> but I'll restrict that if necessary.

Well, I was thinking that if you manually single-step, you might want to
see the actual machine behavior.  That's why I suggested restricting the
behavior to recording ...

> As for the Uniersity of Syracuse machines, I do have access, and they are
> only z196.

Huh, I thought those were z13 ...   I'll check whether there is a z13
available somewhere.

> There's also an ambiguity in LCBB opcode documentation: it produces a 32-bit
> unsigned result, but the text mentions storing it to the general register
> (not to bits 32-63 of a general register, as is common for documentation
> of proper 32-bit opcodes).  I don't have a vector-supporting machine, so
> I can't check what is correct.  The patch goes the safe way and assumes
> all 64 bits of GR can be changed.

LCBB definitely only stores bits 32-63 of a general register.  For other
instructions, the PoP uses a wording like "the operand is treated as
32-bit unsigned integer" to indicate this; I think the wording for LCBB
is different simply because there is no *G variant of the instruction.

Bye,
Ulrich

-- 
  Dr. Ulrich Weigand
  GNU/Linux compilers and toolchain
  Ulrich.Weigand@de.ibm.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]