mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-26 13:56:22 +08:00
x86: -mfence-as-lock-add=yes doesn't work for 16-bit mode
Rather than trying to fix this (which would require making an assumption on the upper half of %esp being zero), simply issue an error. While at it, since the generated code is in conflict with -momit-lock-prefix=yes, issue an error in that case as well.
This commit is contained in:
@ -9632,7 +9632,12 @@ output_insn (void)
|
|||||||
{
|
{
|
||||||
/* Encode lfence, mfence, and sfence as
|
/* Encode lfence, mfence, and sfence as
|
||||||
f0 83 04 24 00 lock addl $0x0, (%{re}sp). */
|
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;
|
offsetT val = 0x240483f0ULL;
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user