aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gas/config/tc-i386.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/gas/config/tc-i386.c b/gas/config/tc-i386.c
index 9674ec4..dd12a0e 100644
--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -9632,7 +9632,12 @@ output_insn (void)
{
/* Encode lfence, mfence, and sfence as
f0 83 04 24 00 lock addl $0x0, (%{re}sp). */
- if (now_seg != absolute_section)
+ if (flag_code == CODE_16BIT)
+ as_bad (_("Cannot convert `%s' in 16-bit mode"), i.tm.name);
+ else if (omit_lock_prefix)
+ as_bad (_("Cannot convert `%s' with `-momit-lock-prefix=yes' in effect"),
+ i.tm.name);
+ else if (now_seg != absolute_section)
{
offsetT val = 0x240483f0ULL;