diff options
Diffstat (limited to 'llvm/test/CodeGen/X86/saddo-redundant-add.ll')
-rw-r--r-- | llvm/test/CodeGen/X86/saddo-redundant-add.ll | 22 |
1 files changed, 17 insertions, 5 deletions
diff --git a/llvm/test/CodeGen/X86/saddo-redundant-add.ll b/llvm/test/CodeGen/X86/saddo-redundant-add.ll index c56c68674a4..e89d81a8423 100644 --- a/llvm/test/CodeGen/X86/saddo-redundant-add.ll +++ b/llvm/test/CodeGen/X86/saddo-redundant-add.ll @@ -1,12 +1,24 @@ +; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc < %s -mtriple=x86_64-apple-darwin | FileCheck %s define void @redundant_add(i64 %n) { ; Check that we don't create two additions for the sadd.with.overflow. -; CHECK-LABEL: redundant_add -; CHECK-NOT: leaq -; CHECK-NOT: addq -; CHECK: incq -; CHECK-NEXT: jno +; CHECK-LABEL: redundant_add: +; CHECK: ## %bb.0: ## %entry +; CHECK-NEXT: xorl %eax, %eax +; CHECK-NEXT: .p2align 4, 0x90 +; CHECK-NEXT: LBB0_1: ## %exit_check +; CHECK-NEXT: ## =>This Inner Loop Header: Depth=1 +; CHECK-NEXT: cmpq %rdi, %rax +; CHECK-NEXT: jge LBB0_4 +; CHECK-NEXT: ## %bb.2: ## %loop +; CHECK-NEXT: ## in Loop: Header=BB0_1 Depth=1 +; CHECK-NEXT: incq %rax +; CHECK-NEXT: jno LBB0_1 +; CHECK-NEXT: ## %bb.3: ## %overflow +; CHECK-NEXT: ud2 +; CHECK-NEXT: LBB0_4: ## %exit +; CHECK-NEXT: retq entry: br label %exit_check |