[PATCH][GAS] RISC-V: Fix missing initialization of riscv_csr_extra structs
Simon Cook
simon.cook@embecosm.com
Wed May 27 16:34:58 GMT 2020
The next pointer of struct riscv_csr_extra was not always initilized
to NULL or a valid pointer, causing the assembler to attempt to read
through an uninitialized pointer on startup.
gas/ChangeLog:
* config/tc-riscv.c (riscv_init_csr_hash): NULL initilize next
pointer when creating struct riscv_csr_extra.
---
gas/config/tc-riscv.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/gas/config/tc-riscv.c b/gas/config/tc-riscv.c
index 2a03a440b1..da94b5b1cf 100644
--- a/gas/config/tc-riscv.c
+++ b/gas/config/tc-riscv.c
@@ -695,6 +695,7 @@ riscv_init_csr_hash (const char *name,
entry->address = address;
entry->define_version = define_version;
entry->abort_version = abort_version;
+ entry->next = NULL;
/* If the CSR hasn't been inserted in the hash table, then insert it.
Otherwise, attach the extra information to the entry which is already
--
2.17.1
More information about the Binutils
mailing list