X-Git-Url: http://git.efficios.com/?a=blobdiff_plain;f=opcodes%2Fcr16-opc.c;h=f3032634b58e4bba6675415b9d351e816de1346f;hb=4f83758119ddf0f114477760d79bdde7bbc76835;hp=059794f07e8b5e9a0541775185205d040c8e5208;hpb=accf44633efe9de9c7300d7e7d1c7dedeaf124a2;p=deliverable%2Fbinutils-gdb.git diff --git a/opcodes/cr16-opc.c b/opcodes/cr16-opc.c index 059794f07e..f3032634b5 100644 --- a/opcodes/cr16-opc.c +++ b/opcodes/cr16-opc.c @@ -1,5 +1,5 @@ /* cr16-opc.c -- Table of opcodes for the CR16 processor. - Copyright 2007, 2008, 2010 Free Software Foundation, Inc. + Copyright (C) 2007-2020 Free Software Foundation, Inc. Contributed by M R Swami Reddy (MR.Swami.Reddy@nsc.com) This file is part of the GNU opcodes library. @@ -276,7 +276,7 @@ const inst cr16_instruction[] = {"storm", 1, 0x16, 19, NO_TYPE_INS | REG_LIST, {{uimm3_1,16}}}, {"stormp", 1, 0x17, 19, NO_TYPE_INS | REG_LIST, {{uimm3_1,16}}}, - /* Processor Regsiter Manipulation instructions */ + /* Processor Register Manipulation instructions */ /* opc16 reg, preg */ {"lpr", 2, 0x00140, 12, NO_TYPE_INS, {{regr,0}, {pregr,4}}}, /* opc16 regp, pregp */ @@ -459,8 +459,11 @@ const unsigned int cr16_num_opcodes = ARRAY_SIZE (cr16_instruction); For example : REG(u4, 0x84, CR16_U_REGTYPE) is interpreted as : - {"u4", u4, 0x84, CR16_U_REGTYPE} */ -#define REG(NAME, N, TYPE) {STRINGX(NAME), {NAME}, N, TYPE} + {"u4", u4, 0x84, CR16_U_REGTYPE} + The union initializer (second member) always refers to the first + member of the union, so cast NAME to that type to avoid possible + compiler warnings when used for CR16_P_REGTYPE cases. */ +#define REG(NAME, N, TYPE) {STRINGX(NAME), {(reg) NAME}, N, TYPE} #define REGP(NAME, BNAME, N, TYPE) {STRINGX(NAME), {BNAME}, N, TYPE}