This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Avoid -Wnarrowing warnings in ppc64-tdep.c
- From: Tom Tromey <tromey at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 27 Aug 2018 18:09:42 -0000
- Subject: [binutils-gdb] Avoid -Wnarrowing warnings in ppc64-tdep.c
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=8406672eca8d008dc0324198ec2f653a16fb9d21
commit 8406672eca8d008dc0324198ec2f653a16fb9d21
Author: Tom Tromey <tom@tromey.com>
Date: Tue Aug 7 13:13:58 2018 -0600
Avoid -Wnarrowing warnings in ppc64-tdep.c
This avoids -Wnarrowing warnings in ppc64-tdep.c, by adding a few
casts to unsigned.
gdb/ChangeLog
2018-08-27 Tom Tromey <tom@tromey.com>
* ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
unsigned.
(ppc64_standard_linkage1, ppc64_standard_linkage2)
(ppc64_standard_linkage3, ppc64_standard_linkage4)
(ppc64_standard_linkage5, ppc64_standard_linkage6)
(ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
unsigned.
Diff:
---
gdb/ChangeLog | 10 +++++++
gdb/ppc64-tdep.c | 86 ++++++++++++++++++++++++++++----------------------------
2 files changed, 53 insertions(+), 43 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0b93707..460e8cd 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,15 @@
2018-08-27 Tom Tromey <tom@tromey.com>
+ * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
+ unsigned.
+ (ppc64_standard_linkage1, ppc64_standard_linkage2)
+ (ppc64_standard_linkage3, ppc64_standard_linkage4)
+ (ppc64_standard_linkage5, ppc64_standard_linkage6)
+ (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
+ unsigned.
+
+2018-08-27 Tom Tromey <tom@tromey.com>
+
* xtensa-tdep.h (XTREG_END): Add cast to unsigned.
(XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
diff --git a/gdb/ppc64-tdep.c b/gdb/ppc64-tdep.c
index 5d8ccb4..4b8dd3f 100644
--- a/gdb/ppc64-tdep.c
+++ b/gdb/ppc64-tdep.c
@@ -30,24 +30,24 @@
you can use -1 to make masks. */
#define insn_d(opcd, rts, ra, d) \
- ((((opcd) & 0x3f) << 26) \
- | (((rts) & 0x1f) << 21) \
- | (((ra) & 0x1f) << 16) \
- | ((d) & 0xffff))
+ ((((unsigned (opcd)) & 0x3f) << 26) \
+ | (((unsigned (rts)) & 0x1f) << 21) \
+ | (((unsigned (ra)) & 0x1f) << 16) \
+ | ((unsigned (d)) & 0xffff))
#define insn_ds(opcd, rts, ra, d, xo) \
- ((((opcd) & 0x3f) << 26) \
- | (((rts) & 0x1f) << 21) \
- | (((ra) & 0x1f) << 16) \
- | ((d) & 0xfffc) \
- | ((xo) & 0x3))
+ ((((unsigned (opcd)) & 0x3f) << 26) \
+ | (((unsigned (rts)) & 0x1f) << 21) \
+ | (((unsigned (ra)) & 0x1f) << 16) \
+ | ((unsigned (d)) & 0xfffc) \
+ | ((unsigned (xo)) & 0x3))
#define insn_xfx(opcd, rts, spr, xo) \
- ((((opcd) & 0x3f) << 26) \
- | (((rts) & 0x1f) << 21) \
- | (((spr) & 0x1f) << 16) \
- | (((spr) & 0x3e0) << 6) \
- | (((xo) & 0x3ff) << 1))
+ ((((unsigned (opcd)) & 0x3f) << 26) \
+ | (((unsigned (rts)) & 0x1f) << 21) \
+ | (((unsigned (spr)) & 0x1f) << 16) \
+ | (((unsigned (spr)) & 0x3e0) << 6) \
+ | (((unsigned (xo)) & 0x3ff) << 1))
/* PLT_OFF is the TOC-relative offset of a 64-bit PowerPC PLT entry.
Return the function's entry point. */
@@ -86,7 +86,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage1[] =
{ insn_d (-1, -1, -1, 0), insn_d (15, 12, 2, 0), 0 },
/* std r2, 40(r1) */
- { -1, insn_ds (62, 2, 1, 40, 0), 0 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 0 },
/* ld r11, <any>(r12) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 0 },
@@ -107,7 +107,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage1[] =
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 1 },
/* bctr */
- { -1, 0x4e800420, 0 },
+ { (unsigned) -1, 0x4e800420, 0 },
{ 0, 0, 0 }
};
@@ -122,13 +122,13 @@ static const struct ppc_insn_pattern ppc64_standard_linkage1[] =
static const struct ppc_insn_pattern ppc64_standard_linkage2[] =
{
/* std r2, 40(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 40, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 1 },
/* addis r12, r2, <any> */
{ insn_d (-1, -1, -1, 0), insn_d (15, 12, 2, 0), 0 },
/* std r2, 40(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 40, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 1 },
/* ld r11, <any>(r12) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 0 },
@@ -140,10 +140,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage2[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 11, 9, 467), 0 },
/* xor r11, r11, r11 <optional> */
- { -1, 0x7d6b5a78, 1 },
+ { (unsigned) -1, 0x7d6b5a78, 1 },
/* add r12, r12, r11 <optional> */
- { -1, 0x7d8c5a14, 1 },
+ { (unsigned) -1, 0x7d8c5a14, 1 },
/* ld r2, <any>(r12) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 12, 0, 0), 0 },
@@ -152,10 +152,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage2[] =
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 12, 0, 0), 1 },
/* bctr <optional> */
- { -1, 0x4e800420, 1 },
+ { (unsigned) -1, 0x4e800420, 1 },
/* cmpldi r2, 0 <optional> */
- { -1, 0x28220000, 1 },
+ { (unsigned) -1, 0x28220000, 1 },
{ 0, 0, 0 }
};
@@ -165,7 +165,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage2[] =
static const struct ppc_insn_pattern ppc64_standard_linkage3[] =
{
/* std r2, 40(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 40, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 1 },
/* ld r11, <any>(r2) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 2, 0, 0), 0 },
@@ -177,10 +177,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage3[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 11, 9, 467), 0 },
/* xor r11, r11, r11 <optional> */
- { -1, 0x7d6b5a78, 1 },
+ { (unsigned) -1, 0x7d6b5a78, 1 },
/* add r2, r2, r11 <optional> */
- { -1, 0x7c425a14, 1 },
+ { (unsigned) -1, 0x7c425a14, 1 },
/* ld r11, <any>(r2) <optional> */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 2, 0, 0), 1 },
@@ -189,10 +189,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage3[] =
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 2, 0, 0), 0 },
/* bctr <optional> */
- { -1, 0x4e800420, 1 },
+ { (unsigned) -1, 0x4e800420, 1 },
/* cmpldi r2, 0 <optional> */
- { -1, 0x28220000, 1 },
+ { (unsigned) -1, 0x28220000, 1 },
{ 0, 0, 0 }
};
@@ -204,7 +204,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage3[] =
static const struct ppc_insn_pattern ppc64_standard_linkage4[] =
{
/* std r2, 40(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 40, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 1 },
/* addis r11, r2, <any> */
{ insn_d (-1, -1, -1, 0), insn_d (15, 11, 2, 0), 0 },
@@ -219,10 +219,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage4[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
/* xor r2, r12, r12 <optional> */
- { -1, 0x7d826278, 1 },
+ { (unsigned) -1, 0x7d826278, 1 },
/* add r11, r11, r2 <optional> */
- { -1, 0x7d6b1214, 1 },
+ { (unsigned) -1, 0x7d6b1214, 1 },
/* ld r2, <any>(r11) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 11, 0, 0), 0 },
@@ -231,10 +231,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage4[] =
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 11, 0, 0), 1 },
/* bctr <optional> */
- { -1, 0x4e800420, 1 },
+ { (unsigned) -1, 0x4e800420, 1 },
/* cmpldi r2, 0 <optional> */
- { -1, 0x28220000, 1 },
+ { (unsigned) -1, 0x28220000, 1 },
{ 0, 0, 0 }
};
@@ -246,7 +246,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage4[] =
static const struct ppc_insn_pattern ppc64_standard_linkage5[] =
{
/* std r2, 40(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 40, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 40, 0), 1 },
/* ld r12, <any>(r2) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 12, 2, 0, 0), 0 },
@@ -258,10 +258,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage5[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
/* xor r11, r12, r12 <optional> */
- { -1, 0x7d8b6278, 1 },
+ { (unsigned) -1, 0x7d8b6278, 1 },
/* add r2, r2, r11 <optional> */
- { -1, 0x7c425a14, 1 },
+ { (unsigned) -1, 0x7c425a14, 1 },
/* ld r11, <any>(r2) <optional> */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 11, 2, 0, 0), 1 },
@@ -270,10 +270,10 @@ static const struct ppc_insn_pattern ppc64_standard_linkage5[] =
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 2, 2, 0, 0), 0 },
/* bctr <optional> */
- { -1, 0x4e800420, 1 },
+ { (unsigned) -1, 0x4e800420, 1 },
/* cmpldi r2, 0 <optional> */
- { -1, 0x28220000, 1 },
+ { (unsigned) -1, 0x28220000, 1 },
{ 0, 0, 0 }
};
@@ -283,7 +283,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage5[] =
static const struct ppc_insn_pattern ppc64_standard_linkage6[] =
{
/* std r2, 24(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 24, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 24, 0), 1 },
/* addis r11, r2, <any> */
{ insn_d (-1, -1, -1, 0), insn_d (15, 11, 2, 0), 0 },
@@ -295,7 +295,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage6[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
/* bctr */
- { -1, 0x4e800420, 0 },
+ { (unsigned) -1, 0x4e800420, 0 },
{ 0, 0, 0 }
};
@@ -305,7 +305,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage6[] =
static const struct ppc_insn_pattern ppc64_standard_linkage7[] =
{
/* std r2, 24(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 24, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 24, 0), 1 },
/* ld r12, <any>(r2) */
{ insn_ds (-1, -1, -1, 0, -1), insn_ds (58, 12, 2, 0, 0), 0 },
@@ -314,7 +314,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage7[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
/* bctr */
- { -1, 0x4e800420, 0 },
+ { (unsigned) -1, 0x4e800420, 0 },
{ 0, 0, 0 }
};
@@ -325,7 +325,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage7[] =
static const struct ppc_insn_pattern ppc64_standard_linkage8[] =
{
/* std r2, 24(r1) <optional> */
- { -1, insn_ds (62, 2, 1, 24, 0), 1 },
+ { (unsigned) -1, insn_ds (62, 2, 1, 24, 0), 1 },
/* addis r12, r2, <any> */
{ insn_d (-1, -1, -1, 0), insn_d (15, 12, 2, 0), 0 },
@@ -337,7 +337,7 @@ static const struct ppc_insn_pattern ppc64_standard_linkage8[] =
{ insn_xfx (-1, -1, -1, -1), insn_xfx (31, 12, 9, 467), 0 },
/* bctr */
- { -1, 0x4e800420, 0 },
+ { (unsigned) -1, 0x4e800420, 0 },
{ 0, 0, 0 }
};