Fix Makefile for PowerPC with prefetch enabled
authorMarco Costalba <mcostalba@gmail.com>
Sun, 14 Oct 2012 23:13:41 +0000 (01:13 +0200)
committerMarco Costalba <mcostalba@gmail.com>
Sun, 14 Oct 2012 23:13:41 +0000 (01:13 +0200)
Existing Makefile is buggy for PowerPC, it has no
SSE, yet it is given it if Prefetch is enabled,
because it isn't ARMv7.

Patch from Matthew Brades.

No functional change.

src/Makefile

index 17e61773d19615b6289e085881ddb927ac44c9c9..ef5f308861f3fe93c03919fbdb6953e21e1e2195 100644 (file)
@@ -58,6 +58,7 @@ OBJS = benchmark.o bitbase.o bitboard.o book.o endgame.o evaluate.o main.o \
 # bsfq = yes/no       --- -DUSE_BSFQ       --- Use bsfq x86_64 asm-instruction (only
 #                                              with GCC and ICC 64-bit)
 # popcnt = yes/no     --- -DUSE_POPCNT     --- Use popcnt x86_64 asm-instruction
+# sse = yes/no        --- -msse            --- Use Intel Streaming SIMD Extensions
 #
 # Note that Makefile is space sensitive, so when adding new architectures
 # or modifying existing flags, you have to make sure there are no extra spaces
@@ -77,6 +78,7 @@ ifeq ($(ARCH),general-64)
        prefetch = no
        bsfq = no
        popcnt = no
+       sse = no
 endif
 
 ifeq ($(ARCH),general-32)
@@ -86,6 +88,7 @@ ifeq ($(ARCH),general-32)
        prefetch = no
        bsfq = no
        popcnt = no
+       sse = no
 endif
 
 # x86-section
@@ -96,6 +99,7 @@ ifeq ($(ARCH),x86-64)
        prefetch = yes
        bsfq = yes
        popcnt = no
+       sse = yes
 endif
 
 ifeq ($(ARCH),x86-64-modern)
@@ -105,6 +109,7 @@ ifeq ($(ARCH),x86-64-modern)
        prefetch = yes
        bsfq = yes
        popcnt = yes
+       sse = yes
 endif
 
 ifeq ($(ARCH),x86-32)
@@ -114,6 +119,7 @@ ifeq ($(ARCH),x86-32)
        prefetch = yes
        bsfq = no
        popcnt = no
+       sse = yes
 endif
 
 ifeq ($(ARCH),x86-32-old)
@@ -123,6 +129,7 @@ ifeq ($(ARCH),x86-32-old)
        prefetch = no
        bsfq = no
        popcnt = no
+       sse = no
 endif
 
 #arm section
@@ -133,6 +140,7 @@ ifeq ($(ARCH),armv7)
        prefetch = yes
        bsfq = yes
        popcnt = no
+       sse = no
 endif
 
 # osx-section
@@ -143,6 +151,7 @@ ifeq ($(ARCH),osx-ppc-64)
        prefetch = no
        bsfq = no
        popcnt = no
+       sse = no
 endif
 
 ifeq ($(ARCH),osx-ppc-32)
@@ -152,6 +161,7 @@ ifeq ($(ARCH),osx-ppc-32)
        prefetch = no
        bsfq = no
        popcnt = no
+       sse = no
 endif
 
 ifeq ($(ARCH),osx-x86-64)
@@ -161,6 +171,7 @@ ifeq ($(ARCH),osx-x86-64)
        prefetch = yes
        bsfq = yes
        popcnt = no
+       sse = yes
 endif
 
 ifeq ($(ARCH),osx-x86-32)
@@ -170,6 +181,7 @@ ifeq ($(ARCH),osx-x86-32)
        prefetch = yes
        bsfq = no
        popcnt = no
+       sse = yes
 endif
 
 
@@ -315,7 +327,7 @@ endif
 
 ### 3.7 prefetch
 ifeq ($(prefetch),yes)
-       ifneq ($(arch),armv7)
+       ifeq ($(sse),yes)
                CXXFLAGS += -msse
                DEPENDFLAGS += -msse
        endif
@@ -455,6 +467,7 @@ config-sanity:
        @echo "prefetch: '$(prefetch)'"
        @echo "bsfq: '$(bsfq)'"
        @echo "popcnt: '$(popcnt)'"
+       @echo "sse: '$(sse)'"
        @echo ""
        @echo "Flags:"
        @echo "CXX: $(CXX)"
@@ -472,6 +485,7 @@ config-sanity:
        @test "$(prefetch)" = "yes" || test "$(prefetch)" = "no"
        @test "$(bsfq)" = "yes" || test "$(bsfq)" = "no"
        @test "$(popcnt)" = "yes" || test "$(popcnt)" = "no"
+       @test "$(sse)" = "yes" || test "$(sse)" = "no"
        @test "$(comp)" = "gcc" || test "$(comp)" = "icc" || test "$(comp)" = "mingw" || test "$(comp)" = "clang"
 
 $(EXE): $(OBJS)