From aa5a1eaa38bbcff64e22a0e0662843d119d3d71f Mon Sep 17 00:00:00 2001 From: =?utf8?q?Amaury=20S=C3=A9chet?= Date: Thu, 8 Jun 2023 09:07:36 +0000 Subject: [PATCH] [NFC] Add regression tests for an infinite loop caused by D127115 --- llvm/test/CodeGen/X86/brcc.ll | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 llvm/test/CodeGen/X86/brcc.ll diff --git a/llvm/test/CodeGen/X86/brcc.ll b/llvm/test/CodeGen/X86/brcc.ll new file mode 100644 index 0000000..dd00354 --- /dev/null +++ b/llvm/test/CodeGen/X86/brcc.ll @@ -0,0 +1,27 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py UTC_ARGS: --version 2 +; RUN: llc < %s -mtriple=x86_64-unknown | FileCheck %s + +define i64 @foo(i1 %0) { +; CHECK-LABEL: foo: +; CHECK: # %bb.0: +; CHECK-NEXT: movl $1, %eax +; CHECK-NEXT: testb $1, %dil +; CHECK-NEXT: je .LBB0_2 +; CHECK-NEXT: # %bb.1: +; CHECK-NEXT: xorl %eax, %eax +; CHECK-NEXT: .LBB0_2: +; CHECK-NEXT: retq + br label %2 + +2: + %3 = select i1 %0, i1 %0, i1 false + %4 = freeze i1 %3 + br i1 %4, label %5, label %6 + +5: + br label %6 + +6: + %7 = phi i64 [ 0, %5 ], [ 1, %2 ] + ret i64 %7 +} -- 2.7.4