• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt-6.x.4708/toolchains/hndtools-armeabi-2011.09/share/doc/arm-arm-none-eabi/html/gcc/
1<html lang="en">
2<head>
3<title>ARM iWMMXt Built-in Functions - Using the GNU Compiler Collection (GCC)</title>
4<meta http-equiv="Content-Type" content="text/html">
5<meta name="description" content="Using the GNU Compiler Collection (GCC)">
6<meta name="generator" content="makeinfo 4.13">
7<link title="Top" rel="start" href="index.html#Top">
8<link rel="up" href="Target-Builtins.html#Target-Builtins" title="Target Builtins">
9<link rel="prev" href="Alpha-Built_002din-Functions.html#Alpha-Built_002din-Functions" title="Alpha Built-in Functions">
10<link rel="next" href="ARM-NEON-Intrinsics.html#ARM-NEON-Intrinsics" title="ARM NEON Intrinsics">
11<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
12<!--
13Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997,
141998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
152010 Free Software Foundation, Inc.
16
17Permission is granted to copy, distribute and/or modify this document
18under the terms of the GNU Free Documentation License, Version 1.3 or
19any later version published by the Free Software Foundation; with the
20Invariant Sections being ``Funding Free Software'', the Front-Cover
21Texts being (a) (see below), and with the Back-Cover Texts being (b)
22(see below).  A copy of the license is included in the section entitled
23``GNU Free Documentation License''.
24
25(a) The FSF's Front-Cover Text is:
26
27     A GNU Manual
28
29(b) The FSF's Back-Cover Text is:
30
31     You have freedom to copy and modify this GNU Manual, like GNU
32     software.  Copies published by the Free Software Foundation raise
33     funds for GNU development.-->
34<meta http-equiv="Content-Style-Type" content="text/css">
35<style type="text/css"><!--
36  pre.display { font-family:inherit }
37  pre.format  { font-family:inherit }
38  pre.smalldisplay { font-family:inherit; font-size:smaller }
39  pre.smallformat  { font-family:inherit; font-size:smaller }
40  pre.smallexample { font-size:smaller }
41  pre.smalllisp    { font-size:smaller }
42  span.sc    { font-variant:small-caps }
43  span.roman { font-family:serif; font-weight:normal; } 
44  span.sansserif { font-family:sans-serif; font-weight:normal; } 
45--></style>
46<link rel="stylesheet" type="text/css" href="../cs.css">
47</head>
48<body>
49<div class="node">
50<a name="ARM-iWMMXt-Built-in-Functions"></a>
51<a name="ARM-iWMMXt-Built_002din-Functions"></a>
52<p>
53Next:&nbsp;<a rel="next" accesskey="n" href="ARM-NEON-Intrinsics.html#ARM-NEON-Intrinsics">ARM NEON Intrinsics</a>,
54Previous:&nbsp;<a rel="previous" accesskey="p" href="Alpha-Built_002din-Functions.html#Alpha-Built_002din-Functions">Alpha Built-in Functions</a>,
55Up:&nbsp;<a rel="up" accesskey="u" href="Target-Builtins.html#Target-Builtins">Target Builtins</a>
56<hr>
57</div>
58
59<h4 class="subsection">6.54.2 ARM iWMMXt Built-in Functions</h4>
60
61<p>These built-in functions are available for the ARM family of
62processors when the <samp><span class="option">-mcpu=iwmmxt</span></samp> switch is used:
63
64<pre class="smallexample">     typedef int v2si __attribute__ ((vector_size (8)));
65     typedef short v4hi __attribute__ ((vector_size (8)));
66     typedef char v8qi __attribute__ ((vector_size (8)));
67     
68     int __builtin_arm_getwcx (int)
69     void __builtin_arm_setwcx (int, int)
70     int __builtin_arm_textrmsb (v8qi, int)
71     int __builtin_arm_textrmsh (v4hi, int)
72     int __builtin_arm_textrmsw (v2si, int)
73     int __builtin_arm_textrmub (v8qi, int)
74     int __builtin_arm_textrmuh (v4hi, int)
75     int __builtin_arm_textrmuw (v2si, int)
76     v8qi __builtin_arm_tinsrb (v8qi, int)
77     v4hi __builtin_arm_tinsrh (v4hi, int)
78     v2si __builtin_arm_tinsrw (v2si, int)
79     long long __builtin_arm_tmia (long long, int, int)
80     long long __builtin_arm_tmiabb (long long, int, int)
81     long long __builtin_arm_tmiabt (long long, int, int)
82     long long __builtin_arm_tmiaph (long long, int, int)
83     long long __builtin_arm_tmiatb (long long, int, int)
84     long long __builtin_arm_tmiatt (long long, int, int)
85     int __builtin_arm_tmovmskb (v8qi)
86     int __builtin_arm_tmovmskh (v4hi)
87     int __builtin_arm_tmovmskw (v2si)
88     long long __builtin_arm_waccb (v8qi)
89     long long __builtin_arm_wacch (v4hi)
90     long long __builtin_arm_waccw (v2si)
91     v8qi __builtin_arm_waddb (v8qi, v8qi)
92     v8qi __builtin_arm_waddbss (v8qi, v8qi)
93     v8qi __builtin_arm_waddbus (v8qi, v8qi)
94     v4hi __builtin_arm_waddh (v4hi, v4hi)
95     v4hi __builtin_arm_waddhss (v4hi, v4hi)
96     v4hi __builtin_arm_waddhus (v4hi, v4hi)
97     v2si __builtin_arm_waddw (v2si, v2si)
98     v2si __builtin_arm_waddwss (v2si, v2si)
99     v2si __builtin_arm_waddwus (v2si, v2si)
100     v8qi __builtin_arm_walign (v8qi, v8qi, int)
101     long long __builtin_arm_wand(long long, long long)
102     long long __builtin_arm_wandn (long long, long long)
103     v8qi __builtin_arm_wavg2b (v8qi, v8qi)
104     v8qi __builtin_arm_wavg2br (v8qi, v8qi)
105     v4hi __builtin_arm_wavg2h (v4hi, v4hi)
106     v4hi __builtin_arm_wavg2hr (v4hi, v4hi)
107     v8qi __builtin_arm_wcmpeqb (v8qi, v8qi)
108     v4hi __builtin_arm_wcmpeqh (v4hi, v4hi)
109     v2si __builtin_arm_wcmpeqw (v2si, v2si)
110     v8qi __builtin_arm_wcmpgtsb (v8qi, v8qi)
111     v4hi __builtin_arm_wcmpgtsh (v4hi, v4hi)
112     v2si __builtin_arm_wcmpgtsw (v2si, v2si)
113     v8qi __builtin_arm_wcmpgtub (v8qi, v8qi)
114     v4hi __builtin_arm_wcmpgtuh (v4hi, v4hi)
115     v2si __builtin_arm_wcmpgtuw (v2si, v2si)
116     long long __builtin_arm_wmacs (long long, v4hi, v4hi)
117     long long __builtin_arm_wmacsz (v4hi, v4hi)
118     long long __builtin_arm_wmacu (long long, v4hi, v4hi)
119     long long __builtin_arm_wmacuz (v4hi, v4hi)
120     v4hi __builtin_arm_wmadds (v4hi, v4hi)
121     v4hi __builtin_arm_wmaddu (v4hi, v4hi)
122     v8qi __builtin_arm_wmaxsb (v8qi, v8qi)
123     v4hi __builtin_arm_wmaxsh (v4hi, v4hi)
124     v2si __builtin_arm_wmaxsw (v2si, v2si)
125     v8qi __builtin_arm_wmaxub (v8qi, v8qi)
126     v4hi __builtin_arm_wmaxuh (v4hi, v4hi)
127     v2si __builtin_arm_wmaxuw (v2si, v2si)
128     v8qi __builtin_arm_wminsb (v8qi, v8qi)
129     v4hi __builtin_arm_wminsh (v4hi, v4hi)
130     v2si __builtin_arm_wminsw (v2si, v2si)
131     v8qi __builtin_arm_wminub (v8qi, v8qi)
132     v4hi __builtin_arm_wminuh (v4hi, v4hi)
133     v2si __builtin_arm_wminuw (v2si, v2si)
134     v4hi __builtin_arm_wmulsm (v4hi, v4hi)
135     v4hi __builtin_arm_wmulul (v4hi, v4hi)
136     v4hi __builtin_arm_wmulum (v4hi, v4hi)
137     long long __builtin_arm_wor (long long, long long)
138     v2si __builtin_arm_wpackdss (long long, long long)
139     v2si __builtin_arm_wpackdus (long long, long long)
140     v8qi __builtin_arm_wpackhss (v4hi, v4hi)
141     v8qi __builtin_arm_wpackhus (v4hi, v4hi)
142     v4hi __builtin_arm_wpackwss (v2si, v2si)
143     v4hi __builtin_arm_wpackwus (v2si, v2si)
144     long long __builtin_arm_wrord (long long, long long)
145     long long __builtin_arm_wrordi (long long, int)
146     v4hi __builtin_arm_wrorh (v4hi, long long)
147     v4hi __builtin_arm_wrorhi (v4hi, int)
148     v2si __builtin_arm_wrorw (v2si, long long)
149     v2si __builtin_arm_wrorwi (v2si, int)
150     v2si __builtin_arm_wsadb (v8qi, v8qi)
151     v2si __builtin_arm_wsadbz (v8qi, v8qi)
152     v2si __builtin_arm_wsadh (v4hi, v4hi)
153     v2si __builtin_arm_wsadhz (v4hi, v4hi)
154     v4hi __builtin_arm_wshufh (v4hi, int)
155     long long __builtin_arm_wslld (long long, long long)
156     long long __builtin_arm_wslldi (long long, int)
157     v4hi __builtin_arm_wsllh (v4hi, long long)
158     v4hi __builtin_arm_wsllhi (v4hi, int)
159     v2si __builtin_arm_wsllw (v2si, long long)
160     v2si __builtin_arm_wsllwi (v2si, int)
161     long long __builtin_arm_wsrad (long long, long long)
162     long long __builtin_arm_wsradi (long long, int)
163     v4hi __builtin_arm_wsrah (v4hi, long long)
164     v4hi __builtin_arm_wsrahi (v4hi, int)
165     v2si __builtin_arm_wsraw (v2si, long long)
166     v2si __builtin_arm_wsrawi (v2si, int)
167     long long __builtin_arm_wsrld (long long, long long)
168     long long __builtin_arm_wsrldi (long long, int)
169     v4hi __builtin_arm_wsrlh (v4hi, long long)
170     v4hi __builtin_arm_wsrlhi (v4hi, int)
171     v2si __builtin_arm_wsrlw (v2si, long long)
172     v2si __builtin_arm_wsrlwi (v2si, int)
173     v8qi __builtin_arm_wsubb (v8qi, v8qi)
174     v8qi __builtin_arm_wsubbss (v8qi, v8qi)
175     v8qi __builtin_arm_wsubbus (v8qi, v8qi)
176     v4hi __builtin_arm_wsubh (v4hi, v4hi)
177     v4hi __builtin_arm_wsubhss (v4hi, v4hi)
178     v4hi __builtin_arm_wsubhus (v4hi, v4hi)
179     v2si __builtin_arm_wsubw (v2si, v2si)
180     v2si __builtin_arm_wsubwss (v2si, v2si)
181     v2si __builtin_arm_wsubwus (v2si, v2si)
182     v4hi __builtin_arm_wunpckehsb (v8qi)
183     v2si __builtin_arm_wunpckehsh (v4hi)
184     long long __builtin_arm_wunpckehsw (v2si)
185     v4hi __builtin_arm_wunpckehub (v8qi)
186     v2si __builtin_arm_wunpckehuh (v4hi)
187     long long __builtin_arm_wunpckehuw (v2si)
188     v4hi __builtin_arm_wunpckelsb (v8qi)
189     v2si __builtin_arm_wunpckelsh (v4hi)
190     long long __builtin_arm_wunpckelsw (v2si)
191     v4hi __builtin_arm_wunpckelub (v8qi)
192     v2si __builtin_arm_wunpckeluh (v4hi)
193     long long __builtin_arm_wunpckeluw (v2si)
194     v8qi __builtin_arm_wunpckihb (v8qi, v8qi)
195     v4hi __builtin_arm_wunpckihh (v4hi, v4hi)
196     v2si __builtin_arm_wunpckihw (v2si, v2si)
197     v8qi __builtin_arm_wunpckilb (v8qi, v8qi)
198     v4hi __builtin_arm_wunpckilh (v4hi, v4hi)
199     v2si __builtin_arm_wunpckilw (v2si, v2si)
200     long long __builtin_arm_wxor (long long, long long)
201     long long __builtin_arm_wzero ()
202</pre>
203 </body></html>
204
205