From b8a1610a4c976c03c1a9a442487b6b0ba90cc01c Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Wed, 11 Feb 2015 17:39:28 +0100 Subject: Vectorize variants MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Slightly worse with amdlibm, slightly better with gcc’s builtins (no optimization) and worse with optimization --- private.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'private.h') diff --git a/private.h b/private.h index 9800f82..dc3e19c 100644 --- a/private.h +++ b/private.h @@ -99,9 +99,10 @@ typedef struct { } flam3_iter_constants; -typedef struct { +typedef double double2 __attribute__ ((vector_size (sizeof (double)*2))); - double tx,ty; /* Starting coordinates */ +typedef struct { + double2 t; double precalc_atan, precalc_sina; /* Precalculated, if needed */ double precalc_cosa, precalc_sqrt; @@ -110,8 +111,7 @@ typedef struct { flam3_xform *xform; /* For the important values */ /* Output Coords */ - - double p0, p1; + double2 p; /* Pointer to the isaac RNG state */ randctx *rc; -- cgit v1.2.3