<html lang="en"> <head> <title>Insn Attributes - GNU Compiler Collection (GCC) Internals</title> <meta http-equiv="Content-Type" content="text/html"> <meta name="description" content="GNU Compiler Collection (GCC) Internals"> <meta name="generator" content="makeinfo 4.13"> <link title="Top" rel="start" href="index.html#Top"> <link rel="up" href="Machine-Desc.html#Machine-Desc" title="Machine Desc"> <link rel="prev" href="Peephole-Definitions.html#Peephole-Definitions" title="Peephole Definitions"> <link rel="next" href="Conditional-Execution.html#Conditional-Execution" title="Conditional Execution"> <link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage"> <!-- Copyright (C) 1988-2015 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 ``Funding Free Software'', the Front-Cover Texts being (a) (see below), and with the Back-Cover Texts being (b) (see below). A copy of the license is included in the section entitled ``GNU Free Documentation License''. (a) The FSF's Front-Cover Text is: A GNU Manual (b) The FSF's Back-Cover Text is: You have freedom to copy and modify this GNU Manual, like GNU software. Copies published by the Free Software Foundation raise funds for GNU development.--> <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="Insn-Attributes"></a> <p> Next: <a rel="next" accesskey="n" href="Conditional-Execution.html#Conditional-Execution">Conditional Execution</a>, Previous: <a rel="previous" accesskey="p" href="Peephole-Definitions.html#Peephole-Definitions">Peephole Definitions</a>, Up: <a rel="up" accesskey="u" href="Machine-Desc.html#Machine-Desc">Machine Desc</a> <hr> </div> <h3 class="section">16.19 Instruction Attributes</h3> <p><a name="index-insn-attributes-3719"></a><a name="index-instruction-attributes-3720"></a> In addition to describing the instruction supported by the target machine, the <samp><span class="file">md</span></samp> file also defines a group of <dfn>attributes</dfn> and a set of values for each. Every generated insn is assigned a value for each attribute. One possible attribute would be the effect that the insn has on the machine's condition code. This attribute can then be used by <code>NOTICE_UPDATE_CC</code> to track the condition codes. <ul class="menu"> <li><a accesskey="1" href="Defining-Attributes.html#Defining-Attributes">Defining Attributes</a>: Specifying attributes and their values. <li><a accesskey="2" href="Expressions.html#Expressions">Expressions</a>: Valid expressions for attribute values. <li><a accesskey="3" href="Tagging-Insns.html#Tagging-Insns">Tagging Insns</a>: Assigning attribute values to insns. <li><a accesskey="4" href="Attr-Example.html#Attr-Example">Attr Example</a>: An example of assigning attributes. <li><a accesskey="5" href="Insn-Lengths.html#Insn-Lengths">Insn Lengths</a>: Computing the length of insns. <li><a accesskey="6" href="Constant-Attributes.html#Constant-Attributes">Constant Attributes</a>: Defining attributes that are constant. <li><a accesskey="7" href="Mnemonic-Attribute.html#Mnemonic-Attribute">Mnemonic Attribute</a>: Obtain the instruction mnemonic as attribute value. <li><a accesskey="8" href="Delay-Slots.html#Delay-Slots">Delay Slots</a>: Defining delay slots required for a machine. <li><a accesskey="9" href="Processor-pipeline-description.html#Processor-pipeline-description">Processor pipeline description</a>: Specifying information for insn scheduling. </ul> </body></html>