xref: /kvm-unit-tests/lib/riscv/asm-offsets.c (revision 3b10c7e2f32f6948f8d7527fff12b65e235c60c2)
1bd744d46SAndrew Jones // SPDX-License-Identifier: GPL-2.0-only
2*3b10c7e2SAndrew Jones #include <kbuild.h>
3*3b10c7e2SAndrew Jones #include <elf.h>
4bd744d46SAndrew Jones 
5bd744d46SAndrew Jones int main(void)
6bd744d46SAndrew Jones {
7*3b10c7e2SAndrew Jones #if __riscv_xlen == 32
8*3b10c7e2SAndrew Jones 	OFFSET(ELF_RELA_OFFSET, elf32_rela, r_offset);
9*3b10c7e2SAndrew Jones 	OFFSET(ELF_RELA_ADDEND, elf32_rela, r_addend);
10*3b10c7e2SAndrew Jones 	DEFINE(ELF_RELA_SIZE, sizeof(struct elf32_rela));
11*3b10c7e2SAndrew Jones #elif __riscv_xlen == 64
12*3b10c7e2SAndrew Jones 	OFFSET(ELF_RELA_OFFSET, elf64_rela, r_offset);
13*3b10c7e2SAndrew Jones 	OFFSET(ELF_RELA_ADDEND, elf64_rela, r_addend);
14*3b10c7e2SAndrew Jones 	DEFINE(ELF_RELA_SIZE, sizeof(struct elf64_rela));
15*3b10c7e2SAndrew Jones #endif
16bd744d46SAndrew Jones 	return 0;
17bd744d46SAndrew Jones }
18