test/riscv: disable linker relaxation, specify ISA string and ABI

Although linker relaxation is disabled, the compiler still emits small
data sections which must be explicitly included in the linker script.
This commit is contained in:
xvanc 2023-08-03 03:46:46 -05:00 committed by mintsuki
parent 030242d69a
commit 82ea6d6a57
2 changed files with 7 additions and 0 deletions

View File

@ -47,6 +47,11 @@ override INTERNALCFLAGS := \
-I. \ -I. \
-I.. -I..
ifneq ($(findstring riscv,$(CC_FOR_TARGET)),)
override INTERNALCFLAGS += -march=rv64imac -mabi=lp64 -mno-relax
override INTERNALLDFLAGS += --no-relax
endif
override INTERNALCFLAGS_MB := \ override INTERNALCFLAGS_MB := \
-std=c11 \ -std=c11 \
-ffreestanding \ -ffreestanding \

View File

@ -32,6 +32,7 @@ SECTIONS
.data : { .data : {
*(.data .data.*) *(.data .data.*)
*(.sdata .sdata.*)
} :data } :data
.dynamic : { .dynamic : {
@ -39,6 +40,7 @@ SECTIONS
} :data :dynamic } :data :dynamic
.bss : { .bss : {
*(.sbss .sbss.*)
*(.bss .bss.*) *(.bss .bss.*)
*(COMMON) *(COMMON)
} :data } :data