diff options
author | Robin Watts <Robin.Watts@artifex.com> | 2019-06-11 19:04:21 +0100 |
---|---|---|
committer | Robin Watts <Robin.Watts@artifex.com> | 2019-06-25 10:37:10 +0100 |
commit | 4f59b4dc4f512839fd73718de535da99c6085da3 (patch) | |
tree | fe4919cba5fa017f7fd05c27f757f9b260cfe59e /base/gsroprun.c | |
parent | 140a9359f3cc6739c7caf0796430bc3112cb3cd5 (diff) | |
download | ghostpdl-4f59b4dc4f512839fd73718de535da99c6085da3.tar.gz |
First steps for using SSE for ROPs.
Diffstat (limited to 'base/gsroprun.c')
-rw-r--r-- | base/gsroprun.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/base/gsroprun.c b/base/gsroprun.c index 8c3dc0fb3..78019f43f 100644 --- a/base/gsroprun.c +++ b/base/gsroprun.c @@ -104,6 +104,8 @@ static void record(int rop) #define TEMPLATE_NAME invert_rop_run1 #define SPECIFIC_ROP 0x55 #define SPECIFIC_CODE(O,D,S,T) do { O = ~D; } while (0) +#define MM_SETUP() __m128i mm_constant_ones = _mm_cmpeq_epi32(mm_constant_ones, mm_constant_ones); +#define MM_SPECIFIC_CODE(O,D,S,T) do { _mm_storeu_si128(O,_mm_xor_si128(_mm_loadu_si128(D),mm_constant_ones)); } while (0 == 1) #define S_CONST #define T_CONST #include "gsroprun1.h" |