diff options
author | Alex Richardson <alexrichardson@google.com> | 2022-08-22 16:32:12 +0000 |
---|---|---|
committer | Robert Norton <1412774+rmn30@users.noreply.github.com> | 2022-08-24 10:00:48 +0100 |
commit | c890f45e670f3accdbecb1fce28f00d390b09ec4 (patch) | |
tree | 25a8ef830d16a858e222370f863f593ef5ca8a76 | |
parent | 2265a2576fac6d555cfc5f850f78e79c2da56312 (diff) | |
download | sail-riscv-c890f45e670f3accdbecb1fce28f00d390b09ec4.zip sail-riscv-c890f45e670f3accdbecb1fce28f00d390b09ec4.tar.gz sail-riscv-c890f45e670f3accdbecb1fce28f00d390b09ec4.tar.bz2 |
Allow building without -fcommon
The sail C code generator will emit definions for these structs. The
duplicate definition linker error were worked around by adding -fcommon
in ffea7a39c32a210a446379aeda0eabcec4918ed6. This commit fixes the
underlying issue by declaring the variables as `extern`.
-rw-r--r-- | c_emulator/riscv_sail.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/c_emulator/riscv_sail.h b/c_emulator/riscv_sail.h index cac8316..bc5ce04 100644 --- a/c_emulator/riscv_sail.h +++ b/c_emulator/riscv_sail.h @@ -7,7 +7,7 @@ typedef int unit; typedef uint64_t mach_bits; struct zMisa {mach_bits zMisa_chunk_0;}; -struct zMisa zmisa; +extern struct zMisa zmisa; void model_init(void); void model_fini(void); @@ -67,6 +67,6 @@ extern mach_bits zsepc, zstval; extern mach_bits zfloat_result, zfloat_fflags; struct zMcause {mach_bits zMcause_chunk_0;}; -struct zMcause zmcause, zscause; +extern struct zMcause zmcause, zscause; extern mach_bits zminstret; |