FFTLIB User Guide
FFTLIB_UTIL_SA2CloadSA0Cstore.h
Go to the documentation of this file.
1 /*******************************************************************************
2  **+--------------------------------------------------------------------------+**
3  **| **** |**
4  **| **** |**
5  **| ******o*** |**
6  **| ********_///_**** |**
7  **| ***** /_//_/ **** |**
8  **| ** ** (__/ **** |**
9  **| ********* |**
10  **| **** |**
11  **| *** |**
12  **| |**
13  **| Copyright (c) 2016 Texas Instruments Incorporated |**
14  **| |**
15  **| All rights reserved not granted herein. |**
16  **| |**
17  **| Limited License. |**
18  **| |**
19  **| Texas Instruments Incorporated grants a world-wide, royalty-free, |**
20  **| non-exclusive license under copyrights and patents it now or |**
21  **| hereafter owns or controls to make, have made, use, import, offer to |**
22  **| sell and sell ("Utilize") this software subject to the terms herein. |**
23  **| With respect to the foregoing patent license, such license is granted |**
24  **| solely to the extent that any such patent is necessary to Utilize the |**
25  **| software alone. The patent license shall not apply to any |**
26  **| combinations which include this software, other than combinations |**
27  **| with devices manufactured by or for TI ("TI Devices"). No hardware |**
28  **| patent is licensed hereunder. |**
29  **| |**
30  **| Redistributions must preserve existing copyright notices and |**
31  **| reproduce this license (including the above copyright notice and the |**
32  **| disclaimer and (if applicable) source code license limitations below) |**
33  **| in the documentation and/or other materials provided with the |**
34  **| distribution |**
35  **| |**
36  **| Redistribution and use in binary form, without modification, are |**
37  **| permitted provided that the following conditions are met: |**
38  **| |**
39  **| * No reverse engineering, decompilation, or disassembly of this |**
40  **| software is permitted with respect to any software provided in binary |**
41  **| form. |**
42  **| |**
43  **| * any redistribution and use are licensed by TI for use only with |**
44  **| TI Devices. |**
45  **| |**
46  **| * Nothing shall obligate TI to provide you with source code for |**
47  **| the software licensed and provided to you in object code. |**
48  **| |**
49  **| If software source code is provided to you, modification and |**
50  **| redistribution of the source code are permitted provided that the |**
51  **| following conditions are met: |**
52  **| |**
53  **| * any redistribution and use of the source code, including any |**
54  **| resulting derivative works, are licensed by TI for use only with TI |**
55  **| Devices. |**
56  **| |**
57  **| * any redistribution and use of any object code compiled from the |**
58  **| source code and any resulting derivative works, are licensed by TI |**
59  **| for use only with TI Devices. |**
60  **| |**
61  **| Neither the name of Texas Instruments Incorporated nor the names of |**
62  **| its suppliers may be used to endorse or promote products derived from |**
63  **| this software without specific prior written permission. |**
64  **| |**
65  **| DISCLAIMER. |**
66  **| |**
67  **| THIS SOFTWARE IS PROVIDED BY TI AND TI'S LICENSORS "AS IS" AND ANY |**
68  **| EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE |**
69  **| IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR |**
70  **| PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL TI AND TI'S LICENSORS BE |**
71  **| LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR |**
72  **| CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF |**
73  **| SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR |**
74  **| BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, |**
75  **| WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE |**
76  **| OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, |**
77  **| EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |**
78  **+--------------------------------------------------------------------------+**
79  *******************************************************************************/
80 
81 #ifndef COMMON_FFTLIB_UTIL_SA2CLOADSA0CSTORE_H_
82 #define COMMON_FFTLIB_UTIL_SA2CLOADSA0CSTORE_H_ 1
83 
84 /*******************************************************************************
85  *
86  * INCLUDES
87  *
88  ******************************************************************************/
89 
90 
91 
92 
93 /******************************************************************************/
94 
95 /* ---------------------------------------------------------------- */
96 /* MISRAC Rule 8.13(NEEDS.CONST) Deviation: CbackDestination cannot*/
97 /* be declared with const qualifier because data is copied into */
98 /* buffer pointed by the pointer. */
99 /* ---------------------------------------------------------------- */
100 /******************************************************************************/
111 /******************************************************************************/
112 
114 static inline void FFTLIB_UTIL_SA2CloadSA0Cstore(int32_t numRows,
115  const uint8_t *restrict CbackSource,
116  uint8_t *restrict CbackDestination)
117 {
118  int32_t r;
119  __mma_vec VB0;
120 
121 #pragma LOOP_NO_ALIAS
122  for(r = 0; r < numRows; r++){
123  __mma_vec valC = *c7x::strm_agen<2, __mma_vec>::get_adv(CbackSource);
124  __HWALDC(valC);
125  __HWAXFER(__MMA_XFER_SRC_C);
126  VB0 = __HWARCV(0);
127  __HWAADV();
128 
129  __vpred tmp = c7x::strm_agen<0, __mma_vec>::get_vpred();
130  __mma_vec * VB1 = c7x::strm_agen<0, __mma_vec>::get_adv(CbackDestination);
131  __vstore_pred(tmp, VB1, VB0);
132 
133  }
134  return;
135 }
136 #endif /* COMMON_FFTLIB_UTIL_SA2CLOADSA0CSTORE_H_ */
static void FFTLIB_UTIL_SA2CloadSA0Cstore(int32_t numRows, const uint8_t *restrict CbackSource, uint8_t *restrict CbackDestination)
#define __INLINE_FUNC(x)
Definition: FFTLIB_types.h:67