diff options
author | Rong Xu <xur@google.com> | 2018-10-08 22:08:43 +0000 |
---|---|---|
committer | Rong Xu <xur@google.com> | 2018-10-08 22:08:43 +0000 |
commit | 47fd01516321d2dbe1f59b492e429ff757f5b315 (patch) | |
tree | a06115b9f9d681a5cfd2075431aa8f5fb7350865 /llvm/test | |
parent | b64c0d7b534b2f5da28f96d6242109cbe7fbe84e (diff) | |
download | bcm5719-llvm-47fd01516321d2dbe1f59b492e429ff757f5b315.tar.gz bcm5719-llvm-47fd01516321d2dbe1f59b492e429ff757f5b315.zip |
[X86] Revert r343993 condition branches folding for three-way conditional codes
Some buildbots failed.
llvm-svn: 343998
Diffstat (limited to 'llvm/test')
-rw-r--r-- | llvm/test/CodeGen/X86/O3-pipeline.ll | 1 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/condbr_if.ll | 178 | ||||
-rw-r--r-- | llvm/test/CodeGen/X86/condbr_switch.ll | 167 |
3 files changed, 0 insertions, 346 deletions
diff --git a/llvm/test/CodeGen/X86/O3-pipeline.ll b/llvm/test/CodeGen/X86/O3-pipeline.ll index 93e184c4371..48990465327 100644 --- a/llvm/test/CodeGen/X86/O3-pipeline.ll +++ b/llvm/test/CodeGen/X86/O3-pipeline.ll @@ -72,7 +72,6 @@ ; CHECK-NEXT: Merge disjoint stack slots ; CHECK-NEXT: Local Stack Slot Allocation ; CHECK-NEXT: Remove dead machine instructions -; CHECK-NEXT: X86 CondBr Folding ; CHECK-NEXT: MachineDominator Tree Construction ; CHECK-NEXT: Machine Natural Loop Construction ; CHECK-NEXT: Machine Trace Metrics diff --git a/llvm/test/CodeGen/X86/condbr_if.ll b/llvm/test/CodeGen/X86/condbr_if.ll deleted file mode 100644 index 80f188f98bb..00000000000 --- a/llvm/test/CodeGen/X86/condbr_if.ll +++ /dev/null @@ -1,178 +0,0 @@ -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=sandybridge %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=ivybridge %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=haswell %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=broadwell %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=skylake %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=skx %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=NOTMERGE - -define i32 @length2_1(i32) { - %2 = icmp slt i32 %0, 3 - br i1 %2, label %3, label %5 - -; <label>:3: - %4 = tail call i32 (...) @f1() - br label %13 - -; <label>:5: - %6 = icmp slt i32 %0, 40 - br i1 %6, label %7, label %13 - -; <label>:7: - %8 = icmp eq i32 %0, 3 - br i1 %8, label %9, label %11 - -; <label>:9: - %10 = tail call i32 (...) @f2() - br label %11 - -; <label>:11: - %12 = tail call i32 (...) @f3() #2 - br label %13 - -; <label>:13: - ret i32 0 -} -; MERGE-LABEL: length2_1 -; MERGE: cmpl $3 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; NOTMERGE-LABEL: length2_1 -; NOTMERGE: cmpl $2 -; NOTMERGE-NEXT: jg - -define i32 @length2_2(i32) { - %2 = icmp sle i32 %0, 2 - br i1 %2, label %3, label %5 - -; <label>:3: - %4 = tail call i32 (...) @f1() - br label %13 - -; <label>:5: - %6 = icmp slt i32 %0, 40 - br i1 %6, label %7, label %13 - -; <label>:7: - %8 = icmp eq i32 %0, 3 - br i1 %8, label %9, label %11 - -; <label>:9: - %10 = tail call i32 (...) @f2() - br label %11 - -; <label>:11: - %12 = tail call i32 (...) @f3() #2 - br label %13 - -; <label>:13: - ret i32 0 -} -; MERGE-LABEL: length2_2 -; MERGE: cmpl $3 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; NOTMERGE-LABEL: length2_2 -; NOTMERGE: cmpl $2 -; NOTMERGE-NEXT: jg - -define i32 @length2_3(i32) { - %2 = icmp sgt i32 %0, 3 - br i1 %2, label %3, label %5 - -; <label>:3: - %4 = tail call i32 (...) @f1() - br label %13 - -; <label>:5: - %6 = icmp sgt i32 %0, -40 - br i1 %6, label %7, label %13 - -; <label>:7: - %8 = icmp eq i32 %0, 3 - br i1 %8, label %9, label %11 - -; <label>:9: - %10 = tail call i32 (...) @f2() - br label %11 - -; <label>:11: - %12 = tail call i32 (...) @f3() #2 - br label %13 - -; <label>:13: - ret i32 0 -} -; MERGE-LABEL: length2_3 -; MERGE: cmpl $3 -; MERGE-NEXT: jl -; MERGE-NEXT: jle -; NOTMERGE-LABEL: length2_3 -; NOTMERGE: cmpl $4 -; NOTMERGE-NEXT: jl - -define i32 @length2_4(i32) { - %2 = icmp sge i32 %0, 4 - br i1 %2, label %3, label %5 - -; <label>:3: - %4 = tail call i32 (...) @f1() - br label %13 - -; <label>:5: - %6 = icmp sgt i32 %0, -40 - br i1 %6, label %7, label %13 - -; <label>:7: - %8 = icmp eq i32 %0, 3 - br i1 %8, label %9, label %11 - -; <label>:9: - %10 = tail call i32 (...) @f2() - br label %11 - -; <label>:11: - %12 = tail call i32 (...) @f3() #2 - br label %13 - -; <label>:13: - ret i32 0 -} -; MERGE-LABEL: length2_4 -; MERGE: cmpl $3 -; MERGE-NEXT: jl -; MERGE-NEXT: jle -; NOTMERGE-LABEL: length2_4 -; NOTMERGE: cmpl $4 -; NOTMERGE-NEXT: jl - -declare i32 @f1(...) -declare i32 @f2(...) -declare i32 @f3(...) - -define i32 @length1_1(i32) { - %2 = icmp sgt i32 %0, 5 - br i1 %2, label %3, label %5 - -; <label>:3: - %4 = tail call i32 (...) @f1() - br label %9 - -; <label>:5: - %6 = icmp eq i32 %0, 5 - br i1 %6, label %7, label %9 - -; <label>:7: - %8 = tail call i32 (...) @f2() - br label %9 - -; <label>:9: - ret i32 0 -} -; MERGE-LABEL: length1_1 -; MERGE: cmpl $5 -; MERGE-NEXT: jl -; MERGE-NEXT: jle -; NOTMERGE-LABEL: length1_1 -; NOTMERGE: cmpl $6 -; NOTMERGE-NEXT: jl diff --git a/llvm/test/CodeGen/X86/condbr_switch.ll b/llvm/test/CodeGen/X86/condbr_switch.ll deleted file mode 100644 index ce1a21e1717..00000000000 --- a/llvm/test/CodeGen/X86/condbr_switch.ll +++ /dev/null @@ -1,167 +0,0 @@ -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=sandybridge %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=ivybridge %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=haswell %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=broadwell %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=skylake %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu -mcpu=skx %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=MERGE -; RUN: llc -mtriple=x86_64-linux-gnu %s -o - -verify-machineinstrs | FileCheck %s --check-prefix=NOTMERGE - -@v1 = common dso_local local_unnamed_addr global i32 0, align 4 -@v2 = common dso_local local_unnamed_addr global i32 0, align 4 -@v3 = common dso_local local_unnamed_addr global i32 0, align 4 -@v4 = common dso_local local_unnamed_addr global i32 0, align 4 -@v5 = common dso_local local_unnamed_addr global i32 0, align 4 -@v6 = common dso_local local_unnamed_addr global i32 0, align 4 -@v7 = common dso_local local_unnamed_addr global i32 0, align 4 -@v8 = common dso_local local_unnamed_addr global i32 0, align 4 -@v9 = common dso_local local_unnamed_addr global i32 0, align 4 -@v10 = common dso_local local_unnamed_addr global i32 0, align 4 -@v11 = common dso_local local_unnamed_addr global i32 0, align 4 -@v12 = common dso_local local_unnamed_addr global i32 0, align 4 -@v13 = common dso_local local_unnamed_addr global i32 0, align 4 -@v14 = common dso_local local_unnamed_addr global i32 0, align 4 -@v15 = common dso_local local_unnamed_addr global i32 0, align 4 - -define dso_local i32 @fourcases(i32 %n) { -entry: - switch i32 %n, label %return [ - i32 111, label %sw.bb - i32 222, label %sw.bb1 - i32 3665, label %sw.bb2 - i32 4444, label %sw.bb4 - ] - -sw.bb: - %0 = load i32, i32* @v1, align 4 - br label %return - -sw.bb1: - %1 = load i32, i32* @v2, align 4 - %add = add nsw i32 %1, 12 - br label %return - -sw.bb2: - %2 = load i32, i32* @v3, align 4 - %add3 = add nsw i32 %2, 13 - br label %return - -sw.bb4: - %3 = load i32, i32* @v1, align 4 - %4 = load i32, i32* @v2, align 4 - %add5 = add nsw i32 %4, %3 - br label %return - -return: - %retval.0 = phi i32 [ %add5, %sw.bb4 ], [ %add3, %sw.bb2 ], [ %add, %sw.bb1 ], [ %0, %sw.bb ], [ 0, %entry ] - ret i32 %retval.0 -} -; MERGE-LABEL: fourcases -; MERGE: cmpl $3665 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; NOTMERGE: cmpl $3664 -; NOTMERGE-NEXT: jg - -define dso_local i32 @fifteencases(i32) { - switch i32 %0, label %32 [ - i32 -111, label %2 - i32 -13, label %4 - i32 25, label %6 - i32 37, label %8 - i32 89, label %10 - i32 111, label %12 - i32 213, label %14 - i32 271, label %16 - i32 283, label %18 - i32 325, label %20 - i32 327, label %22 - i32 429, label %24 - i32 500, label %26 - i32 603, label %28 - i32 605, label %30 - ] - -; <label>:2 - %3 = load i32, i32* @v1, align 4 - br label %32 - -; <label>:4 - %5 = load i32, i32* @v2, align 4 - br label %32 - -; <label>:6 - %7 = load i32, i32* @v3, align 4 - br label %32 - -; <label>:8 - %9 = load i32, i32* @v4, align 4 - br label %32 - -; <label>:10 - %11 = load i32, i32* @v5, align 4 - br label %32 - -; <label>:12 - %13 = load i32, i32* @v6, align 4 - br label %32 - -; <label>:14 - %15 = load i32, i32* @v7, align 4 - br label %32 - -; <label>:16 - %17 = load i32, i32* @v8, align 4 - br label %32 - -; <label>:18 - %19 = load i32, i32* @v9, align 4 - br label %32 - -; <label>:20 - %21 = load i32, i32* @v10, align 4 - br label %32 - -; <label>:22 - %23 = load i32, i32* @v11, align 4 - br label %32 - -; <label>:24 - %25 = load i32, i32* @v12, align 4 - br label %32 - -; <label>:26 - %27 = load i32, i32* @v13, align 4 - br label %32 - -; <label>:28: - %29 = load i32, i32* @v14, align 4 - br label %32 - -; <label>:30: - %31 = load i32, i32* @v15, align 4 - br label %32 - -; <label>:32: - %33 = phi i32 [ %31, %30 ], [ %29, %28 ], [ %27, %26 ], [ %25, %24 ], [ %23, %22 ], [ %21, %20 ], [ %19, %18 ], [ %17, %16 ], [ %15, %14 ], [ %13, %12 ], [ %11, %10 ], [ %9, %8 ], [ %7, %6 ], [ %5, %4 ], [ %3, %2 ], [ 0, %1 ] - ret i32 %33 -} -; MERGE-LABEL: fifteencases -; MERGE: cmpl $271 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; MERGE: cmpl $37 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; MERGE: cmpl $429 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; MERGE: cmpl $325 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; MERGE: cmpl $603 -; MERGE-NEXT: jg -; MERGE-NEXT: jge -; NOTMERGE-LABEL: fifteencases -; NOTMERGE: cmpl $270 -; NOTMERGE-NEXT: jle - |