From 30e27de7ef7bfdfe716fdcf987f2ca3468625924 Mon Sep 17 00:00:00 2001 From: Sylvain Lefebvre Date: Sat, 28 Dec 2024 18:01:21 +0100 Subject: [PATCH] fix: classroom wave player, gc-sections in compilation --- .../classroom/soc_wave_player/firmware/Makefile | 4 ++-- .../soc_wave_player/firmware/config_c.ld | 16 ++++++++-------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/learn-silice/classroom/soc_wave_player/firmware/Makefile b/learn-silice/classroom/soc_wave_player/firmware/Makefile index ef7ce9ef..77cf111a 100644 --- a/learn-silice/classroom/soc_wave_player/firmware/Makefile +++ b/learn-silice/classroom/soc_wave_player/firmware/Makefile @@ -7,12 +7,12 @@ LD = $(ARCH)-ld OBJS = sdcard.o div.o std.o config.o oled.o display.o printf.o mul.o crt0.o fat_io_lib.o $(PRGS): %: %.o $(OBJS) - $(LD) -m elf32lriscv -b elf32-littleriscv -Tconfig_c.ld --no-relax -o code.elf $^ + $(LD) --gc-sections -m elf32lriscv -b elf32-littleriscv -Tconfig_c.ld --no-relax -o code.elf $^ $(ARCH)-objcopy -O verilog code.elf code.hex $(ARCH)-objdump --disassemble code.elf > code.s %.o : %.c - $(CC) -U_FORTIFY_SOURCE -fno-builtin -fno-unroll-loops $(DEFINES) -Os -fno-stack-protector -fno-pic -march=rv32i -mabi=ilp32 -c $< -o $@ + $(CC) -ffunction-sections -fdata-sections -U_FORTIFY_SOURCE -fno-builtin -fno-unroll-loops $(DEFINES) -Os -fno-stack-protector -fno-pic -march=rv32i -mabi=ilp32 -c $< -o $@ %.o : %.s $(AS) -march=rv32i -mabi=ilp32 $< -o $@ diff --git a/learn-silice/classroom/soc_wave_player/firmware/config_c.ld b/learn-silice/classroom/soc_wave_player/firmware/config_c.ld index 703a5ae0..5eb18617 100644 --- a/learn-silice/classroom/soc_wave_player/firmware/config_c.ld +++ b/learn-silice/classroom/soc_wave_player/firmware/config_c.ld @@ -10,13 +10,13 @@ SECTIONS { __stacktop = ORIGIN(ram) + LENGTH(ram); .text 0x00000000 : { - crt0.o (.text) - *(.text) - *(.sdata) - *(.srodata) - *(.rodata) - *(.rodata.str1.4) - *(.data) - *(.sbss) + crt0.o (.text*) + *(.text*) + *(.sdata*) + *(.srodata*) + *(.rodata*) + *(.rodata.str1.4*) + *(.data*) + *(.sbss*) } >ram }