blob: 699dcdf7ffd7fae3c83c802c5a1d52a425522f42 [file] [log] [blame]
<html lang="en">
<head>
<title>MIPS option stack - Using as</title>
<meta http-equiv="Content-Type" content="text/html">
<meta name="description" content="Using as">
<meta name="generator" content="makeinfo 4.13">
<link title="Top" rel="start" href="index.html#Top">
<link rel="up" href="MIPS_002dDependent.html#MIPS_002dDependent" title="MIPS-Dependent">
<link rel="prev" href="MIPS-insn.html#MIPS-insn" title="MIPS insn">
<link rel="next" href="MIPS-ASE-instruction-generation-overrides.html#MIPS-ASE-instruction-generation-overrides" title="MIPS ASE instruction generation overrides">
<link href="http://www.gnu.org/software/texinfo/" rel="generator-home" title="Texinfo Homepage">
<!--
This file documents the GNU Assembler "as".
Copyright (C) 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999,
2000, 2001, 2002, 2006, 2007, 2008, 2009, 2010 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 no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts. A copy of the license is included in the
section entitled ``GNU Free Documentation License''.
-->
<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>
<link rel="stylesheet" type="text/css" href="../cs.css">
</head>
<body>
<div class="node">
<a name="MIPS-option-stack"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="MIPS-ASE-instruction-generation-overrides.html#MIPS-ASE-instruction-generation-overrides">MIPS ASE instruction generation overrides</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="MIPS-insn.html#MIPS-insn">MIPS insn</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="MIPS_002dDependent.html#MIPS_002dDependent">MIPS-Dependent</a>
<hr>
</div>
<h4 class="subsection">9.24.8 Directives to save and restore options</h4>
<p><a name="index-MIPS-option-stack-1281"></a><a name="index-g_t_0040code_007b_002eset-push_007d-1282"></a><a name="index-g_t_0040code_007b_002eset-pop_007d-1283"></a>The directives <code>.set push</code> and <code>.set pop</code> may be used to save
and restore the current settings for all the options which are
controlled by <code>.set</code>. The <code>.set push</code> directive saves the
current settings on a stack. The <code>.set pop</code> directive pops the
stack and restores the settings.
<p>These directives can be useful inside an macro which must change an
option such as the ISA level or instruction reordering but does not want
to change the state of the code which invoked the macro.
<p>Traditional <span class="sc">mips</span> assemblers do not support these directives.
</body></html>