aboutsummaryrefslogtreecommitdiff
path: root/clang/lib/CodeGen/CodeGenModule.cpp
diff options
context:
space:
mode:
authorJeremy Morse <jeremy.morse@sony.com>2023-11-20 20:53:24 +0000
committerGitHub <noreply@github.com>2023-11-20 20:53:24 +0000
commitf42482def236999b0f7896c09cd714b708861c8b (patch)
tree5af8ca0c198f5fd71b50511d61cbd9ea558834d5 /clang/lib/CodeGen/CodeGenModule.cpp
parent6352a07ba65301b60ace8e5e67e54f4967e375ae (diff)
downloadllvm-f42482def236999b0f7896c09cd714b708861c8b.zip
llvm-f42482def236999b0f7896c09cd714b708861c8b.tar.gz
llvm-f42482def236999b0f7896c09cd714b708861c8b.tar.bz2
[DebugInfo][RemoveDIs] Don't convert debug-intrinsics to Unreachable (#72380)
It might seem obvious, but it's not a good idea to convert a debug-intrinsic instruction into an UnreachableInst, as this means things operate differently with and without the -g option. However this can happen due to the "mutate the next instruction" API calls we make. With RemoveDIs eliminating debug intrinsics, this behaviour is at risk of changing, hence this patch ensures we only ever mutate the next _non_ debuginfo instruction into an Unreachable. The tests instrumented with the --try... flag all exercise this, I've added some metadata to a SCCP test to ensure it's exercised.
Diffstat (limited to 'clang/lib/CodeGen/CodeGenModule.cpp')
0 files changed, 0 insertions, 0 deletions