]> granicus.if.org Git - llvm/commit
[HardwareLoops] Loop counter guard intrinsic
authorSam Parker <sam.parker@arm.com>
Fri, 28 Jun 2019 07:38:16 +0000 (07:38 +0000)
committerSam Parker <sam.parker@arm.com>
Fri, 28 Jun 2019 07:38:16 +0000 (07:38 +0000)
commit6189e4972d11487427fc538acf5d10d3f047c155
tree4e2c3d2a50a4a574142db1cd669c8acc134d4dfe
parent93744b32bbada177cfe1c05acfe1812ca8ea8214
[HardwareLoops] Loop counter guard intrinsic

Introduce llvm.test.set.loop.iterations which sets the loop counter
and also produces an i1 after testing that the count is not zero.

Differential Revision: https://reviews.llvm.org/D63809

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@364628 91177308-0d34-0410-b5e6-96231b3b80d8
include/llvm/Analysis/TargetTransformInfo.h
include/llvm/IR/Intrinsics.td
lib/CodeGen/HardwareLoops.cpp
test/Transforms/HardwareLoops/loop-guards.ll [new file with mode: 0644]
test/Transforms/HardwareLoops/scalar-while.ll
test/Transforms/HardwareLoops/unconditional-latch.ll