brintos

brintos / llvm-project-archived public Read only

0
0
Text · 559 B · 733bc84 Raw
17 lines · plain
1; RUN: opt < %s -aa-pipeline=basic-aa -passes=gvn,instcombine -S | FileCheck %s2; PR16003 4declare i16 @llvm.cttz.i16(i16, i1)5 6define i32 @test(ptr %P, ptr %Q) {7; CHECK: ret i32 08        %A = load i16, ptr %Q               ; <i16> [#uses=1]9        %x = load i32, ptr %P               ; <i32> [#uses=1]10        %B = call i16 @llvm.cttz.i16( i16 %A, i1 true )          ; <i16> [#uses=1]11        %y = load i32, ptr %P               ; <i32> [#uses=1]12        store i16 %B, ptr %Q13        %z = sub i32 %x, %y             ; <i32> [#uses=1]14        ret i32 %z15}16 17