• 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>Alpha 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="next" href="ARM-iWMMXt-Built_002din-Functions.html#ARM-iWMMXt-Built_002din-Functions" title="ARM iWMMXt Built-in Functions">
10<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
11<!--
12Copyright (C) 1988, 1989, 1992, 1993, 1994, 1995, 1996, 1997,
131998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009,
142010 Free Software Foundation, Inc.
15
16Permission is granted to copy, distribute and/or modify this document
17under the terms of the GNU Free Documentation License, Version 1.3 or
18any later version published by the Free Software Foundation; with the
19Invariant Sections being ``Funding Free Software'', the Front-Cover
20Texts being (a) (see below), and with the Back-Cover Texts being (b)
21(see below).  A copy of the license is included in the section entitled
22``GNU Free Documentation License''.
23
24(a) The FSF's Front-Cover Text is:
25
26     A GNU Manual
27
28(b) The FSF's Back-Cover Text is:
29
30     You have freedom to copy and modify this GNU Manual, like GNU
31     software.  Copies published by the Free Software Foundation raise
32     funds for GNU development.-->
33<meta http-equiv="Content-Style-Type" content="text/css">
34<style type="text/css"><!--
35  pre.display { font-family:inherit }
36  pre.format  { font-family:inherit }
37  pre.smalldisplay { font-family:inherit; font-size:smaller }
38  pre.smallformat  { font-family:inherit; font-size:smaller }
39  pre.smallexample { font-size:smaller }
40  pre.smalllisp    { font-size:smaller }
41  span.sc    { font-variant:small-caps }
42  span.roman { font-family:serif; font-weight:normal; } 
43  span.sansserif { font-family:sans-serif; font-weight:normal; } 
44--></style>
45<link rel="stylesheet" type="text/css" href="../cs.css">
46</head>
47<body>
48<div class="node">
49<a name="Alpha-Built-in-Functions"></a>
50<a name="Alpha-Built_002din-Functions"></a>
51<p>
52Next:&nbsp;<a rel="next" accesskey="n" href="ARM-iWMMXt-Built_002din-Functions.html#ARM-iWMMXt-Built_002din-Functions">ARM iWMMXt Built-in Functions</a>,
53Up:&nbsp;<a rel="up" accesskey="u" href="Target-Builtins.html#Target-Builtins">Target Builtins</a>
54<hr>
55</div>
56
57<h4 class="subsection">6.54.1 Alpha Built-in Functions</h4>
58
59<p>These built-in functions are available for the Alpha family of
60processors, depending on the command-line switches used.
61
62 <p>The following built-in functions are always available.  They
63all generate the machine instruction that is part of the name.
64
65<pre class="smallexample">     long __builtin_alpha_implver (void)
66     long __builtin_alpha_rpcc (void)
67     long __builtin_alpha_amask (long)
68     long __builtin_alpha_cmpbge (long, long)
69     long __builtin_alpha_extbl (long, long)
70     long __builtin_alpha_extwl (long, long)
71     long __builtin_alpha_extll (long, long)
72     long __builtin_alpha_extql (long, long)
73     long __builtin_alpha_extwh (long, long)
74     long __builtin_alpha_extlh (long, long)
75     long __builtin_alpha_extqh (long, long)
76     long __builtin_alpha_insbl (long, long)
77     long __builtin_alpha_inswl (long, long)
78     long __builtin_alpha_insll (long, long)
79     long __builtin_alpha_insql (long, long)
80     long __builtin_alpha_inswh (long, long)
81     long __builtin_alpha_inslh (long, long)
82     long __builtin_alpha_insqh (long, long)
83     long __builtin_alpha_mskbl (long, long)
84     long __builtin_alpha_mskwl (long, long)
85     long __builtin_alpha_mskll (long, long)
86     long __builtin_alpha_mskql (long, long)
87     long __builtin_alpha_mskwh (long, long)
88     long __builtin_alpha_msklh (long, long)
89     long __builtin_alpha_mskqh (long, long)
90     long __builtin_alpha_umulh (long, long)
91     long __builtin_alpha_zap (long, long)
92     long __builtin_alpha_zapnot (long, long)
93</pre>
94 <p>The following built-in functions are always with <samp><span class="option">-mmax</span></samp>
95or <samp><span class="option">-mcpu=</span><var>cpu</var></samp> where <var>cpu</var> is <code>pca56</code> or
96later.  They all generate the machine instruction that is part
97of the name.
98
99<pre class="smallexample">     long __builtin_alpha_pklb (long)
100     long __builtin_alpha_pkwb (long)
101     long __builtin_alpha_unpkbl (long)
102     long __builtin_alpha_unpkbw (long)
103     long __builtin_alpha_minub8 (long, long)
104     long __builtin_alpha_minsb8 (long, long)
105     long __builtin_alpha_minuw4 (long, long)
106     long __builtin_alpha_minsw4 (long, long)
107     long __builtin_alpha_maxub8 (long, long)
108     long __builtin_alpha_maxsb8 (long, long)
109     long __builtin_alpha_maxuw4 (long, long)
110     long __builtin_alpha_maxsw4 (long, long)
111     long __builtin_alpha_perr (long, long)
112</pre>
113 <p>The following built-in functions are always with <samp><span class="option">-mcix</span></samp>
114or <samp><span class="option">-mcpu=</span><var>cpu</var></samp> where <var>cpu</var> is <code>ev67</code> or
115later.  They all generate the machine instruction that is part
116of the name.
117
118<pre class="smallexample">     long __builtin_alpha_cttz (long)
119     long __builtin_alpha_ctlz (long)
120     long __builtin_alpha_ctpop (long)
121</pre>
122 <p>The following builtins are available on systems that use the OSF/1
123PALcode.  Normally they invoke the <code>rduniq</code> and <code>wruniq</code>
124PAL calls, but when invoked with <samp><span class="option">-mtls-kernel</span></samp>, they invoke
125<code>rdval</code> and <code>wrval</code>.
126
127<pre class="smallexample">     void *__builtin_thread_pointer (void)
128     void __builtin_set_thread_pointer (void *)
129</pre>
130 </body></html>
131
132