17{
   18   char UL;
   19#ifdef F77_CHAR
   21#else
   22   #define F77_UL &UL
   23#endif
   24#ifdef F77_INT
   26#else
   27   #define F77_N N
   28   #define F77_incX incx
   29   #define F77_incY incY
   30#endif
   32   const float *xx= (float *)X, *alp= (float *)alpha, *bet = (float *)beta;
   33   float ALPHA[2],BETA[2];
   35   float *x=(float *)X, *y=(float *)Y, *st=0, *tx;
   39 
   42   {
   45      else
   46      {
   50         return;
   51      }
   52      #ifdef F77_CHAR
   54      #endif
   57   }
   59   {
   61      ALPHA[0]= *alp;
   62      ALPHA[1]= -alp[1];
   63      BETA[0]= *bet;
   64      BETA[1]= -bet[1];
   65 
   66      if (N > 0)
   67      {
   68         n = N << 1;
   69         x = malloc(n*sizeof(float));
   70 
   71         tx = x;
   72         if( incX > 0 ) {
   73           i = incX << 1;
   74           tincx = 2;
   75           st= x+n;
   76         } else {
   77           i = incX *(-2);
   78           tincx = -2;
   79           st = x-2;
   80           x +=(n-2);
   81         }
   82 
   83         do
   84         {
   85           *x = *xx;
   86           x[1] = -xx[1];
   87           x += tincx ;
   88           xx += i;
   89         }
   90         while (x != st);
   91         x=tx;
   92 
   93 
   94         #ifdef F77_INT
   96         #else
   97            incx = 1;
   98         #endif
   99 
  100         if(incY > 0)
  101           tincY = incY;
  102         else
  103           tincY = -incY;
  104         y++;
  105 
  106         i = tincY << 1;
  107         n = i * N ;
  108         st = y + n;
  109         do {
  110            *y = -(*y);
  111            y += i;
  112         } while(y != st);
  113         y -= n;
  114      }  else
  115         x = (float *) X;
  116 
  117 
  120      else
  121      {
  125         return;
  126      }
  127      #ifdef F77_CHAR
  129      #endif
  130 
  133   }
  134   else
  135   {
  139      return;
  140   }
  142   {
  144      if(X!=x)
  145         free(x);
  146      if (N > 0)
  147      {
  148         do
  149         {
  150            *y = -(*y);
  151            y += i;
  152         }
  153         while (y != st);
  154     }
  155  }
  156 
  159   return;
  160}
void cblas_xerbla(CBLAS_INT p, const char *rout, const char *form,...)