; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc < %s -mtriple=i686-unknown-unknown | FileCheck %s --check-prefix=X86 ; RUN: llc < %s -mtriple=x86_64-unknown-unknown | FileCheck %s --check-prefix=X64 define void @PR36250() { ; X86-LABEL: PR36250: ; X86: # %bb.0: ; X86-NEXT: movl (%eax), %eax ; X86-NEXT: movl %eax, %ecx ; X86-NEXT: roll %ecx ; X86-NEXT: addl %eax, %eax ; X86-NEXT: movl %ecx, %edx ; X86-NEXT: orl %ecx, %edx ; X86-NEXT: orl %ecx, %edx ; X86-NEXT: orl %eax, %edx ; X86-NEXT: orl %ecx, %edx ; X86-NEXT: sete (%eax) ; X86-NEXT: retl ; ; X64-LABEL: PR36250: ; X64: # %bb.0: ; X64-NEXT: movq (%rax), %rax ; X64-NEXT: movq %rax, %rcx ; X64-NEXT: rolq %rcx ; X64-NEXT: addq %rax, %rax ; X64-NEXT: movq %rcx, %rdx ; X64-NEXT: orq %rcx, %rdx ; X64-NEXT: orq %rax, %rdx ; X64-NEXT: orq %rcx, %rdx ; X64-NEXT: sete (%rax) ; X64-NEXT: retq %1 = load i448, i448* undef %2 = sub i448 0, %1 %3 = icmp eq i448 %1, %2 store i1 %3, i1* undef ret void }