Make QRegion not need to be friends with QVector
[profile/ivi/qtbase.git] / src / gui / painting / qt_mips_asm_dsp.h
1 /****************************************************************************
2 **
3 ** Copyright (C) 2012 MIPS Technologies, www.mips.com, author Damir Tatalovic <dtatalovic@mips.com>
4 ** Contact: http://www.qt-project.org/
5 **
6 ** This file is part of the QtGui module of the Qt Toolkit.
7 **
8 ** $QT_BEGIN_LICENSE:LGPL$
9 ** GNU Lesser General Public License Usage
10 ** This file may be used under the terms of the GNU Lesser General Public
11 ** License version 2.1 as published by the Free Software Foundation and
12 ** appearing in the file LICENSE.LGPL included in the packaging of this
13 ** file. Please review the following information to ensure the GNU Lesser
14 ** General Public License version 2.1 requirements will be met:
15 ** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
16 **
17 ** In addition, as a special exception, Nokia gives you certain additional
18 ** rights. These rights are described in the Nokia Qt LGPL Exception
19 ** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
20 **
21 ** GNU General Public License Usage
22 ** Alternatively, this file may be used under the terms of the GNU General
23 ** Public License version 3.0 as published by the Free Software Foundation
24 ** and appearing in the file LICENSE.GPL included in the packaging of this
25 ** file. Please review the following information to ensure the GNU General
26 ** Public License version 3.0 requirements will be met:
27 ** http://www.gnu.org/copyleft/gpl.html.
28 **
29 ** Other Usage
30 ** Alternatively, this file may be used in accordance with the terms and
31 ** conditions contained in a signed written agreement between you and Nokia.
32 **
33 **
34 **
35 **
36 **
37 **
38 ** $QT_END_LICENSE$
39 **
40 ****************************************************************************/
41
42 #ifndef QT_MIPS_DSP_H__
43 #define QT_MIPS_DSP_H__
44
45 #define zero $0
46 #define AT   $1
47 #define v0   $2
48 #define v1   $3
49 #define a0   $4
50 #define a1   $5
51 #define a2   $6
52 #define a3   $7
53 #define t0   $8
54 #define t1   $9
55 #define t2   $10
56 #define t3   $11
57 #define t4   $12
58 #define t5   $13
59 #define t6   $14
60 #define t7   $15
61 #define s0   $16
62 #define s1   $17
63 #define s2   $18
64 #define s3   $19
65 #define s4   $20
66 #define s5   $21
67 #define s6   $22
68 #define s7   $23
69 #define t8   $24
70 #define t9   $25
71 #define k0   $26
72 #define k1   $27
73 #define gp   $28
74 #define sp   $29
75 #define fp   $30
76 #define s8   $30
77 #define ra   $31
78
79 /*
80  * LEAF_MIPS32R2 - declare leaf_mips32r2 routine
81  */
82 #define LEAF_MIPS32R2(symbol)                           \
83                 .globl  symbol;                         \
84                 .align  2;                              \
85                 .type   symbol,@function;               \
86                 .ent    symbol,0;                       \
87 symbol:         .frame  sp, 0, ra;                      \
88                 .set    arch=mips32r2;                  \
89                 .set    noreorder;
90
91 /*
92  * LEAF_MIPS_DSP - declare leaf_mips_dsp routine
93  */
94 #define LEAF_MIPS_DSP(symbol)                           \
95 LEAF_MIPS32R2(symbol)                                   \
96                 .set    dsp;
97
98 /*
99  * LEAF_MIPS_DSPR2 - declare leaf_mips_dspr2 routine
100  */
101 #define LEAF_MIPS_DSPR2(symbol)                         \
102 LEAF_MIPS32R2(symbol)                                   \
103                 .set   dspr2;
104
105 /*
106  * END - mark end of function
107  */
108 #define END(function)                                   \
109                 .set    reorder;                        \
110                 .end    function;                       \
111                 .size   function,.-function
112
113 #endif //QT_MIPS_DSP_H__