<html lang="en">
<head>
<title>Fill - 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="Pseudo-Ops.html#Pseudo-Ops" title="Pseudo Ops">
<link rel="prev" href="File.html#File" title="File">
<link rel="next" href="Float.html#Float" title="Float">
<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="Fill"></a>
<p>
Next:&nbsp;<a rel="next" accesskey="n" href="Float.html#Float">Float</a>,
Previous:&nbsp;<a rel="previous" accesskey="p" href="File.html#File">File</a>,
Up:&nbsp;<a rel="up" accesskey="u" href="Pseudo-Ops.html#Pseudo-Ops">Pseudo Ops</a>
<hr>
</div>

<h3 class="section">7.52 <code>.fill </code><var>repeat</var><code> , </code><var>size</var><code> , </code><var>value</var></h3>

<p><a name="index-g_t_0040code_007bfill_007d-directive-331"></a><a name="index-writing-patterns-in-memory-332"></a><a name="index-patterns_002c-writing-in-memory-333"></a><var>repeat</var>, <var>size</var> and <var>value</var> are absolute expressions. 
This emits <var>repeat</var> copies of <var>size</var> bytes.  <var>Repeat</var>
may be zero or more.  <var>Size</var> may be zero or more, but if it is
more than 8, then it is deemed to have the value 8, compatible with
other people's assemblers.  The contents of each <var>repeat</var> bytes
is taken from an 8-byte number.  The highest order 4 bytes are
zero.  The lowest order 4 bytes are <var>value</var> rendered in the
byte-order of an integer on the computer <samp><span class="command">as</span></samp> is assembling for. 
Each <var>size</var> bytes in a repetition is taken from the lowest order
<var>size</var> bytes of this number.  Again, this bizarre behavior is
compatible with other people's assemblers.

   <p><var>size</var> and <var>value</var> are optional. 
If the second comma and <var>value</var> are absent, <var>value</var> is
assumed zero.  If the first comma and following tokens are absent,
<var>size</var> is assumed to be 1.

   </body></html>

