2
0
mirror of git://gcc.gnu.org/git/gcc.git synced 2025-04-09 19:11:14 +08:00

sync.md (atomic_compare_and_swap<dwi>_doubleword): Improve insn output code.

* config/i386/sync.md (atomic_compare_and_swap<dwi>_doubleword):
	Improve insn output code.

From-SVN: r190861
This commit is contained in:
Uros Bizjak 2012-09-02 13:08:33 +02:00
parent eaf23fc3d5
commit b418bc475d

@ -421,14 +421,13 @@
"TARGET_CMPXCHG<doublemodesuffix>B"
{
bool swap = REGNO (operands[5]) != BX_REG;
const char *xchg = "xchg{<imodesuffix>}\t%%<regprefix>bx, %5";
if (swap)
output_asm_insn ("xchg{<imodesuffix>}\t%%<regprefix>bx, %5", operands);
output_asm_insn (xchg, operands);
output_asm_insn ("lock{%;} %K7cmpxchg<doublemodesuffix>b\t%2", operands);
if (swap)
output_asm_insn ("xchg{<imodesuffix>}\t%%<regprefix>bx, %5", operands);
output_asm_insn (xchg, operands);
return "";
})