aboutsummaryrefslogtreecommitdiff
path: root/gas/write.c
diff options
context:
space:
mode:
authorNick Clifton <nickc@redhat.com>2020-09-14 16:14:24 +0100
committerNick Clifton <nickc@redhat.com>2020-09-14 16:14:24 +0100
commitb1766e7ce88647c8002928aeb8a9f04048c494ae (patch)
tree33c8ecdce1a894dfba913c58e0b484991383be8c /gas/write.c
parent04f5bab24ba93562d5d14b6f26efbd407dbccaaf (diff)
downloadfsf-binutils-gdb-b1766e7ce88647c8002928aeb8a9f04048c494ae.zip
fsf-binutils-gdb-b1766e7ce88647c8002928aeb8a9f04048c494ae.tar.gz
fsf-binutils-gdb-b1766e7ce88647c8002928aeb8a9f04048c494ae.tar.bz2
Add a new ".nop" directive to the assembler to allow the creation of no-op instructions in an architeture neutral manner.
* read.c (s_nop): New function. Handles the .nop directive. (potable): Add entry for "nop". (s_nops): Code tidy. * read.h (s_nop): Add prototype. * config/tc-bpf.h (md_single_noop_insn): Define. * config/tc-mmix.h (md_single_noop_insn): Define. * config/tc-or1k.h (md_single_noop_insn): Define. * config/tc-s12z.c (md_assemble): Preserve the input line pointer, rather than corrupting it. * write.c (relax_segment): Update error message regarding non-absolute values passed to .fill and .nops. * NEWS: Mention the new directive. * doc/as.texi: Document the new directive. * doc/internals.texi: Document the new internal macros used to implement the new directive. * testsuite/gas/all/nop.s: New test. * testsuite/gas/all/nop.d: New test control file. * testsuite/gas/all/gas.exp: Run the new test. * testsuite/gas/elf/dwarf-5-nop-for-line-table.s: New test. * testsuite/gas/elf/dwarf-5-nop-for-line-table.d: New test control file. * testsuite/gas/elf/elf.exp: Run the new test. * testsuite/gas/i386/space1.l: Adjust expected output.
Diffstat (limited to 'gas/write.c')
-rw-r--r--gas/write.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/gas/write.c b/gas/write.c
index 0b43063..054f279 100644
--- a/gas/write.c
+++ b/gas/write.c
@@ -3017,7 +3017,7 @@ relax_segment (struct frag *segment_frag_root, segT segment, int pass)
|| ! S_IS_DEFINED (symbolP))
{
as_bad_where (fragP->fr_file, fragP->fr_line,
- _(".space specifies non-absolute value"));
+ _(".space, .nops or .fill specifies non-absolute value"));
/* Prevent repeat of this error message. */
fragP->fr_symbol = 0;
}