Coverage Report

Created: 2025-09-12 12:27

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/root/doris/contrib/openblas/interface/scal.c
Line
Count
Source
1
/*********************************************************************/
2
/* Copyright 2009, 2010 The University of Texas at Austin.           */
3
/* All rights reserved.                                              */
4
/*                                                                   */
5
/* Redistribution and use in source and binary forms, with or        */
6
/* without modification, are permitted provided that the following   */
7
/* conditions are met:                                               */
8
/*                                                                   */
9
/*   1. Redistributions of source code must retain the above         */
10
/*      copyright notice, this list of conditions and the following  */
11
/*      disclaimer.                                                  */
12
/*                                                                   */
13
/*   2. Redistributions in binary form must reproduce the above      */
14
/*      copyright notice, this list of conditions and the following  */
15
/*      disclaimer in the documentation and/or other materials       */
16
/*      provided with the distribution.                              */
17
/*                                                                   */
18
/*    THIS  SOFTWARE IS PROVIDED  BY THE  UNIVERSITY OF  TEXAS AT    */
19
/*    AUSTIN  ``AS IS''  AND ANY  EXPRESS OR  IMPLIED WARRANTIES,    */
20
/*    INCLUDING, BUT  NOT LIMITED  TO, THE IMPLIED  WARRANTIES OF    */
21
/*    MERCHANTABILITY  AND FITNESS FOR  A PARTICULAR  PURPOSE ARE    */
22
/*    DISCLAIMED.  IN  NO EVENT SHALL THE UNIVERSITY  OF TEXAS AT    */
23
/*    AUSTIN OR CONTRIBUTORS BE  LIABLE FOR ANY DIRECT, INDIRECT,    */
24
/*    INCIDENTAL,  SPECIAL, EXEMPLARY,  OR  CONSEQUENTIAL DAMAGES    */
25
/*    (INCLUDING, BUT  NOT LIMITED TO,  PROCUREMENT OF SUBSTITUTE    */
26
/*    GOODS  OR  SERVICES; LOSS  OF  USE,  DATA,  OR PROFITS;  OR    */
27
/*    BUSINESS INTERRUPTION) HOWEVER CAUSED  AND ON ANY THEORY OF    */
28
/*    LIABILITY, WHETHER  IN CONTRACT, STRICT  LIABILITY, OR TORT    */
29
/*    (INCLUDING NEGLIGENCE OR OTHERWISE)  ARISING IN ANY WAY OUT    */
30
/*    OF  THE  USE OF  THIS  SOFTWARE,  EVEN  IF ADVISED  OF  THE    */
31
/*    POSSIBILITY OF SUCH DAMAGE.                                    */
32
/*                                                                   */
33
/* The views and conclusions contained in the software and           */
34
/* documentation are those of the authors and should not be          */
35
/* interpreted as representing official policies, either expressed   */
36
/* or implied, of The University of Texas at Austin.                 */
37
/*********************************************************************/
38
39
#include <stdio.h>
40
#include "common.h"
41
#ifdef FUNCTION_PROFILE
42
#include "functable.h"
43
#endif
44
45
#ifndef CBLAS
46
47
0
void NAME(blasint *N, FLOAT *ALPHA, FLOAT *x, blasint *INCX){
48
49
0
  blasint n    = *N;
50
0
  blasint incx = *INCX;
51
0
  FLOAT alpha = *ALPHA;
52
53
#else
54
55
void CNAME(blasint n, FLOAT alpha, FLOAT *x, blasint incx){
56
57
#endif
58
59
0
#ifdef SMP
60
0
  int mode, nthreads;
61
0
#endif
62
63
0
#ifndef CBLAS
64
0
  PRINT_DEBUG_NAME;
65
#else
66
  PRINT_DEBUG_CNAME;
67
#endif
68
69
0
  if (incx <= 0 || n <= 0) return;
70
71
0
  if (alpha == ONE) return;
72
73
0
  IDEBUG_START;
74
75
0
  FUNCTION_PROFILE_START();
76
77
78
0
#ifdef SMP
79
0
  if (n <= 1048576 )
80
0
  nthreads = 1;
81
0
  else
82
0
  nthreads = num_cpu_avail(1);
83
84
85
0
  if (nthreads == 1) {
86
0
#endif
87
88
0
  SCAL_K(n, 0, 0, alpha, x, incx, NULL, 0, NULL, 1);
89
90
0
#ifdef SMP
91
0
  } else {
92
93
#ifdef DOUBLE
94
0
    mode  =  BLAS_DOUBLE | BLAS_REAL;
95
#else
96
0
    mode  =  BLAS_SINGLE | BLAS_REAL;
97
#endif
98
99
0
    blas_level1_thread(mode, n, 0, 0,
100
0
#ifndef CBLAS
101
0
           ALPHA,
102
#else
103
           &alpha,
104
#endif
105
0
           x, incx, NULL, 0, NULL, 1,  (int (*)(void))SCAL_K, nthreads);
106
107
0
  }
108
0
#endif
109
110
0
  FUNCTION_PROFILE_END(1, n, n);
111
112
0
  IDEBUG_END;
113
114
0
  return;
115
116
0
}
Unexecuted instantiation: sscal_
Unexecuted instantiation: dscal_