https://git.reactos.org/?p=reactos.git;a=commitdiff;h=bfedf9760cb464aaa1a55b19bc6899c02edba96d

commit bfedf9760cb464aaa1a55b19bc6899c02edba96d
Author:     Hervé Poussineau <[email protected]>
AuthorDate: Sat Jan 30 18:51:07 2021 +0100
Commit:     Hervé Poussineau <[email protected]>
CommitDate: Mon Feb 1 19:57:12 2021 +0100

    [FREELDR] Disable SSE instructions for GCC x64
    
    Even if all x64 CPUs can handle SSE instructions, prevent GCC x64 to
    generate them, as FreeLoader is not ready to handle them.
---
 boot/freeldr/freeldr/CMakeLists.txt | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/boot/freeldr/freeldr/CMakeLists.txt 
b/boot/freeldr/freeldr/CMakeLists.txt
index 95dc2e31224..f4610d4c12f 100644
--- a/boot/freeldr/freeldr/CMakeLists.txt
+++ b/boot/freeldr/freeldr/CMakeLists.txt
@@ -225,6 +225,10 @@ if(NOT MSVC AND ARCH STREQUAL "i386" AND SARCH STREQUAL 
"xbox")
   # Prevent a warning when doing a memcmp with address 0
   set_source_files_properties(arch/i386/xbox/xboxmem.c PROPERTIES 
COMPILE_FLAGS "-Wno-nonnull")
 endif()
+if(ARCH STREQUAL "amd64" AND NOT MSVC)
+    # Prevent using SSE (not support in freeldr)
+    target_compile_options(freeldr_common PUBLIC -mno-sse)
+endif()
 
 set(PCH_SOURCE
     ${FREELDR_BOOTLIB_SOURCE}

Reply via email to