You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

115 line
5.7KB

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
  2. <html>
  3. <!-- This file documents the GNU Assembler "as".
  4. Copyright (C) 1991-2020 Free Software Foundation, Inc.
  5. Permission is granted to copy, distribute and/or modify this document
  6. under the terms of the GNU Free Documentation License, Version 1.3
  7. or any later version published by the Free Software Foundation;
  8. with no Invariant Sections, with no Front-Cover Texts, and with no
  9. Back-Cover Texts. A copy of the license is included in the
  10. section entitled "GNU Free Documentation License".
  11. -->
  12. <!-- Created by GNU Texinfo 6.5, http://www.gnu.org/software/texinfo/ -->
  13. <head>
  14. <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  15. <title>Balign (Using as)</title>
  16. <meta name="description" content="Balign (Using as)">
  17. <meta name="keywords" content="Balign (Using as)">
  18. <meta name="resource-type" content="document">
  19. <meta name="distribution" content="global">
  20. <meta name="Generator" content="makeinfo">
  21. <link href="index.html#Top" rel="start" title="Top">
  22. <link href="AS-Index.html#AS-Index" rel="index" title="AS Index">
  23. <link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
  24. <link href="Pseudo-Ops.html#Pseudo-Ops" rel="up" title="Pseudo Ops">
  25. <link href="Bundle-directives.html#Bundle-directives" rel="next" title="Bundle directives">
  26. <link href="Asciz.html#Asciz" rel="prev" title="Asciz">
  27. <style type="text/css">
  28. <!--
  29. a.summary-letter {text-decoration: none}
  30. blockquote.indentedblock {margin-right: 0em}
  31. blockquote.smallindentedblock {margin-right: 0em; font-size: smaller}
  32. blockquote.smallquotation {font-size: smaller}
  33. div.display {margin-left: 3.2em}
  34. div.example {margin-left: 3.2em}
  35. div.lisp {margin-left: 3.2em}
  36. div.smalldisplay {margin-left: 3.2em}
  37. div.smallexample {margin-left: 3.2em}
  38. div.smalllisp {margin-left: 3.2em}
  39. kbd {font-style: oblique}
  40. pre.display {font-family: inherit}
  41. pre.format {font-family: inherit}
  42. pre.menu-comment {font-family: serif}
  43. pre.menu-preformatted {font-family: serif}
  44. pre.smalldisplay {font-family: inherit; font-size: smaller}
  45. pre.smallexample {font-size: smaller}
  46. pre.smallformat {font-family: inherit; font-size: smaller}
  47. pre.smalllisp {font-size: smaller}
  48. span.nolinebreak {white-space: nowrap}
  49. span.roman {font-family: initial; font-weight: normal}
  50. span.sansserif {font-family: sans-serif; font-weight: normal}
  51. ul.no-bullet {list-style: none}
  52. -->
  53. </style>
  54. </head>
  55. <body lang="en">
  56. <a name="Balign"></a>
  57. <div class="header">
  58. <p>
  59. Next: <a href="Bundle-directives.html#Bundle-directives" accesskey="n" rel="next">Bundle directives</a>, Previous: <a href="Asciz.html#Asciz" accesskey="p" rel="prev">Asciz</a>, Up: <a href="Pseudo-Ops.html#Pseudo-Ops" accesskey="u" rel="up">Pseudo Ops</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
  60. </div>
  61. <hr>
  62. <a name="g_t_002ebalign_005bwl_005d-_005babs_002dexpr_005b_002c-abs_002dexpr_005b_002c-abs_002dexpr_005d_005d_005d"></a>
  63. <h3 class="section">7.7 <code>.balign[wl] [<var>abs-expr</var>[, <var>abs-expr</var>[, <var>abs-expr</var>]]]</code></h3>
  64. <a name="index-padding-the-location-counter-given-number-of-bytes"></a>
  65. <a name="index-balign-directive"></a>
  66. <p>Pad the location counter (in the current subsection) to a particular
  67. storage boundary. The first expression (which must be absolute) is the
  68. alignment request in bytes. For example &lsquo;<samp>.balign 8</samp>&rsquo; advances
  69. the location counter until it is a multiple of 8. If the location counter
  70. is already a multiple of 8, no change is needed. If the expression is omitted
  71. then a default value of 0 is used, effectively disabling alignment requirements.
  72. </p>
  73. <p>The second expression (also absolute) gives the fill value to be stored in the
  74. padding bytes. It (and the comma) may be omitted. If it is omitted, the
  75. padding bytes are normally zero. However, on most systems, if the section is
  76. marked as containing code and the fill value is omitted, the space is filled
  77. with no-op instructions.
  78. </p>
  79. <p>The third expression is also absolute, and is also optional. If it is present,
  80. it is the maximum number of bytes that should be skipped by this alignment
  81. directive. If doing the alignment would require skipping more bytes than the
  82. specified maximum, then the alignment is not done at all. You can omit the
  83. fill value (the second argument) entirely by simply using two commas after the
  84. required alignment; this can be useful if you want the alignment to be filled
  85. with no-op instructions when appropriate.
  86. </p>
  87. <a name="index-balignw-directive"></a>
  88. <a name="index-balignl-directive"></a>
  89. <p>The <code>.balignw</code> and <code>.balignl</code> directives are variants of the
  90. <code>.balign</code> directive. The <code>.balignw</code> directive treats the fill
  91. pattern as a two byte word value. The <code>.balignl</code> directives treats the
  92. fill pattern as a four byte longword value. For example, <code>.balignw
  93. 4,0x368d</code> will align to a multiple of 4. If it skips two bytes, they will be
  94. filled in with the value 0x368d (the exact placement of the bytes depends upon
  95. the endianness of the processor). If it skips 1 or 3 bytes, the fill value is
  96. undefined.
  97. </p>
  98. <hr>
  99. <div class="header">
  100. <p>
  101. Next: <a href="Bundle-directives.html#Bundle-directives" accesskey="n" rel="next">Bundle directives</a>, Previous: <a href="Asciz.html#Asciz" accesskey="p" rel="prev">Asciz</a>, Up: <a href="Pseudo-Ops.html#Pseudo-Ops" accesskey="u" rel="up">Pseudo Ops</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="AS-Index.html#AS-Index" title="Index" rel="index">Index</a>]</p>
  102. </div>
  103. </body>
  104. </html>