Browse Source

[ARC] Fix decoding of w6 signed short immediate.

gas/
  Claudiu Zissulescu  <claziss@synopsys.com>

        * testsuite/gas/arc/st.d: Fix test.

opcodes/
  Claudiu Zissulescu  <claziss@synopsys.com>

        * arc-opc.c (extract_w6): Fix extending the sign.
users/ahayward/variable_sve
Claudiu Zissulescu 8 years ago
parent
commit
04e65276fa
  1. 4
      gas/ChangeLog
  2. 2
      gas/testsuite/gas/arc/st.d
  3. 4
      opcodes/ChangeLog
  4. 6
      opcodes/arc-opc.c

4
gas/ChangeLog

@ -1,3 +1,7 @@
2018-07-23 Claudiu Zissulescu <claziss@synopsys.com>
* testsuite/gas/arc/st.d: Fix test.
2018-07-23 Claudiu Zissulescu <claziss@synopsys.com>
* config/tc-arc.c (tokenize_extinsn): Convert to lower case the

2
gas/testsuite/gas/arc/st.d

@ -13,7 +13,7 @@ Disassembly of section .text:
10: 1a02 004c st[hw]+.aw r1,\[r2,2\]
14: 1e00 7040 0000 0384 st r1,\[0x384\]
1c: 1a00 0003 stb 0,\[r2\]
20: 1af8 8e01 st 56,\[r2,-8\]
20: 1af8 8e01 st -8,\[r2,-8\]
24: 1e00 7080 0000 0000 st r2,\[0\]
28: R_ARC_32_ME foo
2c: 1a02 0060 st.di r1,\[r2,2\]

4
opcodes/ChangeLog

@ -1,3 +1,7 @@
2018-07-23 Claudiu Zissulescu <claziss@synopsys.com>
* arc-opc.c (extract_w6): Fix extending the sign.
2018-07-23 Claudiu Zissulescu <claziss@synopsys.com>
* arc-tbl.h (vewt): Allow it for ARC EM family.

6
opcodes/arc-opc.c

@ -651,10 +651,14 @@ static long long
extract_w6 (unsigned long long insn,
bfd_boolean * invalid ATTRIBUTE_UNUSED)
{
unsigned value = 0;
int value = 0;
value |= ((insn >> 6) & 0x003f) << 0;
/* Extend the sign. */
int signbit = 1 << 5;
value = (value ^ signbit) - signbit;
return value;
}

Loading…
Cancel
Save