From 13c0e6f5ef9f6cbdd3b0bf663fde72bcffdbba6c Mon Sep 17 00:00:00 2001 From: Jonathan Li Date: Sat, 28 Feb 2015 13:20:01 +0000 Subject: [PATCH] GSdx: Explain TransactionScope changes --- plugins/GSdx/GSThread.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/plugins/GSdx/GSThread.h b/plugins/GSdx/GSThread.h index 45d5daca69..3738790f8b 100644 --- a/plugins/GSdx/GSThread.h +++ b/plugins/GSdx/GSThread.h @@ -485,6 +485,11 @@ public: TransactionScope(Lock& fallBackLock_, int max_retries = 3) : fallBackLock(fallBackLock_) { + // The TSX (RTM/HLE) instructions on Intel AVX2 CPUs may either be + // absent or disabled (see errata HSD136 and specification change at + // http://www.intel.com/content/dam/www/public/us/en/documents/specification-updates/4th-gen-core-family-desktop-specification-update.pdf) + // This can cause builds for AVX2 CPUs to fail with GCC/Clang on Linux, + // so check that the RTM instructions are actually available. #if (_M_SSE >= 0x501 && !defined(__GNUC__)) || defined(__RTM__) int nretries = 0;