Skip to content

Commit

Permalink
Most recent cxx-abi files.
Browse files Browse the repository at this point in the history
  • Loading branch information
ricardoanguiano committed Aug 2, 2012
1 parent 772880e commit eee299f
Show file tree
Hide file tree
Showing 33 changed files with 40,671 additions and 0 deletions.
Binary file added HP-exception-990818.pdf
Binary file not shown.
Binary file added Intel-exception-990818.ppt
Binary file not shown.
495 changes: 495 additions & 0 deletions Sun-RTTI-990812.html

Large diffs are not rendered by default.

2,378 changes: 2,378 additions & 0 deletions abi-eh.html

Large diffs are not rendered by default.

907 changes: 907 additions & 0 deletions abi-examples.html

Large diffs are not rendered by default.

3,736 changes: 3,736 additions & 0 deletions abi-layout.html

Large diffs are not rendered by default.

175 changes: 175 additions & 0 deletions abi-mangling.html
Original file line number Diff line number Diff line change
@@ -0,0 +1,175 @@
<HTML>

<HEAD>
<title>C++ ABI for IA-64: Mangling</title>

<link rel=stylesheet href=small-table.css type="text/css">
<link rel=stylesheet href=code.css type="text/css">

<hr>

<font size=6><i><b>
<p>
C++ ABI for IA-64: Mangling
</b></i></font>

<font size=-1>
<p>
<i>Revised 5 September 2000</i>

</center>

</HEAD>

<BODY>

<p><hr><p>

<table border=on>
<tr><th>class</th> <th colspan=2> ID </th> <th align=left> Meaning </th> </tr>
<tr><td>type</td> <td>a</td> <td></td> <td> builtin type signed char </td> </tr>
<tr><td>oper</td> <td>a</td> <td> a </td> <td> Operator && </td> </tr>
<tr><td>oper</td> <td>a</td> <td> d </td> <td> Operator & (unary) </td> </tr>
<tr><td>oper</td> <td>a</td> <td> n </td> <td> Operator & </td> </tr>
<tr><td>oper</td> <td>a</td> <td> N </td> <td> Operator &= </td> </tr>
<tr><td>oper</td> <td>a</td> <td> S </td> <td> Operator = </td> </tr>
<tr><td>type</td> <td>A</td> <td></td> <td> array type </td> </tr>
<tr><td>type</td> <td>b</td> <td></td> <td> builtin type bool </td> </tr>
<tr><td>type</td> <td>c</td> <td></td> <td> builtin type char </td> </tr>
<tr><td>oper</td> <td>c</td> <td> l </td> <td> Operator () </td> </tr>
<tr><td>oper</td> <td>c</td> <td> m </td> <td> Operator , </td> </tr>
<tr><td>oper</td> <td>c</td> <td> o </td> <td> Operator ~ </td> </tr>
<tr><td>oper</td> <td>c</td> <td> v </td> <td> Operator (cast) </td> </tr>
<tr><td>obj </td> <td>C</td> <td> 1 </td> <td>Complete object (in-charge) constructor</td> </tr>
<tr><td>obj </td> <td>C</td> <td> 2 </td> <td>Base object (not-in-charge) constructor</td> </tr>
<tr><td>obj </td> <td>C</td> <td> 3 </td> <td>Complete object (in-charge) allocating constructor</td> </tr>
<tr><td>type</td> <td>d</td> <td></td> <td> builtin type double </td> </tr>
<tr><td>oper</td> <td>d</td> <td> a </td> <td> Operator delete[] </td> </tr>
<tr><td>oper</td> <td>d</td> <td> e </td> <td> Operator * (unary) </td> </tr>
<tr><td>oper</td> <td>d</td> <td> l </td> <td> Operator delete </td> </tr>
<tr><td>oper</td> <td>d</td> <td> v </td> <td> Operator / </td> </tr>
<tr><td>oper</td> <td>d</td> <td> V </td> <td> Operator /= </td> </tr>
<tr><td>type</td> <td>D</td> <td> p </td> <td> pack expansion of (C++0x) </td> </tr>
<tr><td>type</td> <td>D</td> <td> t </td> <td> decltype of an id-expression or class member access (C++0x) </td> </tr>
<tr><td>type</td> <td>D</td> <td> T </td> <td> decltype of an expression (C++0x) </td> </tr>
<tr><td>obj </td> <td>D</td> <td> 0 </td> <td> Deleting destructor</td> </tr>
<tr><td>obj </td> <td>D</td> <td> 1 </td> <td> Complete object (in-charge) destructor</td> </tr>
<tr><td>obj </td> <td>D</td> <td> 2 </td> <td> Base object (not-in-charge) destructor</td> </tr>
<tr><td>oper</td> <td>e</td> <td> o </td> <td> Operator ^ </td> </tr>
<tr><td>oper</td> <td>e</td> <td> O </td> <td> Operator ^= </td> </tr>
<tr><td>oper</td> <td>e</td> <td> q </td> <td> Operator == </td> </tr>
<tr><td>type</td> <td>e</td> <td></td> <td> builtin type long double </td> </tr>
<tr><td>delim</td> <td>E</td> <td></td> <td> End of argument list </td> </tr>
<tr><td>type</td> <td>f</td> <td></td> <td> builtin type float </td> </tr>
<tr><td>obj </td> <td>F</td> <td></td> <td> function </td> </tr>
<tr><td>type</td> <td>g</td> <td></td> <td> builtin type __float128 </td> </tr>
<tr><td>oper</td> <td>g</td> <td> e </td> <td> Operator >= </td> </tr>
<tr><td>oper</td> <td>g</td> <td> t </td> <td> Operator > </td> </tr>
<tr><td>type</td> <td>G</td> <td></td> <td> imaginary type qualifier (C 2000) </td> </tr>
<tr><td>obj </td> <td>G</td> <td> V </td> <td> Sentry object for 1-time init </td> </tr>
<tr><td>type</td> <td>h</td> <td></td> <td> builtin type unsigned char </td> </tr>
<tr><td>type</td> <td>H</td> <td></td> <td> complex type qualifier (C 2000) </td> </tr>
<tr><td>type</td> <td>i</td> <td></td> <td> builtin type int </td> </tr>
<tr><td>oper</td> <td>i</td> <td> x </td> <td> Operator [] </td> </tr>
<tr><td>delim</td> <td>I</td> <td></td> <td> Template argument list </td> </tr>
<tr><td>type</td> <td>j</td> <td></td> <td> builtin type unsigned int </td> </tr>
<tr><td>type</td> <td>K</td> <td></td> <td> const qualifier </td> </tr>
<tr><td>type</td> <td>l</td> <td></td> <td> builtin type long </td> </tr>
<tr><td>oper</td> <td>l</td> <td> e </td> <td> Operator <= </td> </tr>
<tr><td>oper</td> <td>l</td> <td> s </td> <td> Operator << </td> </tr>
<tr><td>oper</td> <td>l</td> <td> S </td> <td> Operator <<= </td> </tr>
<tr><td>oper</td> <td>l</td> <td> t </td> <td> Operator < </td> </tr>
<tr><td>obj </td> <td>L</td> <td></td> <td> literal, external name prefix </td> </tr>
<tr><td>type</td> <td>m</td> <td></td> <td> builtin type unsigned long </td> </tr>
<tr><td>oper</td> <td>m</td> <td> i </td> <td> Operator - </td> </tr>
<tr><td>oper</td> <td>m</td> <td> I </td> <td> Operator -= </td> </tr>
<tr><td>oper</td> <td>m</td> <td> l </td> <td> Operator * </td> </tr>
<tr><td>oper</td> <td>m</td> <td> L </td> <td> Operator *= </td> </tr>
<tr><td>oper</td> <td>m</td> <td> m </td> <td> Operator -- </td> </tr>
<tr><td>type</td> <td>M</td> <td></td> <td> pointer to member type </td> </tr>
<tr><td>type</td> <td>n</td> <td></td> <td> builtin type __int128 </td> </tr>
<tr><td>oper</td> <td>n</td> <td> a </td> <td> Operator new[] </td> </tr>
<tr><td>oper</td> <td>n</td> <td> e </td> <td> Operator != </td> </tr>
<tr><td>oper</td> <td>n</td> <td> g </td> <td> Operator - (unary) </td> </tr>
<tr><td>oper</td> <td>n</td> <td> t </td> <td> Operator ! </td> </tr>
<tr><td>oper</td> <td>n</td> <td> w </td> <td> Operator new </td> </tr>
<tr><td>delim</td> <td>N</td> <td></td> <td> dependent/qualifier name list </td> </tr>
<tr><td>type</td> <td>o</td> <td></td> <td> builtin type unsigned __int128 </td> </tr>
<tr><td>oper</td> <td>o</td> <td> o </td> <td> Operator || </td> </tr>
<tr><td>oper</td> <td>o</td> <td> r </td> <td> Operator | </td> </tr>
<tr><td>oper</td> <td>o</td> <td> R </td> <td> Operator |= </td> </tr>
<tr><td>type</td> <td>O</td> <td></td> <td> rvalue reference type (C++0x) </td> </tr>
<tr><td>oper</td> <td>p</td> <td> l </td> <td> Operator + </td> </tr>
<tr><td>oper</td> <td>p</td> <td> L </td> <td> Operator += </td> </tr>
<tr><td>oper</td> <td>p</td> <td> m </td> <td> Operator ->* </td> </tr>
<tr><td>oper</td> <td>p</td> <td> p </td> <td> Operator ++ </td> </tr>
<tr><td>oper</td> <td>p</td> <td> s </td> <td> Operator + (unary) </td> </tr>
<tr><td>oper</td> <td>p</td> <td> t </td> <td> Operator -> </td> </tr>
<tr><td>type</td> <td>P</td> <td></td> <td> pointer type </td> </tr>
<tr><td>oper</td> <td>q</td> <td> u </td> <td> Operator ? </td> </tr>
<tr><td>type</td> <td>r</td> <td></td> <td> restrict qualifier (C 2000) </td> </tr>
<tr><td>oper</td> <td>r</td> <td> m </td> <td> Operator % </td> </tr>
<tr><td>oper</td> <td>r</td> <td> M </td> <td> Operator %= </td> </tr>
<tr><td>oper</td> <td>r</td> <td> s </td> <td> Operator >> </td> </tr>
<tr><td>oper</td> <td>r</td> <td> S </td> <td> Operator >>= </td> </tr>
<tr><td>type</td> <td>R</td> <td></td> <td> reference type </td> </tr>
<tr><td>type</td> <td>s</td> <td></td> <td> builtin type short </td> </tr>
<tr><td>name</td> <td>s</td> <td></td> <td> local string prefix </td> </tr>
<tr><td>oper</td> <td>s</td> <td> p </td> <td> Expression pack expansion operator</td> </tr>
<tr><td>oper</td> <td>s</td> <td> r </td> <td> Scope resolution operator </td> </tr>
<tr><td>oper</td> <td>s</td> <td> t </td> <td> Operator sizeof (a type)</td> </tr>
<tr><td>oper</td> <td>s</td> <td> z </td> <td> Operator sizeof (an expression)</td> </tr>
<tr><td>oper</td> <td>s</td> <td> Z </td> <td> Operator sizeof (a pack expansion)</td> </tr>
<tr><td>abbr</td> <td>S</td> <td> _ </td> <td> substituted name </td> </tr>
<tr><td>abbr</td> <td>S</td> <td> &lt;digit></td>
<td> substituted name (repeated) </td> </tr>
<tr><td>abbr</td> <td>S</td> <td> &lt;upper></td>
<td> substituted name (repeated) </td> </tr>
<tr><td>abbr</td> <td>S</td> <td> &lt;lower></td>
<td> substituted name (standard abbreviation) </td> </tr>
<tr><td>type</td> <td>S</td> <td> a </td>
<td> abbreviation ::std::allocator </td> </tr>
<tr><td>type</td> <td>S</td> <td> b </td>
<td> abbreviation ::std::basic_string </td> </tr>
<tr><td>type</td> <td>S</td> <td> d </td>
<td> abbreviation ::std::basic_iostream&lt;char, std::char_traits&lt;char> > </td> </tr>
<tr><td>type</td> <td>S</td> <td> i </td>
<td> abbreviation ::std::basic_istream&lt;char, std::char_traits&lt;char> > </td> </tr>
<tr><td>type</td> <td>S</td> <td> o </td>
<td> abbreviation ::std::basic_ostream&lt;char, std::char_traits&lt;char> > </td> </tr>
<tr><td>type</td> <td>S</td> <td> s </td>
<td> abbreviation ::std::basic_string&lt;char, ::std::char_traits&lt;char>,
::std::allocator&lt;char> ></td> </tr>
<tr><td>abbr</td> <td>S</td> <td> t </td> <td> abbreviation ::std:: </td> </tr>
<tr><td>type</td> <td>t</td> <td></td> <td> builtin type unsigned short </td> </tr>
<tr><td>abbr</td> <td>T</td> <td> _ </td> <td> template parameter </td> </tr>
<tr><td>abbr</td> <td>T</td> <td> &lt;digit></td>
<td> template parameter (repeated) </td> </tr>
<tr><td>obj </td> <td>T</td> <td> c </td>
<td> virtual function covariant override thunk </td> </tr>
<tr><td>obj </td> <td>T</td> <td> D </td> <td> typeinfo common proxy </td> </tr>
<tr><td>obj </td> <td>T</td> <td> h </td> <td> virtual function non-virtual override thunk </td> </tr>
<tr><td>obj </td> <td>T</td> <td> I </td> <td> typeinfo structure </td> </tr>
<tr><td>obj </td> <td>T</td> <td> S </td> <td> RTTI name (NTBS) </td> </tr>
<tr><td>obj </td> <td>T</td> <td> T </td> <td> VTT table </td> </tr>
<tr><td>obj </td> <td>T</td> <td> v </td> <td> virtual function virtual override thunk </td> </tr>
<tr><td>obj </td> <td>T</td> <td> V </td> <td> virtual table </td> </tr>
<tr><td>type</td> <td>u</td> <td></td> <td> vendor extended builtin type </td> </tr>
<tr><td>type</td> <td>U</td> <td></td> <td> vendor extended type qualifier </td> </tr>
<tr><td>type</td> <td>v</td> <td></td> <td> builtin type void </td> </tr>
<tr><td>oper</td> <td>v</td> <td> &lt;digit> </td> <td> vendor extended operator </td> </tr>
<tr><td>type</td> <td>V</td> <td></td> <td> volatile qualifier </td> </tr>
<tr><td>type</td> <td>w</td> <td></td> <td> builtin type wchar_t </td> </tr>
<tr><td>type</td> <td>x</td> <td></td> <td> builtin type long long </td> </tr>
<tr><td>delim</td> <td>X</td> <td></td> <td> expression prefix </td> </tr>
<tr><td>type</td> <td>y</td> <td></td> <td> builtin type unsigned long long </td> </tr>
<tr><td>type</td> <td>Y</td> <td></td> <td> extern "C" type qualifier </td> </tr>
<tr><td>type</td> <td>z</td> <td></td> <td> ellipsis </td> </tr>
<tr><td>obj </td> <td>Z</td> <td></td> <td> local name prefix </td> </tr>
<tr><td>obj </td> <td>&lt;digit></td><td></td> <td> name (length followed by name) </td> </tr>

</table>
</ol>

</BODY>
</HTML>
Loading

0 comments on commit eee299f

Please sign in to comment.