1 ; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py 2 ; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X86 3 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64 4 5 define void @PR36250() { 6 ; X86-LABEL: PR36250: 7 ; X86: # %bb.0: 8 ; X86-NEXT: movl (%eax), %eax 9 ; X86-NEXT: movl %eax, %ecx 10 ; X86-NEXT: roll %ecx 11 ; X86-NEXT: addl %eax, %eax 12 ; X86-NEXT: movl %ecx, %edx 13 ; X86-NEXT: orl %ecx, %edx 14 ; X86-NEXT: orl %ecx, %edx 15 ; X86-NEXT: orl %eax, %edx 16 ; X86-NEXT: orl %ecx, %edx 17 ; X86-NEXT: sete (%eax) 18 ; X86-NEXT: retl 19 ; 20 ; X64-LABEL: PR36250: 21 ; X64: # %bb.0: 22 ; X64-NEXT: movq (%rax), %rax 23 ; X64-NEXT: movq %rax, %rcx 24 ; X64-NEXT: rolq %rcx 25 ; X64-NEXT: addq %rax, %rax 26 ; X64-NEXT: movq %rcx, %rdx 27 ; X64-NEXT: orq %rcx, %rdx 28 ; X64-NEXT: orq %rax, %rdx 29 ; X64-NEXT: orq %rcx, %rdx 30 ; X64-NEXT: sete (%rax) 31 ; X64-NEXT: retq 32 %1 = load i448, i448* undef 33 %2 = sub i448 0, %1 34 %3 = icmp eq i448 %1, %2 35 store i1 %3, i1* undef 36 ret void 37 } 38