Index: docs/LangRef.rst =================================================================== --- docs/LangRef.rst +++ docs/LangRef.rst @@ -5171,6 +5171,22 @@ !0 = !{!"llvm.loop.unroll.full"} +'``llvm.loop.unroll_and_jam``' +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +This metadata is treated very similarly to the ``llvm.loop.unroll`` metadata +above, but affect the unroll and jam pass. In addition any loop with +``llvm.loop.unroll`` metadata but no ``llvm.loop.unroll_and_jam`` metadata will +disable unroll and jam (so ``llvm.loop.unroll`` metadata will be left to the +unroller, plus ``llvm.loop.unroll.disable`` metadata will disable uroll and jam +too.) + +The metadata for unroll and jam otherwise is the same as for ``unroll``. +``llvm.loop.unroll_and_jam.enable``, ``llvm.loop.unroll_and_jam.disable`` and +``llvm.loop.unroll_and_jam.count`` do the same as for unroll. +``llvm.loop.unroll_and_jam.full`` is not supported. Again these are only hints +and the normal safety checks will still be performed. + '``llvm.loop.licm_versioning.disable``' Metadata ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^