/* * Copyright (c) 2021 The strace developers. * All rights reserved. * * SPDX-License-Identifier: LGPL-2.1-or-later */ static void arch_decode_pt_regs(struct tcb *const tcp, const kernel_ulong_t addr) { struct { unsigned int psr; unsigned int pc; unsigned int npc; unsigned int y; unsigned int u_regs[15]; } regs; if (umove_or_printaddr(tcp, addr, ®s)) return; tprint_struct_begin(); PRINT_FIELD_X(regs, psr); tprint_struct_next(); PRINT_FIELD_X(regs, pc); tprint_struct_next(); PRINT_FIELD_X(regs, npc); tprint_struct_next(); PRINT_FIELD_X(regs, y); tprint_struct_next(); PRINT_FIELD_ARRAY(regs, u_regs, tcp, print_xint_array_member); tprint_struct_end(); }