diff options
| author | Mitchell Horne <mhorne@freebsd.org> | 2023-08-06 10:45:36 +0530 |
|---|---|---|
| committer | Anup Patel <anup@brainfault.org> | 2023-08-06 11:06:02 +0530 |
| commit | 94197a8c49751eabe73ff2849fce183ac8ead3fd (patch) | |
| tree | 52e4e7de1ac5705cb4a0a49680c5c26bd8dcda49 /include | |
| parent | f46a5643bc4a524975261b694814bf5d14bc2d71 (diff) | |
| download | opensbi-94197a8c49751eabe73ff2849fce183ac8ead3fd.zip opensbi-94197a8c49751eabe73ff2849fce183ac8ead3fd.tar.gz opensbi-94197a8c49751eabe73ff2849fce183ac8ead3fd.tar.bz2 | |
fw_base.S: Fix assembler error with clang 16+
Attempting to build OpenSBI with clang 16 and the following command:
$ make LLVM=1 PLATFORM=generic
Results in the following error:
AS platform/generic/firmware/fw_dynamic.o
/tmp/fw_dynamic-d000a6.s:429:9: error: symbol '_fw_start' can not be undefined in a subtraction expression
.dword _fw_rw_start - _fw_start
Work around this issue by eliminating the __fw_rw_offset variable and
performing the offset calculation at run-time instead. This takes
advantage of the fact that the a4 register contains the value of
_fw_start.
Signed-off-by: Mitchell Horne <mhorne@FreeBSD.org>
Reviewed-by: Anup Patel <anup@brainfault.org>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions
