[Patch, Gas, AArch64][2/2] Fix Diagnostic messaging for LD/ST Exclusive.
Tejas Belagod
Tejas.Belagod@arm.com
Mon Mar 15 13:01:02 GMT 2021
Hi,
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:
t.s:9: Warning: unpredictable: identical transfer and status registers --`stlxr w0,x2,[x0]'
t.s:10: Warning: unpredictable: identical transfer and status registers --`stxr w0,x2,[x0]'
it ought to be:
t.s:9: Warning: unpredictable: identical base and status registers --`stlxr w0,x2,[x0]'
t.s:10: 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
t.s:11: Warning: unpredictable: identical transfer and status registers --`ldaxp x0,x0,[x0]'
t.s:12: 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:
t.s:13: Warning: unpredictable: identical base and status registers --`stlxp w0,x2,x2,[x0]'
t.s:14: Warning: unpredictable: identical base and status registers --`stxp w0,x2,x2,[x0]'
Tested on master binutils with make check. OK for master?
Thanks,
Tejas.
gas/ChangeLog:
2021-03-11 Tejas Belagod <tejas.belagod@arm.com>
* config/tc-aarch64.c (warn_unpredictable_ldst): Clean-up diagnostic messages
for LD/ST Exclusive instructions.
gas/testsuite/ChangeLog:
2021-03-11 Tejas Belagod <tejas.belagod@arm.com>
* gas/aarch64/diagnostic.s: Add a diagnostic test for STLXP.
* gas/aarch64/diagnostic.l: Fix-up test after message clean-up.
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: diag.txt
URL: <https://sourceware.org/pipermail/binutils/attachments/20210315/84279cbf/attachment-0001.txt>
More information about the Binutils
mailing list