aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCooper Qu <cooper.qu@linux.alibaba.com>2020-10-12 22:30:18 +0800
committerLifang Xia <xlf194833_xia@alibaba-inc.com>2020-10-26 16:20:10 +0800
commit9d1ccf22fd6a231dc45a334b09416eedf9f52e8d (patch)
treea3a4feb1fccaaab996bc4aaccc088ec4e09f415e
parent039dac293d5df5d933808aa5d946b80fd0a84794 (diff)
downloadbinutils-9d1ccf22fd6a231dc45a334b09416eedf9f52e8d.zip
binutils-9d1ccf22fd6a231dc45a334b09416eedf9f52e8d.tar.gz
binutils-9d1ccf22fd6a231dc45a334b09416eedf9f52e8d.tar.bz2
CSKY: Add version flag in eflag and fix bug in disassembling register.
gas/ * config/tc-csky.c (md_begin): Add version flag in eflag. include/ * opcode/csky.h (CSKY_VERSION_V1): Define, currently used. (CSKY_VERSION_V2): Define. (CSKY_VERSION_V3): Define. Change-Id: Iafe3a9ce6fe544880a225b9fae439275a828bb34
-rw-r--r--gas/ChangeLog5
-rw-r--r--gas/config/tc-csky.c2
-rw-r--r--include/ChangeLog6
-rw-r--r--include/opcode/csky.h5
4 files changed, 16 insertions, 2 deletions
diff --git a/gas/ChangeLog b/gas/ChangeLog
index 5cd5d5a..c7133d7 100644
--- a/gas/ChangeLog
+++ b/gas/ChangeLog
@@ -1,11 +1,14 @@
2020-10-26 Cooper Qu <cooper.qu@linux.alibaba.com>
+ * config/tc-csky.c (md_begin): Add version flag in eflag.
+
+2020-10-26 Cooper Qu <cooper.qu@linux.alibaba.com>
+
* config/tc-csky.c (get_operand_value): Add handler for
OPRND_TYPE_IMM5b_VSH and OPRND_TYPE_VREG_WITH_INDEX.
* testsuite/gas/csky/csky_vdsp.d : Fix the disassembling for
vector register.
-
2020-10-26 Lili Cui <lili.cui@intel.com>
* testsuite/gas/i386/avx-vnni.d: Change psuedo prefix from
diff --git a/gas/config/tc-csky.c b/gas/config/tc-csky.c
index 23481b8..10272fe 100644
--- a/gas/config/tc-csky.c
+++ b/gas/config/tc-csky.c
@@ -1852,7 +1852,7 @@ md_begin (void)
str_hash_insert (csky_macros_hash,
v2_lrw_macro_opcode.name, &v2_lrw_macro_opcode, 0);
/* Set e_flag to ELF Head. */
- bfd_set_private_flags (stdoutput, mach_flag & ~(0xffff));
+ bfd_set_private_flags (stdoutput, mach_flag | CSKY_VERSION_V1);
/* Set bfd_mach to bfd backend data. */
bfd_set_arch_mach (stdoutput, bfd_arch_csky, bfd_mach_flag);
diff --git a/include/ChangeLog b/include/ChangeLog
index b4ac311..2267cda 100644
--- a/include/ChangeLog
+++ b/include/ChangeLog
@@ -1,3 +1,9 @@
+2020-10-26 Cooper Qu <cooper.qu@linux.alibaba.com>
+
+ * opcode/csky.h (CSKY_VERSION_V1): New, currently used.
+ (CSKY_VERSION_V2): New.
+ (CSKY_VERSION_V3): New.
+
2020-10-21 Tom Tromey <tromey@adacore.com>
* ctf-api.h (_CTF_ERRORS): New macro.
diff --git a/include/opcode/csky.h b/include/opcode/csky.h
index 1ff9dfa..e368478 100644
--- a/include/opcode/csky.h
+++ b/include/opcode/csky.h
@@ -93,6 +93,11 @@
#define CSKY_ARCH_JAVA (1 << 8)
#define CSKY_ARCH_APS (1 << 7)
+/* eflag's Versions. */
+#define CSKY_VERSION_V1 (1 << 24)
+#define CSKY_VERSION_V2 (2 << 24)
+#define CSKY_VERSION_V3 (3 << 24)
+
#define IS_CSKY_V1(a) \
(((a) & CSKY_ABI_MASK) == CSKY_ABI_V1)
#define IS_CSKY_V2(a) \