From 0339fcc7284d31bb2cb3422a3f300d36d3c2fd05 Mon Sep 17 00:00:00 2001 From: Nikita Popov Date: Sat, 24 Jul 2021 17:03:20 +0200 Subject: [PATCH] [LICM] Extract debugify test (NFC) Only one of the tests in the file wants to check debug info, so move it into a separate file. This allows update_test_checks to work. --- llvm/test/Transforms/LICM/sinking-debugify.ll | 28 +++++++++++++++++++++++++++ llvm/test/Transforms/LICM/sinking.ll | 9 --------- 2 files changed, 28 insertions(+), 9 deletions(-) create mode 100644 llvm/test/Transforms/LICM/sinking-debugify.ll diff --git a/llvm/test/Transforms/LICM/sinking-debugify.ll b/llvm/test/Transforms/LICM/sinking-debugify.ll new file mode 100644 index 0000000..eb768a5 --- /dev/null +++ b/llvm/test/Transforms/LICM/sinking-debugify.ll @@ -0,0 +1,28 @@ +; NOTE: Assertions have been autogenerated by utils/update_test_checks.py +; RUN: opt < %s -debugify -basic-aa -licm -S | FileCheck %s + +%Ty = type { i32, i32 } +@X2 = external global %Ty + +; The GEP in dead1 is adding a zero offset, so the DIExpression can be kept as +; a "register location". +; The GEP in dead2 is adding a 4 bytes to the pointer, so the DIExpression is +; turned into an "implicit location" using DW_OP_stack_value. +define void @test11() { +; CHECK-LABEL: @test11( +; CHECK-NEXT: br label [[LOOP:%.*]], !dbg [[DBG12:![0-9]+]] +; CHECK: Loop: +; CHECK-NEXT: call void @llvm.dbg.value(metadata %Ty* @X2, metadata [[META9:![0-9]+]], metadata !DIExpression()), !dbg [[DBG13:![0-9]+]] +; CHECK-NEXT: call void @llvm.dbg.value(metadata %Ty* @X2, metadata [[META11:![0-9]+]], metadata !DIExpression(DW_OP_plus_uconst, 4, DW_OP_stack_value)), !dbg [[DBG14:![0-9]+]] +; CHECK-NEXT: br i1 false, label [[LOOP]], label [[OUT:%.*]], !dbg [[DBG15:![0-9]+]] +; CHECK: Out: +; CHECK-NEXT: ret void, !dbg [[DBG16:![0-9]+]] +; + br label %Loop +Loop: + %dead1 = getelementptr %Ty, %Ty* @X2, i64 0, i32 0 + %dead2 = getelementptr %Ty, %Ty* @X2, i64 0, i32 1 + br i1 false, label %Loop, label %Out +Out: + ret void +} diff --git a/llvm/test/Transforms/LICM/sinking.ll b/llvm/test/Transforms/LICM/sinking.ll index 90a1ecc..da5ab04 100644 --- a/llvm/test/Transforms/LICM/sinking.ll +++ b/llvm/test/Transforms/LICM/sinking.ll @@ -1,6 +1,5 @@ ; NOTE: Assertions have been autogenerated by utils/update_test_checks.py ; RUN: opt < %s -basic-aa -licm -S | FileCheck %s -; RUN: opt < %s -debugify -basic-aa -licm -S | FileCheck %s -check-prefix=DEBUGIFY ; RUN: opt < %s -basic-aa -licm -S -enable-mssa-loop-dependency=true -verify-memoryssa | FileCheck %s @@ -381,14 +380,6 @@ Loop: br i1 false, label %Loop, label %Out Out: ret void - -; The GEP in dead1 is adding a zero offset, so the DIExpression can be kept as -; a "register location". -; The GEP in dead2 is adding a 4 bytes to the pointer, so the DIExpression is -; turned into an "implicit location" using DW_OP_stack_value. -; DEBUGIFY-LABEL: @test11( -; DEBUGIFY: call void @llvm.dbg.value(metadata %Ty* @X2, metadata {{.*}}, metadata !DIExpression()) -; DEBUGIFY: call void @llvm.dbg.value(metadata %Ty* @X2, metadata {{.*}}, metadata !DIExpression(DW_OP_plus_uconst, 4, DW_OP_stack_value)) } @c = common global [1 x i32] zeroinitializer, align 4 -- 2.7.4