diff options
author | Jan Beulich <jbeulich@suse.com> | 2022-09-30 10:13:39 +0200 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2022-09-30 10:13:39 +0200 |
commit | 7b94647ad00bb096348ea074fa2f19e1873eb0a7 (patch) | |
tree | 56bb9c85225573b14a704e6f7d9b6f01a1f27789 /opcodes | |
parent | 1cb0ab18ad24ddcedc57b40901153c36e97d6e2e (diff) | |
download | gdb-7b94647ad00bb096348ea074fa2f19e1873eb0a7.zip gdb-7b94647ad00bb096348ea074fa2f19e1873eb0a7.tar.gz gdb-7b94647ad00bb096348ea074fa2f19e1873eb0a7.tar.bz2 |
x86: improve match_template()'s diagnostics
At the example of
extractps $0, %xmm0, %xmm0
insertps $0, %xmm0, %eax
(both having respectively the same mistake of using the wrong kind of
destination register) it is easy to see that current behavior is far
from ideal: The former results in "unsupported instruction" for 32-bit
code simply because the 2nd template we have is a Cpu64 one. Instead we
should aim at emitting the "best" possible error, which will typically
be the one where we passed the largest number of checks. Generalize the
original "specific_error" approach by making it apply to the entire
matching loop, utilizing that line numbers increase as we pass further
checks.
Diffstat (limited to 'opcodes')
0 files changed, 0 insertions, 0 deletions