riscv64-noop.mk 1.1 KB
Newer Older
1 2
include $(AM_HOME)/am/arch/isa/riscv64.mk

3 4 5 6 7 8 9 10 11 12 13 14 15
AM_SRCS := noop/isa/riscv/trm.c \
           noop/isa/riscv/perf.c \
           noop/common/uartlite.c \
           nemu/isa/riscv/cte.c \
           nemu/isa/riscv/trap.S \
           nemu/isa/riscv/cte64.c \
           nemu/isa/riscv/mtime.S \
           nemu/isa/riscv/vme.c \
           nemu/common/ioe.c \
           noop/common/input.c \
           noop/common/timer.c \
           nemu/common/video.c \
           noop/isa/riscv/instr.c \
16
           dummy/mpe.c \
17
           nemu/isa/riscv/boot/start.S
18

19 20 21 22
CFLAGS  += -I$(AM_HOME)/am/src/nemu/include -DISA_H=\"riscv.h\"

LDFLAGS += -L $(AM_HOME)/am/src/nemu/ldscript
LDFLAGS += -T $(AM_HOME)/am/src/nemu/isa/riscv/boot/loader64.ld
23 24 25

image:
	@echo + LD "->" $(BINARY_REL).elf
26
	@$(LD) $(LDFLAGS) --gc-sections -o $(BINARY).elf --start-group $(LINK_FILES) --end-group
27 28 29 30 31 32
	@$(OBJDUMP) -d $(BINARY).elf > $(BINARY).txt
	@echo + OBJCOPY "->" $(BINARY_REL).bin
	@$(OBJCOPY) -S --set-section-flags .bss=alloc,contents -O binary $(BINARY).elf $(BINARY).bin

run:
	$(MAKE) -C $(NOOP_HOME) emu IMAGE="$(BINARY).bin"