diff options
author | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2023-12-04 17:03:00 +0100 |
---|---|---|
committer | Ulrich Weigand <ulrich.weigand@de.ibm.com> | 2023-12-04 17:03:00 +0100 |
commit | 901e484fdaba2be4eacbaee4fc9e05df8d5b783b (patch) | |
tree | fb85fcbb5fec845f2672432fa1f2bdf7825bce92 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 9d27139293890a18b903c62f2c43954cc2bc302d (diff) | |
download | llvm-901e484fdaba2be4eacbaee4fc9e05df8d5b783b.zip llvm-901e484fdaba2be4eacbaee4fc9e05df8d5b783b.tar.gz llvm-901e484fdaba2be4eacbaee4fc9e05df8d5b783b.tar.bz2 |
[SystemZ] Handle index-only addresses in (dis)assembler
Most addresses in SystemZ instructions take two registers,
an index register and a base register. However, either of
those can be omitted. If there is just a single register,
this usually is taken as the base register - however, there
are certain rare cases where you specifically want to use
an index register but no base register. This is currently
not handled consistently by the assembler / disassembler.
Fix this by
- always emitting a dummy 0 as base register for index-
only addresses
- correctly handle dummy 0 as indicating no base register
when parsing an address
This is compatible with current GNU binutils behavior.
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions