summaryrefslogtreecommitdiff
path: root/libgfortran/m4
diff options
context:
space:
mode:
authorfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-16 07:52:22 +0000
committerfxcoudert <fxcoudert@138bc75d-0d04-0410-961f-82ee72b054a4>2006-02-16 07:52:22 +0000
commit1b9d8f4b75a937736cb88855f41558e41fca6164 (patch)
treef2093c49861eca5b34a28bb437e2de88bf8c4007 /libgfortran/m4
parente3071e62e57f49014686b4c6d17689d6dcb786b0 (diff)
downloadgcc-1b9d8f4b75a937736cb88855f41558e41fca6164.tar.gz
PR libfortran/24903
* m4/dotprodc.m4: Use __builtin_conj instead of assigning real and imaginary parts separately. * generated/dotprod_c4.c: Regenerated. * generated/dotprod_c8.c: Regenerated. * generated/dotprod_c10.c: Regenerated. * generated/dotprod_c16.c: Regenerated. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@111131 138bc75d-0d04-0410-961f-82ee72b054a4
Diffstat (limited to 'libgfortran/m4')
-rw-r--r--libgfortran/m4/dotprodc.m45
1 files changed, 2 insertions, 3 deletions
diff --git a/libgfortran/m4/dotprodc.m4 b/libgfortran/m4/dotprodc.m4
index 2b8c45f15c5..415eebfe4a9 100644
--- a/libgfortran/m4/dotprodc.m4
+++ b/libgfortran/m4/dotprodc.m4
@@ -34,6 +34,7 @@ Boston, MA 02110-1301, USA. */
#include <assert.h>
#include "libgfortran.h"'
include(iparm.m4)dnl
+include(mtype.m4)dnl
`#if defined (HAVE_'rtype_name`)'
@@ -50,7 +51,6 @@ dot_product_`'rtype_code (rtype * const restrict a, rtype * const restrict b)
const rtype_name * restrict pa;
const rtype_name * restrict pb;
rtype_name res;
- rtype_name conjga;
index_type count;
index_type astride;
index_type bstride;
@@ -73,8 +73,7 @@ sinclude(`dotprod_asm_'rtype_code`.m4')dnl
while (count--)
{
- COMPLEX_ASSIGN(conjga, REALPART (*pa), -IMAGPART (*pa));
- res += conjga * *pb;
+ res += __builtin_conj`'q (*pa) * *pb;
pa += astride;
pb += bstride;
}