Home | History | Annotate | Download | only in X86
      1 ; RUN: llc < %s -march=x86-64 | FileCheck %s
      2 
      3 declare void @bar()
      4 
      5 define void @test1(i64 %foo) nounwind {
      6   %and = and i64 %foo, 4294967296
      7   %tobool = icmp eq i64 %and, 0
      8   br i1 %tobool, label %if.end, label %if.then
      9 
     10 ; CHECK-LABEL: test1:
     11 ; CHECK: btq $32
     12 
     13 if.then:
     14   tail call void @bar() nounwind
     15   br label %if.end
     16 
     17 if.end:
     18   ret void
     19 }
     20 
     21 define void @test2(i64 %foo) nounwind {
     22   %and = and i64 %foo, 2147483648
     23   %tobool = icmp eq i64 %and, 0
     24   br i1 %tobool, label %if.end, label %if.then
     25 
     26 ; CHECK-LABEL: test2:
     27 ; CHECK: testl $-2147483648
     28 
     29 if.then:
     30   tail call void @bar() nounwind
     31   br label %if.end
     32 
     33 if.end:
     34   ret void
     35 }
     36