loongarch64: disable simd when build efi
LoongArch does not yet support the `-mgeneral-regs-only` option, so when compiling for EFI, we need to use the `-mno-lsx` and `-mno-lasx` options to disable SIMD instructions.
This commit is contained in:
@@ -210,11 +210,13 @@ if cc.get_id() == 'clang'
|
||||
endif
|
||||
|
||||
efi_arch_c_args = {
|
||||
'aarch64' : ['-mgeneral-regs-only'],
|
||||
'arm' : ['-mgeneral-regs-only'],
|
||||
'aarch64' : ['-mgeneral-regs-only'],
|
||||
'arm' : ['-mgeneral-regs-only'],
|
||||
# Until -mgeneral-regs-only is supported in LoongArch, use the following option instead:
|
||||
'loongarch64' : ['-mno-lsx', '-mno-lasx'],
|
||||
# Pass -m64/32 explicitly to make building on x32 work.
|
||||
'x86_64' : ['-m64', '-march=x86-64', '-mno-red-zone', '-mgeneral-regs-only'],
|
||||
'x86' : ['-m32', '-march=i686', '-mgeneral-regs-only', '-malign-double'],
|
||||
'x86_64' : ['-m64', '-march=x86-64', '-mno-red-zone', '-mgeneral-regs-only'],
|
||||
'x86' : ['-m32', '-march=i686', '-mgeneral-regs-only', '-malign-double'],
|
||||
}
|
||||
efi_arch_c_ld_args = {
|
||||
# libgcc is not compiled with -fshort-wchar, but it does not use it anyways,
|
||||
|
||||
Reference in New Issue
Block a user