Skip to content

Commit b904311

Browse files
committed
[InstCombine] Simplify tests. NFC.
1 parent cc85606 commit b904311

File tree

1 file changed

+17
-32
lines changed

1 file changed

+17
-32
lines changed
Lines changed: 17 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,24 @@
11
; NOTE: Assertions have been autogenerated by utils/update_test_checks.py UTC_ARGS: --version 5
22
; RUN: opt -passes=instcombine -S %s -o - | FileCheck %s
33

4-
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
5-
target triple = "x86_64-unknown-linux-gnu"
4+
; Make sure that the DIExpression is updated correctly after InstCombinerImpl::freelyInvertAllUsersOf.
65

76
define i32 @test(i32 noundef %x, i32 noundef %y) !dbg !10 {
87
; CHECK-LABEL: define i32 @test(
98
; CHECK-SAME: i32 noundef [[X:%.*]], i32 noundef [[Y:%.*]]) !dbg [[DBG10:![0-9]+]] {
109
; CHECK-NEXT: [[ENTRY:.*:]]
11-
; CHECK-NEXT: #dbg_value(i32 [[X]], [[META15:![0-9]+]], !DIExpression(), [[META18:![0-9]+]])
12-
; CHECK-NEXT: #dbg_value(i32 [[Y]], [[META16:![0-9]+]], !DIExpression(), [[META18]])
13-
; CHECK-NEXT: [[CMP_NOT:%.*]] = icmp eq i32 [[X]], 0, !dbg [[DBG19:![0-9]+]]
14-
; CHECK-NEXT: #dbg_value(i1 [[CMP_NOT]], [[META17:![0-9]+]], !DIExpression(DW_OP_not, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 32, DW_ATE_unsigned, DW_OP_stack_value), [[META18]])
15-
; CHECK-NEXT: [[TMP0:%.*]] = and i32 [[Y]], 1, !dbg [[DBG20:![0-9]+]]
16-
; CHECK-NEXT: [[AND:%.*]] = select i1 [[CMP_NOT]], i32 0, i32 [[TMP0]], !dbg [[DBG20]]
17-
; CHECK-NEXT: ret i32 [[AND]], !dbg [[DBG21:![0-9]+]]
10+
; CHECK-NEXT: [[CMP_NOT:%.*]] = icmp eq i32 [[X]], 0
11+
; CHECK-NEXT: #dbg_value(i1 [[CMP_NOT]], [[META15:![0-9]+]], !DIExpression(DW_OP_not, DW_OP_LLVM_convert, 1, DW_ATE_unsigned, DW_OP_LLVM_convert, 32, DW_ATE_unsigned, DW_OP_stack_value), [[META16:![0-9]+]])
12+
; CHECK-NEXT: [[TMP0:%.*]] = and i32 [[Y]], 1
13+
; CHECK-NEXT: [[AND:%.*]] = select i1 [[CMP_NOT]], i32 0, i32 [[TMP0]]
14+
; CHECK-NEXT: ret i32 [[AND]]
1815
;
1916
entry:
20-
#dbg_value(i32 %x, !15, !DIExpression(), !18)
21-
#dbg_value(i32 %y, !16, !DIExpression(), !18)
22-
%cmp = icmp ne i32 %x, 0, !dbg !19
23-
%conv = zext i1 %cmp to i32, !dbg !19
24-
#dbg_value(i32 %conv, !17, !DIExpression(), !18)
25-
%and = and i32 %conv, %y, !dbg !20
26-
ret i32 %and, !dbg !21
17+
%cmp = icmp ne i32 %x, 0
18+
%conv = zext i1 %cmp to i32
19+
#dbg_value(i32 %conv, !15, !DIExpression(), !16)
20+
%and = and i32 %conv, %y
21+
ret i32 %and
2722
}
2823

2924
!llvm.dbg.cu = !{!0}
@@ -44,27 +39,17 @@ entry:
4439
!11 = !DISubroutineType(types: !12)
4540
!12 = !{!13, !13, !13}
4641
!13 = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
47-
!14 = !{!15, !16, !17}
48-
!15 = !DILocalVariable(name: "x", arg: 1, scope: !10, file: !1, line: 1, type: !13)
49-
!16 = !DILocalVariable(name: "y", arg: 2, scope: !10, file: !1, line: 1, type: !13)
50-
!17 = !DILocalVariable(name: "z", scope: !10, file: !1, line: 2, type: !13)
51-
!18 = !DILocation(line: 0, scope: !10)
52-
!19 = !DILocation(line: 2, column: 13, scope: !10)
53-
!20 = !DILocation(line: 3, column: 12, scope: !10)
54-
!21 = !DILocation(line: 3, column: 3, scope: !10)
42+
!14 = !{!15}
43+
!15 = !DILocalVariable(name: "z", scope: !10, file: !1, line: 2, type: !13)
44+
!16 = !DILocation(line: 0, scope: !10)
5545
;.
5646
; CHECK: [[META0:![0-9]+]] = distinct !DICompileUnit(language: DW_LANG_C11, file: [[META1:![0-9]+]], producer: "{{.*}}clang version {{.*}}", isOptimized: true, runtimeVersion: 0, emissionKind: FullDebug, splitDebugInlining: false, nameTableKind: None)
5747
; CHECK: [[META1]] = !DIFile(filename: "test.c", directory: {{.*}})
5848
; CHECK: [[DBG10]] = distinct !DISubprogram(name: "test", scope: [[META1]], file: [[META1]], line: 1, type: [[META11:![0-9]+]], scopeLine: 1, flags: DIFlagPrototyped | DIFlagAllCallsDescribed, spFlags: DISPFlagDefinition | DISPFlagOptimized, unit: [[META0]], retainedNodes: [[META14:![0-9]+]])
5949
; CHECK: [[META11]] = !DISubroutineType(types: [[META12:![0-9]+]])
6050
; CHECK: [[META12]] = !{[[META13:![0-9]+]], [[META13]], [[META13]]}
6151
; CHECK: [[META13]] = !DIBasicType(name: "int", size: 32, encoding: DW_ATE_signed)
62-
; CHECK: [[META14]] = !{[[META15]], [[META16]], [[META17]]}
63-
; CHECK: [[META15]] = !DILocalVariable(name: "x", arg: 1, scope: [[DBG10]], file: [[META1]], line: 1, type: [[META13]])
64-
; CHECK: [[META16]] = !DILocalVariable(name: "y", arg: 2, scope: [[DBG10]], file: [[META1]], line: 1, type: [[META13]])
65-
; CHECK: [[META17]] = !DILocalVariable(name: "z", scope: [[DBG10]], file: [[META1]], line: 2, type: [[META13]])
66-
; CHECK: [[META18]] = !DILocation(line: 0, scope: [[DBG10]])
67-
; CHECK: [[DBG19]] = !DILocation(line: 2, column: 13, scope: [[DBG10]])
68-
; CHECK: [[DBG20]] = !DILocation(line: 3, column: 12, scope: [[DBG10]])
69-
; CHECK: [[DBG21]] = !DILocation(line: 3, column: 3, scope: [[DBG10]])
52+
; CHECK: [[META14]] = !{[[META15]]}
53+
; CHECK: [[META15]] = !DILocalVariable(name: "z", scope: [[DBG10]], file: [[META1]], line: 2, type: [[META13]])
54+
; CHECK: [[META16]] = !DILocation(line: 0, scope: [[DBG10]])
7055
;.

0 commit comments

Comments
 (0)