<html lang="en">
<head>
<title>Predefined Target Types - Debugging with GDB</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Debugging with GDB">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="Target-Descriptions.html#Target-Descriptions" title="Target Descriptions">
<link rel="prev" href="Target-Description-Format.html#Target-Description-Format" title="Target Description Format">
<link rel="next" href="Enum-Target-Types.html#Enum-Target-Types" title="Enum Target Types">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
Copyright (C) 1988-2019 Free Software Foundation, Inc.

Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
any later version published by the Free Software Foundation; with the
Invariant Sections being ``Free Software'' and ``Free Software Needs
Free Documentation'', with the Front-Cover Texts being ``A GNU Manual,''
and with the Back-Cover Texts as in (a) below.

(a) The FSF's Back-Cover Text is: ``You are free to copy and modify
this GNU Manual.  Buying copies from GNU Press supports the FSF in
developing GNU and promoting software freedom.''
-->
<meta http-equiv="Content-Style-Type" content="text/css">
<style type="text/css"><!--
  pre.display { font-family:inherit }
  pre.format  { font-family:inherit }
  pre.smalldisplay { font-family:inherit; font-size:smaller }
  pre.smallformat  { font-family:inherit; font-size:smaller }
  pre.smallexample { font-size:smaller }
  pre.smalllisp    { font-size:smaller }
  span.sc    { font-variant:small-caps }
  span.roman { font-family:serif; font-weight:normal; } 
  span.sansserif { font-family:sans-serif; font-weight:normal; } 
--></style>
</head>
<body>
<div class="node">
<a name="Predefined-Target-Types"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Enum-Target-Types.html#Enum-Target-Types">Enum Target Types</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="Target-Description-Format.html#Target-Description-Format">Target Description Format</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Target-Descriptions.html#Target-Descriptions">Target Descriptions</a>
<hr>
</div>

<h3 class="section">G.3 Predefined Target Types</h3>

<p><a name="index-target-descriptions_002c-predefined-types-3655"></a>
Type definitions in the self-description can build up composite types
from basic building blocks, but can not define fundamental types.  Instead,
standard identifiers are provided by <span class="sc">gdb</span> for the fundamental
types.  The currently supported types are:

     <dl>
<dt><code>bool</code><dd>Boolean type, occupying a single bit.

     <br><dt><code>int8</code><dt><code>int16</code><dt><code>int24</code><dt><code>int32</code><dt><code>int64</code><dt><code>int128</code><dd>Signed integer types holding the specified number of bits.

     <br><dt><code>uint8</code><dt><code>uint16</code><dt><code>uint24</code><dt><code>uint32</code><dt><code>uint64</code><dt><code>uint128</code><dd>Unsigned integer types holding the specified number of bits.

     <br><dt><code>code_ptr</code><dt><code>data_ptr</code><dd>Pointers to unspecified code and data.  The program counter and
any dedicated return address register may be marked as code
pointers; printing a code pointer converts it into a symbolic
address.  The stack pointer and any dedicated address registers
may be marked as data pointers.

     <br><dt><code>ieee_single</code><dd>Single precision IEEE floating point.

     <br><dt><code>ieee_double</code><dd>Double precision IEEE floating point.

     <br><dt><code>arm_fpa_ext</code><dd>The 12-byte extended precision format used by ARM FPA registers.

     <br><dt><code>i387_ext</code><dd>The 10-byte extended precision format used by x87 registers.

     <br><dt><code>i386_eflags</code><dd>32bit <span class="sc">eflags</span> register used by x86.

     <br><dt><code>i386_mxcsr</code><dd>32bit <span class="sc">mxcsr</span> register used by x86.

   </dl>

   </body></html>

