| @c Copyright (C) 2023-2024 Free Software Foundation, Inc. |
| @c Contributed by Kalray SA. |
| @c This is part of the GAS manual. |
| @c For copying conditions, see the file as.texinfo. |
| @c man end |
| |
| @ifset GENERIC |
| @page |
| @node KVX-Dependent |
| @chapter KVX Dependent Features |
| @end ifset |
| |
| Labels followed by `::' are extern symbols. |
| |
| @ifclear GENERIC |
| @node Machine Dependencies |
| @chapter KVX Dependent Features |
| @end ifclear |
| |
| @cindex KVX support |
| @menu |
| * KVX Options:: Options |
| * KVX Directives:: KVX Machine Directives |
| @end menu |
| |
| @node KVX Options |
| @section Options |
| @cindex KVX Options |
| @cindex options for KVX |
| |
| @c man begin OPTIONS |
| @table @gcctabopt |
| |
| @cindex @samp{--dump-insn} option, KVX |
| @item --dump-insn |
| Dump the full list of instructions. |
| |
| @cindex @samp{-march} option, KVX |
| @item -march= |
| The assembler supports the following architectures: kv3-1, kv3-2. |
| |
| @cindex @samp{--check-resources} option, KVX |
| @item --check-resources |
| Check that each bundle does not use more resources than available. This is the |
| default. |
| |
| @cindex @samp{--no-check-resources} option, KVX |
| @item --no-check-resources |
| Do not check that each bundle does not use more resources than available. |
| |
| @cindex @samp{--generate-illegal-code} option, KVX |
| @item --generate-illegal-code |
| For debugging purposes only. In order to properly work, the bundle is sorted |
| with respect to the issues it uses. If this option is turned on the assembler |
| will not sort the bundle instructions and illegal bundles might be formed unless |
| they were properly sorted by hand. |
| |
| @cindex @samp{--dump-table} option, KVX |
| @item --dump-table |
| Dump the table of opcodes. |
| |
| @cindex @samp{--mpic} option, KVX |
| @cindex @samp{--mPIC} option, KVX |
| @item --mpic | --mPIC |
| Generate position independent code. |
| |
| @cindex @samp{--mnopic} option, KVX |
| @item --mnopic |
| Generate position dependent code. |
| |
| @cindex @samp{-m32} option, KVX |
| @item -m32 |
| Generate 32-bits code. |
| |
| @cindex @samp{--all-sfr} option, KVX |
| @item --all-sfr |
| This switch enables the register class "system register". This register |
| class is used when performing system validation and allows the full class of |
| system registers to be used even on instructions that are only valid with some |
| specific system registers. |
| |
| @cindex @samp{--diagnostics} option, KVX |
| @item --diagnostics |
| Print multi-line errors. This is the default. |
| |
| @cindex @samp{--no-diagnostics} option, KVX |
| @item --no-diagnostics |
| Print succinct diagnostics on one line. |
| |
| @end table |
| @c man end |
| |
| @node KVX Directives |
| @section KVX Machine Directives |
| |
| @cindex machine directives, AArch64 |
| @cindex AArch64 machine directives |
| @table @code |
| |
| @cindex @code{.align} directive, KVX |
| @item .align ALIGNMENT |
| Pad with NOPs until the next boundary with the required ALIGNMENT. |
| |
| @cindex @code{.dword} directive, KVX |
| @item .dword |
| Declare a double-word-sized (8 bytes) constant. |
| |
| @cindex @code{.endp} directive, KVX |
| @item .endp [PROC] |
| This directive marks the end of the procedure PROC. The name of the procedure |
| is always ignored (it is only here as a visual indicator). |
| |
| @smallexample |
| .proc NAME |
| ... |
| .endp NAME |
| @end smallexample |
| |
| is equivalent to the more traditional |
| |
| @smallexample |
| .type NAME, @@function |
| ... |
| .size NAME,.-NAME |
| @end smallexample |
| |
| @cindex @code{.file} directive, KVX |
| @item .file |
| This directive is only supported when producing ELF files. |
| @pxref{File,,@code{.file}} for details. |
| |
| @cindex @code{.loc} directive, KVX |
| @item .loc FILENO LINENO |
| This directive is only supported when producing ELF files. |
| @pxref{Line,,@code{.line}} for details. |
| |
| @cindex @code{.proc} directive, KVX |
| @item .proc PROC |
| This directive marks the start of procedure, the name of the procedure PROC is |
| mandatory and all @code{.proc} directive should be matched by exactly one |
| @code{.endp} directive. |
| |
| @cindex @code{.word} directive, KVX |
| @item .word |
| Declare a word-sized (4 bytes) constant. |
| |
| @end table |