When the bit is <= 32, we have to use the W register variant for TB(N)Z.
This is because of the way the instruction is encoded.
Paths
| Differential D73660
[AArch64][GlobalISel] Fix TBNZ/TBZ opcode selection ClosedPublic Authored by paquette on Jan 29 2020, 12:54 PM.
Details
Summary When the bit is <= 32, we have to use the W register variant for TB(N)Z. This is because of the way the instruction is encoded.
Diff Detail Event TimelineHerald added subscribers: Petar.Avramovic, hiraditya, kristof.beyls, rovka. · View Herald Transcript This revision is now accepted and ready to land.Jan 29 2020, 1:00 PM Closed by commit rG050cd443ca7c: [AArch64][GlobalISel] Fix TBNZ/TBZ opcode selection (authored by paquette). · Explain WhyJan 29 2020, 1:13 PM This revision was automatically updated to reflect the committed changes.
Revision Contents
Diff 241263 llvm/lib/Target/AArch64/AArch64InstructionSelector.cpp
llvm/test/CodeGen/AArch64/GlobalISel/opt-and-tbnz-tbz.mir
|