tile: avoid undefined behavior with regs[TREG_TP] etc
authorChris Metcalf <cmetcalf@ezchip.com>
Wed, 12 Nov 2014 20:00:06 +0000 (15:00 -0500)
committerChris Metcalf <cmetcalf@ezchip.com>
Thu, 13 Nov 2014 14:39:26 +0000 (09:39 -0500)
commitce433f8090da6784cdee754defcbf325fc66f274
tree81be5d2025ad1690228a18203875715e0647ff04
parenta5c1cb63ddf400cf58c7d8aecd045049f6818279
tile: avoid undefined behavior with regs[TREG_TP] etc

Recent compilers warn about accesses to arrays past the end,
which is supported for pt_regs and sigcontext with the
intended alias past the end of regs[] to sp, tp, and lr
using TREG_SP, TREG_TP, and TREG_LR.

Make the intended usage explict by providing an anonymous
union of regs[56] on the one hand, and a short __regs[53]
on the other followed by the sp, tp, and lr fields, so the
aliasing is done explicitly and is visible to the compiler.

Reviewed-by: Jeff Epler <jepler@unpythonic.net>
Signed-off-by: Chris Metcalf <cmetcalf@ezchip.com>
arch/tile/include/uapi/asm/ptrace.h
arch/tile/include/uapi/asm/sigcontext.h