diff options
author | Tejas Belagod <tejas.belagod@arm.com> | 2021-04-09 12:29:32 +0100 |
---|---|---|
committer | Tamar Christina <tamar.christina@arm.com> | 2021-04-09 12:32:00 +0100 |
commit | dd17020328b4ebf45be26eed156fba3d269096f6 (patch) | |
tree | 7379b8370b03e1789cb7c12b3d0e0920f8c291a8 /gas/ecoff.c | |
parent | 52efda8266cb1f8ade0193f45801fdd6e42165ac (diff) | |
download | gdb-dd17020328b4ebf45be26eed156fba3d269096f6.zip gdb-dd17020328b4ebf45be26eed156fba3d269096f6.tar.gz gdb-dd17020328b4ebf45be26eed156fba3d269096f6.tar.bz2 |
AArch64: Fix Diagnostic messaging for LD/ST Exclusive.
A summary of what this patch set fixes:
For instructions
STXR w0,x2,[x0]
STLXR w0,x2,[x0]
The warning we emit currently is misleading:
Warning: unpredictable: identical transfer and status registers --`stlxr w0,x2,[x0]'
Warning: unpredictable: identical transfer and status registers --`stxr w0,x2,[x0]'
it ought to be:
Warning: unpredictable: identical base and status registers --`stlxr w0,x2,[x0]'
Warning: unpredictable: identical base and status registers --`stxr w0,x2,[x0]'
For instructions:
ldaxp x0,x0,[x0]
ldxp x0,x0,[x0]
The warning we emit is incorrect
Warning: unpredictable: identical transfer and status registers --`ldaxp x0,x0,[x0]'
Warning: unpredictable: identical transfer and status registers --`ldxp x0,x0,[x0]'
it ought to be:
Warning: unpredictable load of register pair -- `ldaxp x0,x0,[x0]'
Warning: unpredictable load of register pair -- `ldxp x0,x0,[x0]'
For instructions
stlxp w0, x2, x2, [x0]
stxp w0, x2, x2, [x0]
We don't emit any warning when it ought to be:
Warning: unpredictable: identical base and status registers --`stlxp w0,x2,x2,[x0]'
Warning: unpredictable: identical base and status registers --`stxp w0,x2,x2,[x0]'
gas/ChangeLog:
2021-04-09 Tejas Belagod <tejas.belagod@arm.com>
* config/tc-aarch64.c (warn_unpredictable_ldst): Clean-up diagnostic messages
for LD/ST Exclusive instructions.
* testsuite/gas/aarch64/diagnostic.s: Add a diagnostic test for STLXP.
* testsuite/gas/aarch64/diagnostic.l: Fix-up test after message clean-up.
Diffstat (limited to 'gas/ecoff.c')
0 files changed, 0 insertions, 0 deletions