[llvm] da1bd95 - Precommit a test for D92015 (NFC)

Juneyoung Lee via llvm-commits llvm-commits at lists.llvm.org
Fri Jan 1 05:36:09 PST 2021


Author: Juneyoung Lee
Date: 2021-01-01T22:35:57+09:00
New Revision: da1bd953faafe433a6fa259641973866fc6d934c

URL: https://github.com/llvm/llvm-project/commit/da1bd953faafe433a6fa259641973866fc6d934c
DIFF: https://github.com/llvm/llvm-project/commit/da1bd953faafe433a6fa259641973866fc6d934c.diff

LOG: Precommit a test for D92015 (NFC)

Added: 
    llvm/test/CodeGen/X86/select-prof-codegen.ll

Modified: 
    

Removed: 
    


################################################################################
diff  --git a/llvm/test/CodeGen/X86/select-prof-codegen.ll b/llvm/test/CodeGen/X86/select-prof-codegen.ll
new file mode 100644
index 000000000000..22f7d728847b
--- /dev/null
+++ b/llvm/test/CodeGen/X86/select-prof-codegen.ll
@@ -0,0 +1,23 @@
+; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
+; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s
+
+; TODO: Compiling the select should not create 'seta - testb $1 - jump' sequence.
+define i32 @f(i32 %x, i32 %y) {
+; CHECK-LABEL: f:
+; CHECK:       # %bb.0: # %entry
+; CHECK-NEXT:    movl %edi, %eax
+; CHECK-NEXT:    cmpl %esi, %edi
+; CHECK-NEXT:    seta %cl
+; CHECK-NEXT:    testb $1, %cl
+; CHECK-NEXT:    jne .LBB0_2
+; CHECK-NEXT:  # %bb.1: # %select.false
+; CHECK-NEXT:    movl %esi, %eax
+; CHECK-NEXT:  .LBB0_2: # %select.end
+; CHECK-NEXT:    retq
+entry:
+  %cmp = icmp ugt i32 %x, %y
+  %z = select i1 %cmp, i32 %x, i32 %y, !prof !0
+  ret i32 %z
+}
+
+!0 = !{!"branch_weights", i32 1, i32 2000}


        


More information about the llvm-commits mailing list