[PATCH] D44312: Retain both sets of debug intrinsics in HoistThenElseCodeToIf (fixes PR 36410)
Vedant Kumar via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Fri Mar 9 11:25:43 PST 2018
vsk added a comment.
This looks like a nice improvement. I think the test could be tighter/simpler though, e.g:
; RUN: opt -debugify -simplifycfg -S < %s | FileCheck %s
define i64 @caller(i64* %ptr, i64 %flag) {
init:
%v9 = icmp eq i64 %flag, 0
br i1 %v9, label %a, label %b
; CHECK: %vala = load i64, i64* %ptr
; CHECK-NEXT: call void @llvm.dbg.value(metadata i64 %vala
; CHECK-NEXT: %valbmasked = and i64 %vala, 1
; CHECK-NEXT: call void @llvm.dbg.value(metadata i64 %vala
a: ; preds = %init
%vala = load i64, i64* %ptr, align 8
br label %test.exit
b: ; preds = %init
%valb = load i64, i64* %ptr, align 8
%valbmasked = and i64 %valb, 1
br label %test.exit
test.exit: ; preds = %a, %b
%retv = phi i64 [ %vala, %a ], [ %valbmasked, %b ]
ret i64 %retv
}
Repository:
rL LLVM
https://reviews.llvm.org/D44312
More information about the llvm-commits
mailing list