xref: /aosp_15_r20/external/eigen/blas/f2c/complexdots.c (revision bf2c37156dfe67e5dfebd6d394bad8b2ab5804d4)
1*bf2c3715SXin Li /* This file has been modified to use the standard gfortran calling
2*bf2c3715SXin Li    convention, rather than the f2c calling convention.
3*bf2c3715SXin Li 
4*bf2c3715SXin Li    It does not require -ff2c when compiled with gfortran.
5*bf2c3715SXin Li */
6*bf2c3715SXin Li 
7*bf2c3715SXin Li /* complexdots.f -- translated by f2c (version 20100827).
8*bf2c3715SXin Li    You must link the resulting object file with libf2c:
9*bf2c3715SXin Li 	on Microsoft Windows system, link with libf2c.lib;
10*bf2c3715SXin Li 	on Linux or Unix systems, link with .../path/to/libf2c.a -lm
11*bf2c3715SXin Li 	or, if you install libf2c.a in a standard place, with -lf2c -lm
12*bf2c3715SXin Li 	-- in that order, at the end of the command line, as in
13*bf2c3715SXin Li 		cc *.o -lf2c -lm
14*bf2c3715SXin Li 	Source for libf2c is in /netlib/f2c/libf2c.zip, e.g.,
15*bf2c3715SXin Li 
16*bf2c3715SXin Li 		http://www.netlib.org/f2c/libf2c.zip
17*bf2c3715SXin Li */
18*bf2c3715SXin Li 
19*bf2c3715SXin Li #include "datatypes.h"
20*bf2c3715SXin Li 
cdotc_(integer * n,complex * cx,integer * incx,complex * cy,integer * incy)21*bf2c3715SXin Li complex cdotc_(integer *n, complex *cx, integer
22*bf2c3715SXin Li 	*incx, complex *cy, integer *incy)
23*bf2c3715SXin Li {
24*bf2c3715SXin Li     complex res;
25*bf2c3715SXin Li     extern /* Subroutine */ int cdotcw_(integer *, complex *, integer *,
26*bf2c3715SXin Li 	    complex *, integer *, complex *);
27*bf2c3715SXin Li 
28*bf2c3715SXin Li     /* Parameter adjustments */
29*bf2c3715SXin Li     --cy;
30*bf2c3715SXin Li     --cx;
31*bf2c3715SXin Li 
32*bf2c3715SXin Li     /* Function Body */
33*bf2c3715SXin Li     cdotcw_(n, &cx[1], incx, &cy[1], incy, &res);
34*bf2c3715SXin Li     return res;
35*bf2c3715SXin Li } /* cdotc_ */
36*bf2c3715SXin Li 
cdotu_(integer * n,complex * cx,integer * incx,complex * cy,integer * incy)37*bf2c3715SXin Li complex cdotu_(integer *n, complex *cx, integer
38*bf2c3715SXin Li 	*incx, complex *cy, integer *incy)
39*bf2c3715SXin Li {
40*bf2c3715SXin Li     complex res;
41*bf2c3715SXin Li     extern /* Subroutine */ int cdotuw_(integer *, complex *, integer *,
42*bf2c3715SXin Li 	    complex *, integer *, complex *);
43*bf2c3715SXin Li 
44*bf2c3715SXin Li     /* Parameter adjustments */
45*bf2c3715SXin Li     --cy;
46*bf2c3715SXin Li     --cx;
47*bf2c3715SXin Li 
48*bf2c3715SXin Li     /* Function Body */
49*bf2c3715SXin Li     cdotuw_(n, &cx[1], incx, &cy[1], incy, &res);
50*bf2c3715SXin Li     return res;
51*bf2c3715SXin Li } /* cdotu_ */
52*bf2c3715SXin Li 
zdotc_(integer * n,doublecomplex * cx,integer * incx,doublecomplex * cy,integer * incy)53*bf2c3715SXin Li doublecomplex zdotc_(integer *n, doublecomplex *cx, integer *incx,
54*bf2c3715SXin Li                      doublecomplex *cy, integer *incy)
55*bf2c3715SXin Li {
56*bf2c3715SXin Li     doublecomplex res;
57*bf2c3715SXin Li     extern /* Subroutine */ int zdotcw_(integer *, doublecomplex *, integer *,
58*bf2c3715SXin Li 	     doublecomplex *, integer *, doublecomplex *);
59*bf2c3715SXin Li 
60*bf2c3715SXin Li     /* Parameter adjustments */
61*bf2c3715SXin Li     --cy;
62*bf2c3715SXin Li     --cx;
63*bf2c3715SXin Li 
64*bf2c3715SXin Li     /* Function Body */
65*bf2c3715SXin Li     zdotcw_(n, &cx[1], incx, &cy[1], incy, &res);
66*bf2c3715SXin Li     return res;
67*bf2c3715SXin Li } /* zdotc_ */
68*bf2c3715SXin Li 
zdotu_(integer * n,doublecomplex * cx,integer * incx,doublecomplex * cy,integer * incy)69*bf2c3715SXin Li doublecomplex zdotu_(integer *n, doublecomplex *cx, integer *incx,
70*bf2c3715SXin Li                      doublecomplex *cy, integer *incy)
71*bf2c3715SXin Li {
72*bf2c3715SXin Li     doublecomplex res;
73*bf2c3715SXin Li     extern /* Subroutine */ int zdotuw_(integer *, doublecomplex *, integer *,
74*bf2c3715SXin Li 	     doublecomplex *, integer *, doublecomplex *);
75*bf2c3715SXin Li 
76*bf2c3715SXin Li     /* Parameter adjustments */
77*bf2c3715SXin Li     --cy;
78*bf2c3715SXin Li     --cx;
79*bf2c3715SXin Li 
80*bf2c3715SXin Li     /* Function Body */
81*bf2c3715SXin Li     zdotuw_(n, &cx[1], incx, &cy[1], incy, &res);
82*bf2c3715SXin Li     return res;
83*bf2c3715SXin Li } /* zdotu_ */
84*bf2c3715SXin Li 
85