Question: GSdx SSE4.1 Linux #438

Closed
ntzrmtthihu777 opened this Issue Jan 25, 2015 · 7 comments

Projects

None yet

3 participants

@ntzrmtthihu777

Is it currently possible to build the gsdx plugin with sse4.1 instructions on linux? if so, how would one go about that, I've tried modifying plugins/GSdx/CMakeLists.txt and my build broke (gonna clean the workspace and try again). My cpu is capable of most of the sse extensions, all afaik. I know for a fact it supports sse4.1, so any info?

@ntzrmtthihu777

Nope, build still broken.

@gregory38
Contributor

By default gsdx will be built with AVX1/2 support. Code need to be changed to enable lower SSE instrusction set.

@ntzrmtthihu777

But GSdx SSE4.1 does work on Windows, correct?

@gregory38
Contributor

If I was an evil dev, I would say

but GSdx AVX does work on Linux ;)

So as say, code need to be enabled and tested (and potentially fixed).

@ntzrmtthihu777

I'd like to help, can you give me a bit of a roadmap?

@gregory38
Contributor

Look around that code.

plugins/GSdx/stdafx.h-// sse
plugins/GSdx/stdafx.h-#ifdef __GNUC__
plugins/GSdx/stdafx.h-// Convert gcc see define into GSdx (windows) define
plugins/GSdx/stdafx.h:#if defined(__AVX2__)
plugins/GSdx/stdafx.h-  #define _M_SSE 0x501
plugins/GSdx/stdafx.h:#elif defined(__AVX__)
plugins/GSdx/stdafx.h-  #define _M_SSE 0x500
plugins/GSdx/stdafx.h-#endif
plugins/GSdx/stdafx.h-#endif
plugins/GSdx/GSUtil.cpp-        #if _M_SSE >= 0x501
plugins/GSdx/GSUtil.cpp-        sl.push_back("AVX2");
plugins/GSdx/GSUtil.cpp-        #elif _M_SSE >= 0x500
plugins/GSdx/GSUtil.cpp:        sl.push_back("AVX");
plugins/GSdx/GSUtil.cpp-        #elif _M_SSE >= 0x402
plugins/GSdx/GSUtil.cpp-        sl.push_back("SSE42");
plugins/GSdx/GSUtil.cpp-        #elif _M_SSE >= 0x401
@turtleli
Member

I've sent a PR for building GSdx with SSE4.1 and SSSE3 on Linux.

@gregory38 gregory38 closed this Mar 1, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment