Compare commits

..

1 Commits
dev ... hiszpan

Author SHA1 Message Date
hiszpan 3e0210d975 Upload files to "/"
okej
2024-05-24 11:57:50 +00:00
4 changed files with 124 additions and 2 deletions

81
Make.rules Normal file
View File

@ -0,0 +1,81 @@
ARCH=riscv64-unknown-elf
GNU_DIR=$(HOME)/riscv/riscv/
GNU_BIN=$(GNU_DIR)/bin
CC=$(GNU_BIN)/$(ARCH)-gcc
CXX=$(GNU_BIN)/$(ARCH)-g++
AS=$(GNU_BIN)/$(ARCH)-as
LD=$(GNU_BIN)/$(ARCH)-ld
OBJCOPY=$(GNU_BIN)/$(ARCH)-objcopy
OBJDUMP=$(GNU_BIN)/$(ARCH)-objdump
SIZE=$(GNU_BIN)/$(ARCH)-size
AR=$(GNU_BIN)/$(ARCH)-ar
RANLIB=$(GNU_BIN)/$(ARCH)-ranlib
CFLAGS+=-ffreestanding
CFLAGS+=-fno-pic
CFLAGS+=-march=rv32i -mabi=ilp32
CFLAGS+= -g
LDFLAGS+=-nostdlib
LDFLAGS+=-Wl,-Ttext=0x00000000
# see: https://github.com/riscv/riscv-gcc/issues/120
#LDFLAGS+=-Wl,--no-relax
ASFLAGS+=$(CFLAGS)
CXXFLAGS+=$(CFLAGS)
CLEAN_DIRS=$(SUBDIRS:%=clean-%)
ALL_DIRS=$(SUBDIRS:%=all-%)
OBJDUMPFLAGS+=-Mnumeric,no-aliases
.PHONY: all clean world $(CLEAN_DIRS) $(ALL_DIRS)
%.bin : %
$(OBJCOPY) $< -O binary $@
%.lst : %
$(OBJDUMP) $(OBJDUMPFLAGS) -dr --disassemble-all $< > $<.lst
% : %.o
$(LINK.cc) $(LDFLAGS) -o $@ $^ $(LDLIBS)
$(SIZE) -x -A $@
%.s: %.c
$(COMPILE.c) -S -o $@ $<
%.s: %.cc
$(COMPILE.cc) -S -o $@ $<
%.o: %.c
$(COMPILE.c) -o $@ $<
%.o: %.cc
$(COMPILE.cc) -o $@ $<
%.srec: %
$(OBJCOPY) $< -O srec $@
all:: $(ALL_DIRS)
clean:: $(CLEAN_DIRS)
$(ALL_DIRS)::
$(MAKE) -C $(@:all-%=%) all
$(CLEAN_DIRS)::
$(MAKE) -C $(@:clean-%=%) clean
world:: clean all

27
Makefile Normal file
View File

@ -0,0 +1,27 @@
TOP=./
include $(TOP)/Make.rules
LDLIBS=
#CFLAGS+=-O0 -g
# CFLAGS+=-Og -ggdb3
CFLAGS+=-O0 -ggdb3
LDFLAGS+=-Wl,--no-relax
LDFLAGS+=-Wl,-Ttext=0x80000000,-Tdata=0x80010000
# LDFLAGS+=-T murax_128k_ram.ld
PROGS=prog prog.bin prog.lst
all:: $(PROGS)
prog: _crt0.o _rvmain.o myfunc.o
$(LINK.cc) -o $@ $^ $(LDLIBS)
$(SIZE) -A -x $@
clean::
rm -f $(PROGS) *.o *.s *.lst *.bin *.srec *.dis
.PHONY: run
run: prog.bin
../../../src/rvddt -l0x3000 -f prog.bin

16
_rvmain.cpp Normal file
View File

@ -0,0 +1,16 @@
#include <stdio.h>
size_t strlen(const char *str) {
size_t len = 0;
while (*str++) {
len++; }
return len;
}
int main () {
const char *string = "Piotrek";
size_t length = strlen(string);
return 0;
}

View File

@ -1,2 +0,0 @@
https://www.mediafire.com/file/c5d9ad65bxiln6o/MojaGra1.zip/file