@@ -1851,6 +1851,9 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) {
1851
1851
#ifndef EM_AARCH64
1852
1852
#define EM_AARCH64 183 /* ARM AARCH64 */
1853
1853
#endif
1854
+ #ifndef EM_RISCV
1855
+ #define EM_RISCV 243 /* RISC-V */
1856
+ #endif
1854
1857
1855
1858
static const arch_t arch_array[]={
1856
1859
{EM_386, EM_386, ELFCLASS32, ELFDATA2LSB, (char *)" IA 32" },
@@ -1877,6 +1880,7 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) {
1877
1880
{EM_PARISC, EM_PARISC, ELFCLASS32, ELFDATA2MSB, (char *)" PARISC" },
1878
1881
{EM_68K, EM_68K, ELFCLASS32, ELFDATA2MSB, (char *)" M68k" },
1879
1882
{EM_AARCH64, EM_AARCH64, ELFCLASS64, ELFDATA2LSB, (char *)" AARCH64" },
1883
+ {EM_RISCV, EM_RISCV, ELFCLASS64, ELFDATA2LSB, (char *)" RISC-V" },
1880
1884
};
1881
1885
1882
1886
#if (defined IA32)
@@ -1911,9 +1915,11 @@ void * os::dll_load(const char *filename, char *ebuf, int ebuflen) {
1911
1915
static Elf32_Half running_arch_code=EM_68K;
1912
1916
#elif (defined SH)
1913
1917
static Elf32_Half running_arch_code=EM_SH;
1918
+ #elif (defined RISCV)
1919
+ static Elf32_Half running_arch_code=EM_RISCV;
1914
1920
#else
1915
1921
#error Method os::dll_load requires that one of following is defined:\
1916
- AARCH64, ALPHA, ARM, AMD64, IA32, IA64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, S390, SH, __sparc
1922
+ AARCH64, ALPHA, ARM, AMD64, IA32, IA64, M68K, MIPS, MIPSEL, PARISC, __powerpc__, __powerpc64__, RISCV, S390, SH, __sparc
1917
1923
#endif
1918
1924
1919
1925
// Identify compatibility class for VM's architecture and library's architecture
0 commit comments