aboutsummaryrefslogtreecommitdiff
path: root/gas
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2020-08-30 19:40:31 +0930
committerAlan Modra <amodra@gmail.com>2020-08-30 20:49:32 +0930
commit2781f857e6a654521f0decebb809989b72afa2c5 (patch)
treece94a580e92857aa5a88e173b6a8088a0ae314d1 /gas
parentc930281005b0a01ab824864c231c19c297bfdda5 (diff)
downloadfsf-binutils-gdb-2781f857e6a654521f0decebb809989b72afa2c5.zip
fsf-binutils-gdb-2781f857e6a654521f0decebb809989b72afa2c5.tar.gz
fsf-binutils-gdb-2781f857e6a654521f0decebb809989b72afa2c5.tar.bz2
cr16 disassembly error of disp20 fields
When looking at the UB errors, I noticed that cbitb_test.d disassembly wasn't reproducing the input assembly. That turned out to be an error in make_argument case arg_cr. This fixes that and makes some general tidies. opcodes/ * cr16-dis.c: Formatting. (parameter): Delete struct typedef. Use dwordU instead throughout file. (make_argument <arg_idxr>): Simplify detection of cbitb, sbitb and tbitb. (make_argument <arg_cr>): Extract 20-bit field not 16-bit. gas/ * testsuite/gas/cr16/cbitb_test.d: Update expected output. * testsuite/gas/cr16/cbitw_test.d: Likewise. * testsuite/gas/cr16/sbitb_test.d: Likewise. * testsuite/gas/cr16/sbitw_test.d: Likewise. * testsuite/gas/cr16/storb_test.d: Likewise. * testsuite/gas/cr16/storw_test.d: Likewise. * testsuite/gas/cr16/tbitb_test.d: Likewise. * testsuite/gas/cr16/tbitw_test.d: Likewise.
Diffstat (limited to 'gas')
-rw-r--r--gas/ChangeLog11
-rw-r--r--gas/testsuite/gas/cr16/cbitb_test.d10
-rw-r--r--gas/testsuite/gas/cr16/cbitw_test.d20
-rw-r--r--gas/testsuite/gas/cr16/sbitb_test.d10
-rw-r--r--gas/testsuite/gas/cr16/sbitw_test.d20
-rw-r--r--gas/testsuite/gas/cr16/storb_test.d10
-rw-r--r--gas/testsuite/gas/cr16/storw_test.d10
-rw-r--r--gas/testsuite/gas/cr16/tbitb_test.d10
-rw-r--r--gas/testsuite/gas/cr16/tbitw_test.d20
9 files changed, 66 insertions, 55 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index c1504c7..262211d 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,5 +1,16 @@
2020-08-30 Alan Modra <amodra@gmail.com>
+ * testsuite/gas/cr16/cbitb_test.d: Update expected output.
+ * testsuite/gas/cr16/cbitw_test.d: Likewise.
+ * testsuite/gas/cr16/sbitb_test.d: Likewise.
+ * testsuite/gas/cr16/sbitw_test.d: Likewise.
+ * testsuite/gas/cr16/storb_test.d: Likewise.
+ * testsuite/gas/cr16/storw_test.d: Likewise.
+ * testsuite/gas/cr16/tbitb_test.d: Likewise.
+ * testsuite/gas/cr16/tbitw_test.d: Likewise.
+
+2020-08-30 Alan Modra <amodra@gmail.com>
+
PR26437
PR26438
* config/tc-cr16.c: Include limits.h, formatting.
diff --git a/gas/testsuite/gas/cr16/cbitb_test.d b/gas/testsuite/gas/cr16/cbitb_test.d
index bbb382e..67ea611 100644
--- a/gas/testsuite/gas/cr16/cbitb_test.d
+++ b/gas/testsuite/gas/cr16/cbitb_test.d
@@ -59,17 +59,17 @@ Disassembly of section .text:
b0: 3d 6b ff 0f cbitb \$0x3,0xfff:m\(r13\)
b4: 3d 6b ff ff cbitb \$0x3,0xffff:m\(r13\)
b8: 3c 6b 43 23 cbitb \$0x3,0x2343:m\(r12\)
- bc: 10 00 32 41 cbitb \$0x3,0x2345:l\(r2\)
+ bc: 10 00 32 41 cbitb \$0x3,0x12345:l\(r2\)
c0: 45 23
- c2: 10 00 38 44 cbitb \$0x3,0xabcd:l\(r8\)
+ c2: 10 00 38 44 cbitb \$0x3,0x4abcd:l\(r8\)
c6: cd ab
c8: 10 00 3d 5f cbitb \$0x3,0xfabcd:l\(r13\)
cc: cd ab
- ce: 10 00 38 4f cbitb \$0x3,0xabcd:l\(r8\)
+ ce: 10 00 38 4f cbitb \$0x3,0xfabcd:l\(r8\)
d2: cd ab
- d4: 10 00 39 4f cbitb \$0x3,0xabcd:l\(r9\)
+ d4: 10 00 39 4f cbitb \$0x3,0xfabcd:l\(r9\)
d8: cd ab
- da: 10 00 39 44 cbitb \$0x3,0xabcd:l\(r9\)
+ da: 10 00 39 44 cbitb \$0x3,0x4abcd:l\(r9\)
de: cd ab
e0: 31 6a cbitb \$0x3,0x0:s\(r2,r1\)
e2: 51 6b 01 00 cbitb \$0x5,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/cbitw_test.d b/gas/testsuite/gas/cr16/cbitw_test.d
index 55e1543..8a80877 100644
--- a/gas/testsuite/gas/cr16/cbitw_test.d
+++ b/gas/testsuite/gas/cr16/cbitw_test.d
@@ -95,17 +95,17 @@ Disassembly of section .text:
136: 3d 69 ff 0f cbitw \$0x3:s,0xfff:m\(r13\)
13a: 3d 69 ff ff cbitw \$0x3:s,0xffff:m\(r13\)
13e: 3c 69 43 23 cbitw \$0x3:s,0x2343:m\(r12\)
- 142: 11 00 32 41 cbitw \$0x3:s,0x2345:l\(r2\)
+ 142: 11 00 32 41 cbitw \$0x3:s,0x12345:l\(r2\)
146: 45 23
- 148: 11 00 38 44 cbitw \$0x3:s,0xabcd:l\(r8\)
+ 148: 11 00 38 44 cbitw \$0x3:s,0x4abcd:l\(r8\)
14c: cd ab
14e: 11 00 3d 5f cbitw \$0x3:s,0xfabcd:l\(r13\)
152: cd ab
- 154: 11 00 38 4f cbitw \$0x3:s,0xabcd:l\(r8\)
+ 154: 11 00 38 4f cbitw \$0x3:s,0xfabcd:l\(r8\)
158: cd ab
- 15a: 11 00 39 4f cbitw \$0x3:s,0xabcd:l\(r9\)
+ 15a: 11 00 39 4f cbitw \$0x3:s,0xfabcd:l\(r9\)
15e: cd ab
- 160: 11 00 39 44 cbitw \$0x3:s,0xabcd:l\(r9\)
+ 160: 11 00 39 44 cbitw \$0x3:s,0x4abcd:l\(r9\)
164: cd ab
166: 11 00 f2 40 cbitw \$0xf:s,0x0:l\(r2\)
16a: 00 00
@@ -123,17 +123,17 @@ Disassembly of section .text:
190: dd 69 ff 0f cbitw \$0xd:s,0xfff:m\(r13\)
194: dd 69 ff ff cbitw \$0xd:s,0xffff:m\(r13\)
198: dc 69 43 23 cbitw \$0xd:s,0x2343:m\(r12\)
- 19c: 11 00 d2 41 cbitw \$0xd:s,0x2345:l\(r2\)
+ 19c: 11 00 d2 41 cbitw \$0xd:s,0x12345:l\(r2\)
1a0: 45 23
- 1a2: 11 00 d8 44 cbitw \$0xd:s,0xabcd:l\(r8\)
+ 1a2: 11 00 d8 44 cbitw \$0xd:s,0x4abcd:l\(r8\)
1a6: cd ab
1a8: 11 00 dd 5f cbitw \$0xd:s,0xfabcd:l\(r13\)
1ac: cd ab
- 1ae: 11 00 d8 4f cbitw \$0xd:s,0xabcd:l\(r8\)
+ 1ae: 11 00 d8 4f cbitw \$0xd:s,0xfabcd:l\(r8\)
1b2: cd ab
- 1b4: 11 00 d9 4f cbitw \$0xd:s,0xabcd:l\(r9\)
+ 1b4: 11 00 d9 4f cbitw \$0xd:s,0xfabcd:l\(r9\)
1b8: cd ab
- 1ba: 11 00 d9 44 cbitw \$0xd:s,0xabcd:l\(r9\)
+ 1ba: 11 00 d9 44 cbitw \$0xd:s,0x4abcd:l\(r9\)
1be: cd ab
1c0: 31 6e cbitw \$0x3:s,0x0:s\(r2,r1\)
1c2: 51 69 01 00 cbitw \$0x5:s,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/sbitb_test.d b/gas/testsuite/gas/cr16/sbitb_test.d
index e04ddde..13d69fb 100644
--- a/gas/testsuite/gas/cr16/sbitb_test.d
+++ b/gas/testsuite/gas/cr16/sbitb_test.d
@@ -59,17 +59,17 @@ Disassembly of section .text:
b0: 3d 73 ff 0f sbitb \$0x3,0xfff:m\(r13\)
b4: 3d 73 ff ff sbitb \$0x3,0xffff:m\(r13\)
b8: 3c 73 43 23 sbitb \$0x3,0x2343:m\(r12\)
- bc: 10 00 32 81 sbitb \$0x3,0x2345:l\(r2\)
+ bc: 10 00 32 81 sbitb \$0x3,0x12345:l\(r2\)
c0: 45 23
- c2: 10 00 38 84 sbitb \$0x3,0xabcd:l\(r8\)
+ c2: 10 00 38 84 sbitb \$0x3,0x4abcd:l\(r8\)
c6: cd ab
c8: 10 00 3d 9f sbitb \$0x3,0xfabcd:l\(r13\)
cc: cd ab
- ce: 10 00 38 8f sbitb \$0x3,0xabcd:l\(r8\)
+ ce: 10 00 38 8f sbitb \$0x3,0xfabcd:l\(r8\)
d2: cd ab
- d4: 10 00 39 8f sbitb \$0x3,0xabcd:l\(r9\)
+ d4: 10 00 39 8f sbitb \$0x3,0xfabcd:l\(r9\)
d8: cd ab
- da: 10 00 39 84 sbitb \$0x3,0xabcd:l\(r9\)
+ da: 10 00 39 84 sbitb \$0x3,0x4abcd:l\(r9\)
de: cd ab
e0: 31 72 sbitb \$0x3,0x0:s\(r2,r1\)
e2: 51 73 01 00 sbitb \$0x5,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/sbitw_test.d b/gas/testsuite/gas/cr16/sbitw_test.d
index afc75f4..bc02fdf 100644
--- a/gas/testsuite/gas/cr16/sbitw_test.d
+++ b/gas/testsuite/gas/cr16/sbitw_test.d
@@ -95,17 +95,17 @@ Disassembly of section .text:
136: 3d 71 ff 0f sbitw \$0x3:s,0xfff:m\(r13\)
13a: 3d 71 ff ff sbitw \$0x3:s,0xffff:m\(r13\)
13e: 3c 71 43 23 sbitw \$0x3:s,0x2343:m\(r12\)
- 142: 11 00 32 81 sbitw \$0x3:s,0x2345:l\(r2\)
+ 142: 11 00 32 81 sbitw \$0x3:s,0x12345:l\(r2\)
146: 45 23
- 148: 11 00 38 84 sbitw \$0x3:s,0xabcd:l\(r8\)
+ 148: 11 00 38 84 sbitw \$0x3:s,0x4abcd:l\(r8\)
14c: cd ab
14e: 11 00 3d 9f sbitw \$0x3:s,0xfabcd:l\(r13\)
152: cd ab
- 154: 11 00 38 8f sbitw \$0x3:s,0xabcd:l\(r8\)
+ 154: 11 00 38 8f sbitw \$0x3:s,0xfabcd:l\(r8\)
158: cd ab
- 15a: 11 00 39 8f sbitw \$0x3:s,0xabcd:l\(r9\)
+ 15a: 11 00 39 8f sbitw \$0x3:s,0xfabcd:l\(r9\)
15e: cd ab
- 160: 11 00 39 84 sbitw \$0x3:s,0xabcd:l\(r9\)
+ 160: 11 00 39 84 sbitw \$0x3:s,0x4abcd:l\(r9\)
164: cd ab
166: 11 00 f2 80 sbitw \$0xf:s,0x0:l\(r2\)
16a: 00 00
@@ -123,17 +123,17 @@ Disassembly of section .text:
190: dd 71 ff 0f sbitw \$0xd:s,0xfff:m\(r13\)
194: dd 71 ff ff sbitw \$0xd:s,0xffff:m\(r13\)
198: dc 71 43 23 sbitw \$0xd:s,0x2343:m\(r12\)
- 19c: 11 00 d2 81 sbitw \$0xd:s,0x2345:l\(r2\)
+ 19c: 11 00 d2 81 sbitw \$0xd:s,0x12345:l\(r2\)
1a0: 45 23
- 1a2: 11 00 d8 84 sbitw \$0xd:s,0xabcd:l\(r8\)
+ 1a2: 11 00 d8 84 sbitw \$0xd:s,0x4abcd:l\(r8\)
1a6: cd ab
1a8: 11 00 dd 9f sbitw \$0xd:s,0xfabcd:l\(r13\)
1ac: cd ab
- 1ae: 11 00 d8 8f sbitw \$0xd:s,0xabcd:l\(r8\)
+ 1ae: 11 00 d8 8f sbitw \$0xd:s,0xfabcd:l\(r8\)
1b2: cd ab
- 1b4: 11 00 d9 8f sbitw \$0xd:s,0xabcd:l\(r9\)
+ 1b4: 11 00 d9 8f sbitw \$0xd:s,0xfabcd:l\(r9\)
1b8: cd ab
- 1ba: 11 00 d9 84 sbitw \$0xd:s,0xabcd:l\(r9\)
+ 1ba: 11 00 d9 84 sbitw \$0xd:s,0x4abcd:l\(r9\)
1be: cd ab
1c0: 31 76 sbitw \$0x3:s,0x0:s\(r2,r1\)
1c2: 51 71 01 00 sbitw \$0x5:s,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/storb_test.d b/gas/testsuite/gas/cr16/storb_test.d
index dc2a9c2..f766831 100644
--- a/gas/testsuite/gas/cr16/storb_test.d
+++ b/gas/testsuite/gas/cr16/storb_test.d
@@ -130,17 +130,17 @@ Disassembly of section .text:
198: 3d 83 ff 0f storb \$0x3:s,0xfff:m\(r13\)
19c: 3d 83 ff ff storb \$0x3:s,0xffff:m\(r13\)
1a0: 3c 83 43 23 storb \$0x3:s,0x2343:m\(r12\)
- 1a4: 12 00 32 01 storb \$0x3:s,0x2345:l\(r2\)
+ 1a4: 12 00 32 01 storb \$0x3:s,0x12345:l\(r2\)
1a8: 45 23
- 1aa: 12 00 38 04 storb \$0x3:s,0xabcd:l\(r8\)
+ 1aa: 12 00 38 04 storb \$0x3:s,0x4abcd:l\(r8\)
1ae: cd ab
1b0: 12 00 3d 1f storb \$0x3:s,0xfabcd:l\(r13\)
1b4: cd ab
- 1b6: 12 00 38 0f storb \$0x3:s,0xabcd:l\(r8\)
+ 1b6: 12 00 38 0f storb \$0x3:s,0xfabcd:l\(r8\)
1ba: cd ab
- 1bc: 12 00 39 0f storb \$0x3:s,0xabcd:l\(r9\)
+ 1bc: 12 00 39 0f storb \$0x3:s,0xfabcd:l\(r9\)
1c0: cd ab
- 1c2: 12 00 39 04 storb \$0x3:s,0xabcd:l\(r9\)
+ 1c2: 12 00 39 04 storb \$0x3:s,0x4abcd:l\(r9\)
1c6: cd ab
1c8: 31 82 storb \$0x3:s,0x0:s\(r2,r1\)
1ca: 51 83 01 00 storb \$0x5:s,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/storw_test.d b/gas/testsuite/gas/cr16/storw_test.d
index 02b1b65..e904b10 100644
--- a/gas/testsuite/gas/cr16/storw_test.d
+++ b/gas/testsuite/gas/cr16/storw_test.d
@@ -130,17 +130,17 @@ Disassembly of section .text:
198: 3d c3 ff 0f storw \$0x3:s,0xfff:m\(r13\)
19c: 3d c3 ff ff storw \$0x3:s,0xffff:m\(r13\)
1a0: 3c c3 43 23 storw \$0x3:s,0x2343:m\(r12\)
- 1a4: 13 00 32 01 storw \$0x3:s,0x2345:l\(r2\)
+ 1a4: 13 00 32 01 storw \$0x3:s,0x12345:l\(r2\)
1a8: 45 23
- 1aa: 13 00 38 04 storw \$0x3:s,0xabcd:l\(r8\)
+ 1aa: 13 00 38 04 storw \$0x3:s,0x4abcd:l\(r8\)
1ae: cd ab
1b0: 13 00 3d 1f storw \$0x3:s,0xfabcd:l\(r13\)
1b4: cd ab
- 1b6: 13 00 38 0f storw \$0x3:s,0xabcd:l\(r8\)
+ 1b6: 13 00 38 0f storw \$0x3:s,0xfabcd:l\(r8\)
1ba: cd ab
- 1bc: 13 00 39 0f storw \$0x3:s,0xabcd:l\(r9\)
+ 1bc: 13 00 39 0f storw \$0x3:s,0xfabcd:l\(r9\)
1c0: cd ab
- 1c2: 13 00 39 04 storw \$0x3:s,0xabcd:l\(r9\)
+ 1c2: 13 00 39 04 storw \$0x3:s,0x4abcd:l\(r9\)
1c6: cd ab
1c8: 31 c2 storw \$0x3:s,0x0:s\(r2,r1\)
1ca: 51 c3 01 00 storw \$0x5:s,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/tbitb_test.d b/gas/testsuite/gas/cr16/tbitb_test.d
index 9965fac..46a697b 100644
--- a/gas/testsuite/gas/cr16/tbitb_test.d
+++ b/gas/testsuite/gas/cr16/tbitb_test.d
@@ -59,17 +59,17 @@ Disassembly of section .text:
b0: 3d 7b ff 0f tbitb \$0x3,0xfff:m\(r13\)
b4: 3d 7b ff ff tbitb \$0x3,0xffff:m\(r13\)
b8: 3c 7b 43 23 tbitb \$0x3,0x2343:m\(r12\)
- bc: 10 00 32 c1 tbitb \$0x3,0x2345:l\(r2\)
+ bc: 10 00 32 c1 tbitb \$0x3,0x12345:l\(r2\)
c0: 45 23
- c2: 10 00 38 c4 tbitb \$0x3,0xabcd:l\(r8\)
+ c2: 10 00 38 c4 tbitb \$0x3,0x4abcd:l\(r8\)
c6: cd ab
c8: 10 00 3d df tbitb \$0x3,0xfabcd:l\(r13\)
cc: cd ab
- ce: 10 00 38 cf tbitb \$0x3,0xabcd:l\(r8\)
+ ce: 10 00 38 cf tbitb \$0x3,0xfabcd:l\(r8\)
d2: cd ab
- d4: 10 00 39 cf tbitb \$0x3,0xabcd:l\(r9\)
+ d4: 10 00 39 cf tbitb \$0x3,0xfabcd:l\(r9\)
d8: cd ab
- da: 10 00 39 c4 tbitb \$0x3,0xabcd:l\(r9\)
+ da: 10 00 39 c4 tbitb \$0x3,0x4abcd:l\(r9\)
de: cd ab
e0: 31 7a tbitb \$0x3,0x0:s\(r2,r1\)
e2: 51 7b 01 00 tbitb \$0x5,0x1:m\(r2,r1\)
diff --git a/gas/testsuite/gas/cr16/tbitw_test.d b/gas/testsuite/gas/cr16/tbitw_test.d
index 81022b1..b50df20 100644
--- a/gas/testsuite/gas/cr16/tbitw_test.d
+++ b/gas/testsuite/gas/cr16/tbitw_test.d
@@ -95,17 +95,17 @@ Disassembly of section .text:
136: 3d 79 ff 0f tbitw \$0x3:s,0xfff:m\(r13\)
13a: 3d 79 ff ff tbitw \$0x3:s,0xffff:m\(r13\)
13e: 3c 79 43 23 tbitw \$0x3:s,0x2343:m\(r12\)
- 142: 11 00 32 c1 tbitw \$0x3:s,0x2345:l\(r2\)
+ 142: 11 00 32 c1 tbitw \$0x3:s,0x12345:l\(r2\)
146: 45 23
- 148: 11 00 38 c4 tbitw \$0x3:s,0xabcd:l\(r8\)
+ 148: 11 00 38 c4 tbitw \$0x3:s,0x4abcd:l\(r8\)
14c: cd ab
14e: 11 00 3d df tbitw \$0x3:s,0xfabcd:l\(r13\)
152: cd ab
- 154: 11 00 38 cf tbitw \$0x3:s,0xabcd:l\(r8\)
+ 154: 11 00 38 cf tbitw \$0x3:s,0xfabcd:l\(r8\)
158: cd ab
- 15a: 11 00 39 cf tbitw \$0x3:s,0xabcd:l\(r9\)
+ 15a: 11 00 39 cf tbitw \$0x3:s,0xfabcd:l\(r9\)
15e: cd ab
- 160: 11 00 39 c4 tbitw \$0x3:s,0xabcd:l\(r9\)
+ 160: 11 00 39 c4 tbitw \$0x3:s,0x4abcd:l\(r9\)
164: cd ab
166: 11 00 f2 c0 tbitw \$0xf:s,0x0:l\(r2\)
16a: 00 00
@@ -123,17 +123,17 @@ Disassembly of section .text:
190: dd 79 ff 0f tbitw \$0xd:s,0xfff:m\(r13\)
194: dd 79 ff ff tbitw \$0xd:s,0xffff:m\(r13\)
198: dc 79 43 23 tbitw \$0xd:s,0x2343:m\(r12\)
- 19c: 11 00 d2 c1 tbitw \$0xd:s,0x2345:l\(r2\)
+ 19c: 11 00 d2 c1 tbitw \$0xd:s,0x12345:l\(r2\)
1a0: 45 23
- 1a2: 11 00 d8 c4 tbitw \$0xd:s,0xabcd:l\(r8\)
+ 1a2: 11 00 d8 c4 tbitw \$0xd:s,0x4abcd:l\(r8\)
1a6: cd ab
1a8: 11 00 dd df tbitw \$0xd:s,0xfabcd:l\(r13\)
1ac: cd ab
- 1ae: 11 00 d8 cf tbitw \$0xd:s,0xabcd:l\(r8\)
+ 1ae: 11 00 d8 cf tbitw \$0xd:s,0xfabcd:l\(r8\)
1b2: cd ab
- 1b4: 11 00 d9 cf tbitw \$0xd:s,0xabcd:l\(r9\)
+ 1b4: 11 00 d9 cf tbitw \$0xd:s,0xfabcd:l\(r9\)
1b8: cd ab
- 1ba: 11 00 d9 c4 tbitw \$0xd:s,0xabcd:l\(r9\)
+ 1ba: 11 00 d9 c4 tbitw \$0xd:s,0x4abcd:l\(r9\)
1be: cd ab
1c0: 31 7e tbitw \$0x3:s,0x0:s\(r2,r1\)
1c2: 51 79 01 00 tbitw \$0x5:s,0x1:m\(r2,r1\)