aboutsummaryrefslogtreecommitdiff
path: root/fesvr/htif.h
diff options
context:
space:
mode:
authorJerry Zhao <jerryz123@berkeley.edu>2024-05-29 10:28:14 -0700
committerGitHub <noreply@github.com>2024-05-29 10:28:14 -0700
commit3a70f84b8a2249c92d35c2229b48ca5735a543fa (patch)
tree148610235fe88b66ef6577143677d328efa62814 /fesvr/htif.h
parenta53a71fcc3c985cf95973e86e40814c30c551a68 (diff)
parenta316a37331aaaa4c8905ba37a86bde42a2c75343 (diff)
downloadspike-3a70f84b8a2249c92d35c2229b48ca5735a543fa.zip
spike-3a70f84b8a2249c92d35c2229b48ca5735a543fa.tar.gz
spike-3a70f84b8a2249c92d35c2229b48ca5735a543fa.tar.bz2
Merge pull request #1670 from clementleger/dev/cleger/et_dyn
add support to load ET_DYN elf
Diffstat (limited to 'fesvr/htif.h')
-rw-r--r--fesvr/htif.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/fesvr/htif.h b/fesvr/htif.h
index dd7c060..74511f5 100644
--- a/fesvr/htif.h
+++ b/fesvr/htif.h
@@ -7,6 +7,7 @@
#include "syscall.h"
#include "device.h"
#include "byteorder.h"
+#include "../riscv/platform.h"
#include <string.h>
#include <map>
#include <vector>
@@ -58,7 +59,8 @@ class htif_t : public chunked_memif_t
virtual size_t chunk_align() = 0;
virtual size_t chunk_max_size() = 0;
- virtual std::map<std::string, uint64_t> load_payload(const std::string& payload, reg_t* entry);
+ virtual std::map<std::string, uint64_t> load_payload(const std::string& payload, reg_t* entry,
+ reg_t load_addr);
virtual void load_program();
virtual void idle() {}
@@ -79,6 +81,7 @@ class htif_t : public chunked_memif_t
void register_devices();
void usage(const char * program_name);
unsigned int expected_xlen = 0;
+ const reg_t load_offset = DRAM_BASE;
memif_t mem;
reg_t entry;
bool writezeros;