From 9d1ccf22fd6a231dc45a334b09416eedf9f52e8d Mon Sep 17 00:00:00 2001 From: Cooper Qu Date: Mon, 12 Oct 2020 22:30:18 +0800 Subject: [PATCH] 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 --- gas/ChangeLog | 5 ++++- gas/config/tc-csky.c | 2 +- include/ChangeLog | 6 ++++++ include/opcode/csky.h | 5 +++++ 4 files changed, 16 insertions(+), 2 deletions(-) diff --git a/gas/ChangeLog b/gas/ChangeLog index 5cd5d5a0510..c7133d7b3a2 100644 --- a/gas/ChangeLog +++ b/gas/ChangeLog @@ -1,3 +1,7 @@ +2020-10-26 Cooper Qu + + * config/tc-csky.c (md_begin): Add version flag in eflag. + 2020-10-26 Cooper Qu * config/tc-csky.c (get_operand_value): Add handler for @@ -5,7 +9,6 @@ * testsuite/gas/csky/csky_vdsp.d : Fix the disassembling for vector register. - 2020-10-26 Lili Cui * 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 23481b838b1..10272fede1c 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 b4ac311376b..2267cda7bd5 100644 --- a/include/ChangeLog +++ b/include/ChangeLog @@ -1,3 +1,9 @@ +2020-10-26 Cooper Qu + + * opcode/csky.h (CSKY_VERSION_V1): New, currently used. + (CSKY_VERSION_V2): New. + (CSKY_VERSION_V3): New. + 2020-10-21 Tom Tromey * ctf-api.h (_CTF_ERRORS): New macro. diff --git a/include/opcode/csky.h b/include/opcode/csky.h index 1ff9dfa20f8..e368478b857 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) \ -- 2.30.2