[all-commits] [llvm/llvm-project] 0e96d9: [DebugInfo][InstrRef] Accept register-reads after ...
Jeremy Morse via All-commits
all-commits at lists.llvm.org
Fri Mar 4 09:01:36 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: 0e96d95d13d9f7b2a96bcaa569ce0a0181a6c7f3
https://github.com/llvm/llvm-project/commit/0e96d95d13d9f7b2a96bcaa569ce0a0181a6c7f3
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2022-03-04 (Fri, 04 Mar 2022)
Changed paths:
M llvm/lib/CodeGen/MachineFunction.cpp
A llvm/test/DebugInfo/X86/instr-ref-ir-reg-read.ll
Log Message:
-----------
[DebugInfo][InstrRef] Accept register-reads after isel in any block
When lowering LLVM-IR to instruction referencing stuff, if a value is
defined by a COPY, we try and follow the register definitions back to where
the value was defined, and build an instruction reference to that
instruction. In a few scenarios (such as arguments), this isn't possible.
I added some assertions to catch cases that weren't explicitly whitelisted.
Over the course of a few months, several more scenarios have cropped up,
the lastest is the llvm.read_register intrinsic, which lets LLVM-IR read an
arbitary register at any point. In the face of this, there's little point
in validating whether debug-info reads a register in an expected scenario.
Thus: this patch just deletes those assertions, and adds a regression test
to check that something is done with the llvm.read_register intrinsic.
Fixes #54190
Differential Revision: https://reviews.llvm.org/D121001
More information about the All-commits
mailing list