[all-commits] [llvm/llvm-project] c703d7: [DebugInfo][InstrRef] Don't fully propagate single...
Jeremy Morse via All-commits
all-commits at lists.llvm.org
Mon Jan 31 04:55:07 PST 2022
Branch: refs/heads/main
Home: https://github.com/llvm/llvm-project
Commit: c703d77a61ac73402bb024558ea39326d17d25c5
https://github.com/llvm/llvm-project/commit/c703d77a61ac73402bb024558ea39326d17d25c5
Author: Jeremy Morse <jeremy.morse at sony.com>
Date: 2022-01-31 (Mon, 31 Jan 2022)
Changed paths:
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.cpp
M llvm/lib/CodeGen/LiveDebugValues/InstrRefBasedImpl.h
A llvm/test/DebugInfo/MIR/InstrRef/single-assign-propagation.mir
Log Message:
-----------
[DebugInfo][InstrRef] Don't fully propagate single assigned variables
If we only assign a variable value a single time, we can take a short-cut
when computing its location: the variable value is only valid up to the
dominance frontier of where the assignemnt happens. Past that point, there
are other predecessors from where the variable has no value, meaning the
variable has no location past that point.
This patch recognises this scenario, and avoids expensive SSA computation,
to improve compile-time performance.
Differential Revision: https://reviews.llvm.org/D117877
More information about the All-commits
mailing list